tim durgan technical architect, unum user group leader, maine bytes pisces
TRANSCRIPT
Community Launch 2008Beta StuffTech Ed 2008 Debrief
Tim DurganTechnical Architect, UnumUser group leader, Maine BytesPisces
Community Launch
Overview VS 2008 and .NET 3.5C# 3.0 Language Enhancements
Words of Wisdom
Man who eats many prunes gets good run for money.
Agenda
.NET Framework & Visual Studio Roadmap.NET Framework 3.5 overviewVisual Studio design goalsLap around new features
What is the .NET Framework 3.5?
.NET Framework 2.0 + SP1
Windows Presentatio
n Foundation
Windows Communicati
on Foundation
Windows Workflow
Foundation
Windows CardSpace
.NET Framework 3.0 + SP1
.NET Framework 3.5 + SP1 as of 8/11
LINQ ASP.NET 3.5CLR Add-in Framework
Additional Enhancemen
ts
Peel the Onion
2006 2007 2008
.NET Framework & VS Roadmap
Majo
rR
ele
ase
sO
ut
of
ban
d
Rele
ase
s
“Rosario”
• VS Extensions for WF• VS Extensions for WCF/WPF CTP
ASP.NET AJAX 1.0
SQL Server 2008 ADO.NET Entity
Framework
•VS 2008 Beta 2•.NET Framework 3.5 Beta 2
3.0 RTM
3.5 RTM
Windows Server 2008
Fresh Install
• .NET Framework 2.0 w/SP1
App Server Role
• .NET Framework 3.0 w/SP1
Next major release of Windows Server released in Q1 2008What’s included with Windows Server 2008?
Visual Studio 2008 Design GoalsBest tool set for Windows Server 2008, Windows
Vista and Microsoft Office 2007.NET Framework 3.5 design surfacesOffice 2007 support including ClickOnce and VSTOMFC support for Vista common controls
Improvements for Web DevelopersHTML / CSS designer enhancementsIntegrated AJAX and JavaScript support
Language advances.NET Framework multi-targeting supportImproved Data & Language integration in VB / C#
Lap around VS 2008 & .NET 3.5
Lifecycle Tools, .NET
Framework, &
languages
Visual Studio EnhancementsMulti-targeting
Target multiple versions of the framework from a single tool - Visual Studio 2008Supports framework versions 2.0, 3.0, and 3.5Enables only features available in target framework
Toolbox, Project types, References, Intellisense, …
Making is easy to upgrade to Visual Studio 2008
Unit TestingNow available in all editions of Visual Studio Professional
Lifecycle Tools EnhancementsTeam Foundation Server 2008
Built-in support for Continuous IntegrationTFS Migration Toolkit“Get latest on checkout”AnnotateFolder Diff
For developers:Code metricsPerformance “hotpathing”Profiler baseliningMuch faster unit testing performance
For testers:Load testing support for AJAX applicationsBetter UI for load test monitoring / reporting
And much more…
Language INtegrated Query (LINQ)
Designed to reduce the complexity when working with dataQuery operators can be used against any collection
Built-in examples: Select, Where, GroupBy, Join, etc.Extensibility model supports extending/replacing these
BenefitsWork with data in a consistent way, regardless of the type of dataInteract with data as objectsBetter integration with programming languagesImproved productivity through IntelliSense in Visual Studio
New programming model for data access that integrates query support directly within the .NET
languages
LINQ Architecture & Components
Objects
<book> <title/> <author/> <year/> <price/></book>
XML
.NET Language Integrated Query
C# 3.0 VB 9.0 Others…
Relational
LINQ toObjects
LINQ toSQL
LINQ toXML
LINQ toDataSets
ServicesTechnologies added in .NET 3.0
WCF – Unified programming model and runtime for servicesWF - Flexible, declarative workflow runtime and activities
New enhancements in .NET 3.5Http Programming ModelJSON serialization & ASP.NET AJAX integrationSyndicationIntegrated support for WF & WCF (“Silver”)Partial Trust
Integrated developer tools in Visual Studio 2008Add Service ReferenceIntegrated WF DesignerProject & item templatesAutohost & test clientWCF Configuration Editor
Windows ApplicationsVisual Studio Designer for WPF (“Cider”)
XAML-based editing directly in the IDEChanges reflected in the designer in real-timeXAML IntelliSenseSelection Synchronization
ClickOnce deployment support for WPF appsProject templates, debugger & deployment support Side-by-side support for Winforms
Creates a seamless designer/developer workflow with Expression Interactive Designer (“Sparkle”)
Web ApplicationsIntegrated support for ASP.NET AJAX 1.0
Included in the .NET Framework 3.5ASP.NET AJAX Project TemplatesAjaxControlToolkit available from CodePlex, 30+ controls
Web Application Projects included in Visual StudioJavascript IntelliSense & DebuggingRicher HTML/CSS Designer Support
Split View (simultaneous source and designer)Nested Master Page preview in designerCSS Properties, Manage/Apply Styles windows, and direct style application toolbarImproved CSS/HTML layout and visualization in designer
New Web data controlsLinqDataSource, ListView, DataPager
Office ApplicationsVS 2008 includes Visual Studio Tools for Office 3.0Provides integrated visual designers for:
Word and Excel documents and templates Fluent RibbonTask & Action panesOutlook Form Regions
Integrated Workflow & Microsoft SharePoint SupportData binding in Word Content ControlsApplication-level add-ins for most client programs (both 2003 & 2007)Document-level add-ins for Excel & Word 2007Improved deployment and security using ClickOnce
Mobile ApplicationsVisual Studio Tools for Devices
Unit Testing for Device ApplicationsDevice Emulator 3.0 – Certificate support, Xml configBroad Platform and runtime Support
.NET Compact Framework 3.5Support for LINQ (XML, Objects and Dataset)Windows Communication Foundation CLR Profiler / Performance MonitorBCL enhancements: Compression support, Client-side certificates, Sound APIs
What's new in C# 3.0
C#3.0 Design Themes
Improve on C#2.0
100% Backwards Compatible
Language Integrated Query (LINQ)
C# 3.0 – New Language FeaturesLocal Variable Type Inference
Object InitializersCollection Initializers
Anonymous Types
Auto-Implemented Properties
Extension Methods
Lambdas
Query Expressions
Expression Trees
Partial Methods
Words of Wisdom
It is easier to ride the horse in the direction it is
facing
Beta Stuff
Cloud ComputingLive Mesh
Web 2.0 – MashupsPopfly
Computers in the Clouds
Cloud ComputingTwo views
Software as a Service (SaaS)Software + Services (S+S)
Software + ServicesThe basics
Enterprises today primarily use software that they run themselves
Commonly known as on-premises software
Services accessed via the Internet are becoming a more important part of enterprise IT
Commonly known as cloud servicesEnterprises are moving toward a mixed world of software + services (S+S)
S+S = On-premises software + cloud services
Who is reaching for the cloudsGoogle
Services/platformYahoo
Services/platformAmazon
Selling space and CPU, lots of startups using this model
MicrosoftEnabling technology
Live Mesh – small pictureOSLO – big picture
Supporting Applications Computing
Operating system: Amazon Elastic Compute Cloud (EC2)Application services: Salesforce.com Force.com, Microsoft Dynamics CRM platform, Google AppEngine
StorageFile system: Amazon Simple Storage Service (S3)DBMS: Amazon SimpleDB, SQL Server Data Services
IntegrationConnectivity, etc.: Microsoft BizTalk Services
Word of Wisdom
If you run in front of the bus, you
get tired.If you run behind the bus you get
exhausted.
Tech Ed 2008
ThemesMicrosoft MobileMicro FrameworkOslo – teaser trailerF#
Themes of Tech Ed 2008
Gates last public presentation as full timerSoftware + services AKA Cloud computing OsloIE 8Silverlight 2 beta 2IBM DB2 access via VS DB EditionCTP of Microsoft Sync
Global Wireless Data Networks 2G, 2.5G, 3G, 3.5G, 4G
Global System for Mobile
Communications(GSM)
Universal Mobile Telecommunications
System (UMTS)
Code Division Multiple Access
(CDMA)
Orthogonal Frequency Division Multiplexing
(OFDM)
General Packet Radio Service (GPRS) : ~35 Kbps Enhanced Data Rates for GSM Evolution (EDGE): 75 - 135 Kbps
High-Speed Downlink Packet Access (HSDPA): 400 - 700 KbpsHigh-Speed Uplink Packet Access (HSUPA): 600 Kbps – 1.4 Mbps Down/500 – 800Kbps Up Long Term
Evolution (LTE): Up to 100Mbps Down/50Mbps Up
CDMA2000 1xRTT: Up to 144Kbps DownEvolution-Data Optimized (EV-DO): 400 – 700 Kbps Evolution-Data Optimized (EV-DO Rev A): 300 – 400 Kbps UpEvolution-Data Optimized (EV-DO Rev B): Up to 14.7Mbps
Wi-Fi IEEE 802.11a, g, n: Up to 300Mbps ~70 mWiMAX IEEE 802.16: Up to 70Mbps ~50 kmWiBro/Mobile WiMAX IEEE 802.16e: Up to 50Mbps ~5 km
High-Speed Packet Access Evolved (HSPA+): Up to 42Mbps Down/22Mbps Up
Universal Mobile Telecommunications System (UMTS): 220 - 320 Kbps
Evolved EDGE/EDGE II: 300% Download/100% Upload Improvement
Picocell FemtocellMSC
InternetInternet
Frequency Bands850900
18001900
An Optimized Mobile Infrastructure System Center Mobile Device Manager 2008Internet Perimeter
Wi-FiHotspot
CellTower
BackFirewall
FrontFirewall
Corpnet
WindowsMobile 6.1
WindowsMobile 6.1
ISA Server 2006[Pre-Enrollment]
SCMDM 2008Gateway Server
[Post-Enrollment]
EnrollmentServer
[Admin orSelf-Serve]
Windows SoftwareUpdate Services
DeviceManagement
Server
CertificateAuthority
ActiveDirectory
SQL Server 2005[Reporting]
SecurityBlacklists
Encryption
Device OUGroup Policies
OMA DM
Mobile VPN
Mobile VPN
DoubleEnvelopeSecurity
DoubleEnvelopeSecurity
Mobile VPNStable IP
Fast Reconnect
Device Wipe
Bringing Reliability To WirelessWCF Store and forward
Wi-FiHotspot
CellTower
BackFirewall
FrontFirewall
SCMDM 2008
Gateway Server /ISA Server 2006
Mobile VPN/SSL
WindowsMobile
WindowsMobile
Exchange 2007[Client Access Server Role]
WindowsCommunication
FoundationLOB Server
WindowsCommunication
FoundationLOB Server
SSL
Internet Perimeter Corpnet
Internet Perimeter
Access To Enterprise PackagesBizTalk Adapter Framework
Wi-FiHotspot
CellTower
BackFirewall
FrontFirewall
SCMDM 2008
Gateway Server /ISA Server 2006
Mobile VPN/SSL
SQL Server
Oracle
BizTalk 2006 R2[Adapter Framework]
SAP
HostIntegration
ServerMainframe
AS/400
Siebel PeopleSoft Tibco
JD Edwards WebSphere
SSL
Corpnet
WindowsMobile
WindowsMobile
Internet
WindowsMobile
[SSC 3.1/3.5]
Perimeter Corpnet
Data Sync With SQL Server 2005Mobile Merge Replication
SSC Client Agent
Wi-FiHotspot
CellTower
BackFirewall
FrontFirewall
SCMDM 2008
Gateway Server /ISA Server 2006
Mobile VPN/SSL
WindowsMobile
[SSC 3.1/3.5]
SSC Client Agent
IIS Replication ServerSSC Server Agent
SQL ReconcilerSSC Replication
ProviderSQL Replication
Provider
.OUT.IN
Active Directory
SQL ServerPublisher
SQL ServerDistributor
FilteringHorizontal
VerticalJoined
PublicationArticleArticle
Snapshot AgentMergeAgent
OSSQL
Dist DBDist Log
Pub DB Pub Log
Tempdb
Tempdb Log
SnapshotShare
SSL
Evolution Of The Micro Framework
1.0Microsoft-onlyWatch-focused UI, connectivity, driver model, emulator, etc.
2.0Visual Studio debuggingWPF-style graphicsSocketsFirst Porting Kit
2.0 SP1Code signingRTM buildsFont conversion
2.5TCP/IP StackDPWSEvaluation versionSmaller than 2.0
Products using .NET Micro Framework
Ricavision VAVE Remote Control
Chicony Picture Frame
Garmi nüvi & StreetPilot w/MSN
DirectASUS W5Fe with
Sideshow Feature
Microsoft Streets & Trips with Connected
Services
Leviton Vizia RF FoyerEthernet Gateway
Silverstone MFP52B SideShow Unlimited
Microsoft TV Foundation Edition
Inthinc WaySmart Fleet Safety device
Alpine K3 Navigation with MSN Direct
pulsecor R6.5 non-invasive monitor
LG Z1 Notebook with SideShow PiTech Remote Control
Pioneer AVIC F500BT GPS w/MSN Direct
TopSeed Remote Control
Slide 4
Where is "Oslo"?A status report
Microsoft says they'll tell us more about "Oslo" later this year
No release dates have yet been announced
The goal todayDescribe some of the main problems “Oslo” addressesGive you a big-picture view of the technology
Don’t be surprised if there are changes before the first “Oslo” release
Some things are sure to change, e.g., screen shots
IT TodayWorking in a complex world
Data Center
Application
Business Process
Computer
Workflow
Service
Activity
SLA
Who Cares About What?Different people, different concerns
Business Analyst
Enterprise
ArchitectDevelop
er
IT Pro
Improving This Situation
The challengeHelp people in diverse roles work with diverse information across different domainsMake IT simpler, more effective, and less expensive
The “Oslo” approachProvide a common repository for all of this informationProvide a visual editor for working with repository information
And allow other tools to be used as well
The "Oslo" RepositoryA common store for diverse informationProvides one place to find information
about the IT environmentExamples of what the repository allows
People in different roles can see and modify a common set of information
About applications, business processes, or anything else
Relationships between information can be made apparentProblems can be tracked from end to end
SLA BusinessProcess
Service
Activity
Data CenterApplication
Workflow
Computer
The "Oslo" Visual EditorA tool for working with that information
Provides a useful tool to create, read, update, and delete the repository's information
Examples of what the visual editor allowsPeople in different roles can see the information they care about in the way they want to see it
They can have better conversations with one other
Relationships between information can be examined visually
People can make connections across the environment
The Repository And Visual EditorAn illustration
Repository
Visual Editor
Information about applications, computers, business processes, etc.
The Repository A closer look
Schemas
Repository
Instances
Defined using the "Oslo"
schema language
What's In The RepositorySome examples of pre-defined schemas
What It DescribesSchema
Process The steps in a process, e.g., a business process
Service A service provided by an application; can run locally or remotelyApplication A (possibly composite) application
Computer A physical computer
Workflow A WF workflow
Activity A specific activity in a WF workflow
ServiceLevelAgreementRequirements defined by an SLA
Planned "Oslo" ReleasesBreaking the waves
Oslo Wave 1Next version of
WF (will ship with the .NET Framework “4” and Visual Studio “10”)
Oslo Wave 2
Oslo Wave 3Process server
- Lifecycle Manager - BizTalk host
Repository
Visual editor
Process server - WF/WCF host only
What the F# ???
..a functional, object-oriented, imperative and explorative programming
language for .NET
What Is F# For?
F# is a General Purpose languageCan be used for a broad range of programming tasks
Some particularly important domainsScientific data analysisData miningDomain-specific modelingFinancial modeling and analysisAcademic