1. Welcome from the UK
Developer and Platform
Evangelism team
Eric Nelson | ISV Application Architect | Microsoft UK
eric.nelson@microsoft.com | http://bit.ly/ericnelson | http://twitter.com/ericnel
2. Agenda
• 1pm Microsoft (Development) Technology Roadmap – Eric Nelson
• 1:45pm to 3:15pm: Technology drill downs
• 1:45pm Windows Azure Platform – Eric Nelson
• 2:15pm Windows Phone 7* (was SharePoint) – Paul Foster
• 2:45pm SQL Server 2008 R2 – Keith Burns
• 3:15pm What next and Q&A
• Finish when you are finished
• NOTE: no formal breaks – but an optional “leg stretch” will be available at
2:10pm
3. Meet the team
• Developer and Platform Evangelism – the “ISV team”
• Helping UK “ISVs” use the latest technology from Microsoft
• Follow us at:
• http://blogs.msdn.com/ukisvdev
• http://twitter.com/ukisvdev
4. Microsoft (Development) Technology Roadmap
Eric Nelson | ISV Application Architect | Microsoft UK
eric.nelson@microsoft.com | http://bit.ly/ericnelson | http://twitter.com/ericnel
5. Lots of new “trends”
• New devices
• Smart Phones, Slates, Touch, NetBooks
• New deployment options
• Web (LOB in the Browser)
• Cloud (PaaS, IaaS, SaaS…)
• Multi-tenancy, …
• Blurring of “Work and Home”
• Devices span both
• Home technology wins
• New customer expectations
• Fun, style, simplicity, free, immediate,
“always connected”
6. Microsoft is investing heavily
• New development tools
• Visual Studio 2010, Expression Blend 4, WebMatrix, LightSwitch
• New programming languages
• F#, IronRuby, IronPython
• New servers/services
• SQL Server 2008 R2, Open Data Protocol (OData)
• New “platforms”
• .NET Framework 4.0, Windows 7, Windows Azure Platform,
SharePoint 2010, Silverlight 4.0, Internet Explorer 9.0, Windows Phone 7
• New ways to help developers
• The Channel 9 Learning Center, msdev.com, Microsoft Platform Ready
7. • Help software houses to use the latest technology from Microsoft to bring
applications to market
• Assistance during:
• Development
• Testing
• Marketing
• All completely “free”
• Microsoft Platform Ready is evolving…
• New benefits are appearing
• Feedback is encouraged!
http://www.microsoftplatformready.com
Introducing Microsoft Platform Ready
8. Lots we could talk about…
• The User Interface layer
• HTML5, Silverlight, WPF
• Windows Phone 7
• The Data layer
• Storing data - SQL Server 2008 R2
• Working with your data – Object Relational Mappers (ORMs)
• Projecting your data - Open Data Protocol (OData)
• The Platform
• SharePoint 2010
• The “Cloud” – Windows Azure Platform
10. Microsoft is investing heavily in HTML5 and Silverlight and WPF 1/2
Silverlight 4
• Microsoft is developing its own software using Silverlight
• Working hard on next version for Windows and Mac
• Delivers consistency across browser and platform
• New development environment (LightSwitch)
• Core to Windows Phone 7
WPF 4
• Microsoft is developing its own software using WPF
• .NET 4.0 and Visual Studio 2010 – major update to WPF
• Massive ecosystem
11. Microsoft is investing heavily in HTML5 and Silverlight and WPF 2/2
HTML5
• First class support in IE 9.0
• Massive commitment to standards
• In time, HTML5 will be a good cross browser and cross platform solution
P.S and we haven’t forgotten Win32 development…
12. HTML5, Silverlight and WPF – all important, all have their uses
HTML HTML5 Silverlight WPF
Cross Platform, Cross Device Possibilities
“run everywhere”?
10 8 5 0*
Platform Integration
How much access to the underlying platform?
2 4 7 9
Runtime Deployment
How prevalent and how easy to deploy?
10 3 7 5
Runtime Agility
How quickly does a client runtime adapt to a
changing world?
2 2 9 7
Runtime Consistency
Build vs deployed experience?
3 TBD? 8 9
Application Deployment
Easy to deploy?
10 10 9 5
Developer Model & Tooling
Ease to develop?
? ? ? ?
Source: http://mtaulty.com
14. Data
Storing data - SQL Server 2008 R2
Working with your data - ORMs
Projecting your data - OData
15. Data
• Storing data - SQL Server 2008 R2
• “Be compatible” vs “Take a dependency”?
– NB: Mainstream support for SQL Server 2005 ends 12/04/2011
• I will leave this one to Keith
• Working with your data – ORMs
• Entity Framework 4 is mature and capable. Trust me on this
16. Data
• Projecting your data – Open Data Protocol (OData)
• Protocol for querying and updating data
• Follows many of the REST principles
• WCF Data Services easily exposes your data via OData
• Examples
• SQL Azure Labs
• SQL Server 2008 R2 Reporting Services
• SharePoint 2010
• PowerPivot for Excel 2010
• CRM 2011
• Windows Azure Tables
• Windows Azure DataMarket
18. SharePoint 2010
• SharePoint is fantastically popular amongst your customers
• Over 100M licenese, 17K cystomers, #1 Portal (Forrester)
• 4000+ partners in the eco-system
• Customers love having “one place”
• Would like applications from ISVs to also be in the “one place”
• But developing for SharePoint 2007 was … err… yucky
• The good news is developing for SharePoint 2010 is vastly better
• Which means the time is right to look again at SharePoint
22. And new Business Connectivity Services – now CRUD
Office Apps
Client
Runtime
Offline
Operations Cache
Development
Platform
Business
Intelligence
Enterprise
content mgmt
Collaboration
social
Enterprise
Search
ECT
Store
Runtime Security
Solution
Packaging
Out of the
box UI
Web 2.0DB
WCF
Web Service
.NET LOB
SharePoint
Design Tools
SharePoint
Designer 2010
Visual Studio
2010
23. Improved Data Access Technologies
LINQ
Farm Site List Data External Lists
Data Platform
Client-side
Server-side
Strongly-typed lists
Weakly-typed lists
Strongly-typed lists
Weakly-typed listsServer OM
Client OM
REST APIs
24. Enables LINQ
// Get the SharePoint list
EntityList<Customer> Customers =
data.GetList<Customer>("Customers");
// Query for customers from London
var londonCustomers =
from customer in Customers
where customer.City == "London"
select customer;
foreach (var londonCust in londonCustomers)
{
Console.Writeline("id = {0}, City = {1}",
londonCust.CustomerId, londonCust.City);
}
27. Is “Cloud” Inveitable?
“By 2012, 80% of Fortune 1000 enterprises will be using
some cloud computing services, 20% of businesses will
own no IT assets.”
Gartner
“The bottom line: Early adopters are finding serious
benefits, meaning that cloud computing is real and
warrants your scrutiny as a new set of platforms for
business applications.”
Forrester
28. Usage
Compute
Time
Average
Inactivity
Period
“On and Off “
On and off workloads (e.g. batch job)
Over provisioned capacity is wasted
Time to market can be cumbersome
Compute
Time
“Unpredictable
Bursting“
Average
Usage
Unexpected/unplanned peak in demand
Sudden spike impacts performance
Can’t over provision for extreme cases
Average
Usage
Compute
Time
“Growing Fast“
Successful services needs to grow/scale
Keeping up w/growth is big IT challenge
Complex lead time for deployment
Compute
Time
Average
Usage
“Predictable Bursting“
Services with micro seasonality trends
Peaks due to periodic increased demand
IT complexity and wasted capacity
Is it just about this?
29. “I want to try something
now“
Need to quickly provision new
machines for a temporary period of
time
“Departmental“
Need to quickly provision new machines
for a departmental solution
Or is it also about this?
Machines
Time
Machines
Time
“Just store
data in the Cloud“
With all processing elsewhere
“Extend to
the Cloud“
Extend existing applications
“Migrate existing
applications“
Benefits of reduced operational costs
“New hybrid services“
On-premise and Cloud aka S+S
30. Types of Cloud Services
(On-
Premises)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
Youmanage
Infrastructure
(as a Service)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
OtherManages
Youmanage
Platform
(as a Service)
OtherManages
Youmanage
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
Software
(as a Service)
OtherManages
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
31. Introducing the Windows Azure Platform
makes it easy and cost effective
to run your applications
and store your data
inside Microsoft Data Centres
using existing skills
and integrate with
your existing on-premise applications
32. Windows Azure Platform delivers a PaaS
(On-
Premises)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
Youmanage
Infrastructure
(as a Service)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
OtherManages
Youmanage
Platform
(as a Service)
OtherManages
Youmanage
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
Software
(as a Service)
OtherManages
Storage
Servers
Networking
O/S
Middleware
Virtualization
Applications
Runtime
Data
33. Summary
• We face many new challenges and potential opportunities
• Microsoft is trying to help you with new technology
• Good questions to ask?
• Which of HTML5 (IE9), Silverlight and WPF fit your needs best? (It is fine
to choose all – as we have)
• Does simplicity of developing for Phone 7 open up a new channel?
• Why are you not using an ORM?
• OData is a powerful enabler. Are you (or your customers) a producer, a
consumer or both?
• Is it the right time to integrate with SharePoint?
• Can you ignore the cloud?
34. Next Steps
For slides and all the links check out http://blogs.msdn.com/ukisvdev
• Follow the team
• http://blogs.msdn.com/b/ukisvdev
• http://twitter.com/ukisvdev
• Sign up to Microsoft Platform Ready http://bit.ly/ukmprhome
Eric Nelson | ISV Application Architect | Microsoft UK
eric.nelson@microsoft.com | http://bit.ly/ericnelson | http://twitter.com/ericnel
Support for some features of the HTML5 Working Draft specification was introduced in Internet Explorer 8, including:
DOM Storage, defined as part of the HTML5 Web Storage specification
Ajax Navigation, implemented via the window.location.hash property and the onhashchange event, both of which are defined in the History Traversal section of the HTML5 specification
Cross-document messaging, implemented via the postMessage method and the onmessage event, which are both specified as part of the HTML5 Web Messaging module
Internet Explorer 9 Beta builds on the work done on HTML5 compliance in Internet Explorer 8, and implements the following new features:
The new video and audio HTML elements
The new canvas HTML element
The Selection interface
More interoperable HTML parsing
Several new DOM APIs, as discussed in the DOM L2 HTML section of this document
Scaling Vector Graphics (SVG)
Note It is important to remember that, as of this writing, the HTML5 specification is still in the Working Draft stage. Until it reaches the Candidate Recommendation stage, it could change significantly. For more information, see the latest HTML5 working draft.
OData does this by applying and building upon Web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON
What are the benefits to the ISV and to their customers?
The ISV can differentiate from competitors by offering tight integration to Sharepoint – rather than just another standalone web site. Right now most ISVs do not offer tight integration.
Potential for wider user base within a customer as “snippets” of the ISV application functionality and data get surfaced via a sharepoint portal – could leave to additional revenue.
The difficulty is an ISV does not want to create an application that only works if sharepoint is present and wants to avoid having two versions of their application.
What is involved to get an existing ISV application on the Windows Azure Platform?
Most applications will take weeks to months to get to a point where they are integrated tightly with Sharepoint. Very simple integration could be achieved in days.
ISVs can
Expose some/all of their functionality through the Sharepoint portal (addins/web parts)
Store documents in Sharepoint rather than “on the C drive”
Modularise their functionality to make it available as tasks to sharepoint workflows enabling the customer to integrate the app into their business processes
Use Sharepoint forms as data capture into their own application rather than their own custom UI
Either SharePoint Foundation or SharePoint Server
Requires x64 OS
Not Supported for Production
Only for Stand Alone Installation
Can be Disabled through Group Policy
Just for Developers
Requires Following Install Guide in SDK
Develop, Deploy and Debug
Web Part, BDC and Workflow designers
Package and Deploy SharePoint projects
Generate WSP for Production Deployment
View SharePoint site in Server Explorer
Team Foundation Server Integration
Broad SharePoint Support
Support for SharePoint Sandboxed Solutions
Import WSP from SharePoint Designer including Workflow
Build Workflow Steps for SharePoint Designer
Extensibility for Development of Additional SharePoint Artifacts
SharePoint Business Connectivity Services support
SharePoint List with External Data
Full Create/Read/Update/Delete (CRUD) operation support
Declarative or Programmatic
Evolution of the Business Data Catalog
Entity based programming
Strong Types and Intellisense
Supports List Joins and Projections
Join lists on lookup field between them
Join multiple lists (A->B->C)
Project any field from joined list in a query without changes in list schema
Media Player Web Part
Organization Browser
List and Site Creation
Office Web Applications
Silverlight Web Part
Simple way to upload
Silverlight CLR compatible
Client Object Model
Call SharePoint API’s
REST APIs
Simplifies List data access
Support for remotely hosted Silverlight applications
Delegated authentication/application principals
Install IE9 http://ie.microsoft.com/testdrive
Windows Azure Platform http://bit.ly/startazure
On-demand training on SharePoint 2010, SQL Server 2008 R2, Silverlight, Phone etc
http://channel9.msdn.com/learn/ and http://msdev.com