Silverlight 3 goes 3D

Scott Guthrie has now mentioned on his blog that Silverlight 3.0 will include 3D support with GPU hardware acceleration.  Flash 10 was recently recently with hardware acceleration, Silverlight is at least 6 months behind, albeit with the superior programming system and potential ecosystem.

He also mentioned, that the next release will have the fuller design surface in Visual Studio – a key weakness that I mentioned and potential source of revenue for Microsoft from developers (needing to acquire Expression Blend) in the meantime.

H.264 video will also be in there along with other mysterious improvements yet to be announced.  I wonder if the long overdue video capture will be in there?

Putting Your Eggs in the Live Services Basket

The PDC excitement is over.

The Azure Service Platform has been disclosed.

The Live Services are included in that and one of the Live Services is Web Authentication with Windows Live ID, meaning that you can use existing Live IDs to authenticate users to your service.

The Great News

From the current licensing terms of Web Authentication amongst the licensing terms for Live Services:

These services or applications have no user limits or fees.

The Concerning News

Amongst the Terms of Service for Live Services:

9. How We May Change the Contract.

If we change this contract, then we will provide notice as provided in section 20 below at least thirty (30) days before the change takes place. If you do not agree to these changes, then you must stop using the Services before the change takes place. If you do not stop using the Services, then your use of the Services will continue under the changed contract.

We may choose in the future to charge for use of the Services. If we choose to establish fees and payment terms for such use, Microsoft will provide advance notice of such terms as provided in section 20 below, and you may elect to stop using the Services rather than incurring fees.

and

12. Term.

This agreement will become effective on your first use of the Services or APIs. This agreement may be terminated immediately for any reason and without notice by Microsoft. If this agreement terminates, all rights granted to you by this agreement will automatically terminate and you will cease to have any rights to use the Services or APIs.

You could invest a lot of time making your site use Live ID for authentication only to find that you have no service with no notice or additional costs with 30 days’ notice – and 30 days’ notice means nothing if the service can be terminated without notice.

So how can plan to mitigate against this?  Well if you already have a service, chances are that you have your own authentication and that you would be adding Live ID, in which case you should make it a supplemental identity, not a replacement.  This does mean that once you’ve added it you should make it clear to users how they can recover their original service credentials in the event that Live ID needs to be removed (possibly without notice or because it would be too expensive).  In adding a secondary identity, you may as well go the whole hog and support multiple identity providers if appropriate.  Deep down in your database you may have a Users table.  This essentially becomes an Accounts table with a new Identities table allowing for the mapping of 1+ identities to each account.  Each Identity is a user claim from a provider you trust (e.g. Live ID) or provider claims you trust (e.g. the provider’s claim to be a government ID provider is trusted). 

If you are creating a new service than you need to give this some serious thought.  If you can stomach understanding the identity frameworks, then I’d suggest multi-identity support from the start.

Note that with Microsoft Federation Gateway, the owner of a domain (e.g. domain.com) can now have all Live ID web-based logins to that domain (e.g. someone@domain.com), diverted to a web page they provide for login.  The web-based identity space is become truly federated.  For the wider Microsoft claims-based federation model, you can also check out things like Geneva, ADFS & Microsoft Services Connector CTP (which works with the Federation Gateway).

The change and termination clauses I mention above apply to all of the Live Services.  Many of the services are free up until a usage limit after which you need to enter into an agreement.  I haven’t looked into whether that commercial agreement includes  Service Level Agreement clauses or better change-management clauses.  If it does then I’m wondering if one can pay for the Web Authentication in order to benefit from such potential clauses.

Back when Live ID was Passport, this kind of Web Authentication was also possible, however there was a stiff annual fee deterring service providers from using it.

I suspect that many care-free hobbyists, micro-ISVs or larger are diving headfirst into support of Web Authentication using Live ID.  Caution is required…

Free & Fantastic PDC 2008 Videos & Other Resources

I was quick to say how Microsoft was not openly giving access to PDC session videos to those that did not attend.

While they did not go out of there way to publicize it, and understandably so, Microsoft has made amazing resources available.  You can watch the 3 main keynotes and hundreds of hours of sessions on the PDC site.

While it took a while to make the videos available and the UI had some updates, you can see and filter all the sessions.

Also, keep an eye out for “PDC Proceedings: The Book of the Conference.”

You can also see my summaries of Day 1 and Day 2 along with my live notes of the keynotes and other commentary on this year’s PDC.

Summary of Major Announcements at PDC 2008 Day 2

Final release this week of new .NET 3.5 WPF Toolkit controls: datagrid, date picker, calendar controls, visual state management.

CTP release this week of WPF ribbon control (on XP, Vista & Windows 7).

Download available today of jQuery IntelliSense for VS2008 from jquery.com.

Download available for IIS Smooth streaming (free addition for IIS on Windows Server 2008) – adaptive streaming of media for Silverlight clients via HTTP.

Release of Silverlight Toolkit for Silverlight 2 with source code for controls (at various levels of quality): Charting, TreeView, DockPanel, WrapPanel, ViewBox, Expander, AutoComplete, NumericUpDown and more.

New major version of Silverlight next year.

Live Mesh is going into open Beta this week, inc. limited availability of Mac and Windows Mobile 6 clients.  Live Mesh development is part of Live Framework.

CTP of Live Framework (invite only following registration through azure.com) to access non-production-ready Live Services inc. Mesh Beta.  There’s a detailed diagram available too.  There’s a Channel9 video.

Office 14 will include web-based versions of Word, Excel, PowerPoint & OneNote, using Silverlight with high fidelity.  Shared editing between desktop/web/mobile devices with presence indicators and live updates.  There’s a Channel9 video.  Limited CTP at end of 2008.  Will be licensed to consumers through Office Live, and for businesses through Online Services subscription or as part of volume licensing on internal SharePoint servers.

Windows 7 may have these new features (with screenshots available):

  • New Taskbar: showing running and quick launchable apps – one icon per app type; Live preview on each icon shows all windows (and tabs for IE) running of that app type; get MRU for each app-type from the icon; can extend these menus; drag from start ment to taskbar to add; can re-arrange icons on taskbar.
  • Windows management: can drag and snap windows to left/right for each comparison; can drag up to top to maximise.
  • New Windows Explorer: Libraries = folders, desktop search combining multiple locations (on machine or on other machines); Search prompts with keywords; search term highlighting in search results.
  • New Home Group: can find all computers and devices added to home network with simple PIN; can control visibility of Pictures, Music, Videos, Documents or individual folders; home group appears as folder in Explorer; can find and play/show (e.g. music) across home network; work machine placed in home group can discover and access devices and computers; work machine in home group will not automatically share.
  • Extensible Libraries: present in Explorer, Media Player & Media Center, as well as common dialogs.
  • Windows Media Player: Has ‘Play to’ device (e.g. audio player or picture frame).
  • Device Stage: Show all devices, capabilities and access to resources (e.g. manuals) in one place.
  • Printing: Auto-switching of printer from home group and work.
  • Gadgets: Can be anywhere on desktop.
  • Desktop personalisation: can peek at desktop making windows transparent temporarily; can more fully customise and share desktop backgrounds.
  • System tray: User has better control of which icons are in tray and what notifications happen.
  • Action center: Central control of key system tasks
  • Multi-touch (already known): Menus better spaced if using touch; can control scroll and zoom (with two fingers) in non-aware apps; or in touch-aware apps, use an on-screen keyboard with premptive text and flick gestures such as back/forward.
  • Paint: New ribbon UI and multi-touch drawing
  • Wordpad: New ribbon UI and OpenXML support.
  • Bitlocker encryption: on usb memory sticks
  • Native VHD support: create, mount or boot from.
  • AppLocker: control of authorised local applications.
  • Direct Access to corporate network from the internet.
  • More responsiveness for start menu and task bar
  • Quicker boot time and device readiness

Get more business features information, general information and developer information.

.NET 4.0 may have these features:

  • Built-in support for multi-touch, deep zoom (like Silverlight) and Visual State Manager (like Silverlight)
  • Load CLR 2 (which includes 3 and 3.5 apps) and CLR 4 in same process.
  • More interop support
  • Dynamic Language Runtime included
  • Managed Extensibility Framework included – assemble apps from extensions

Visual Studio 2010 may have these features:

  • WPF-based IDE
  • WPF-based code editor with extensive extensibility
  • Multi-monitor support
  • Better TDD workflow
  • Extend with MEF

There’s a VS2010 & .NET 4.0 CTP available that doesn’t have all of these features yet.

ASP.NET 4.0 Preview available to download including AJAX 4.0 Preview 3, Dynamic Data 4.0 Preview 1, MVC Beta Source Code

Microsoft PDC 2008 Live Blog of Keynote 2

This is a blog of the event based on remote viewing of the live stream for a slightly less wrapped-up-in-it perspective… 

This is a paraphrasing/précis (in block quotes) of the keynote as it happens plus my own comments.  For the juicy stuff, search for “Announcement:”

08:33PT and of we go with Ray Ozzie, Chief Software Architect…

Recap of yesterday…

Today is user experience, front-end innovations.

Memory-lane pictures/video of PCs while Ray talks

Sounds like a Software+Services pitch coming…

We can do our customer a great service with combined value of their investment.

Make PC+mobile+web greater than sum of parts.

Long discussion of differentiation of pc, mobile and web apps…

We want it all.

Windows 7 will have best platform innovations.

Will continue to install in broad base of Windows.

Windows application model will continue to evolve with web-characteristics.  More of an appliance-like behaviour.

Investments in IE8 and Silverlight 2 for rich stuff with the power of .NET.

Today, we’ll see making web-apps installable and going off-line.

Steve Sinofsky with show Windows 7 and Live Wave 3.

Scott Guthrie and David Treadwell will show runtimes and tools make it easy to write great windows and web apps, and the Live Services from Azure Services Platform for bridging the 3 platforms.

Will also show extending Office to the 3 platforms.

Over to Steve Sinofsky

Will show:

  • Introduction to Windows 7
  • Software + Services
  • Transition from Vista
  • APIs
  • Fundamentals
  • Path to RTM
  • Call to Action

Windows 7 demo to show:

Personalised experience with user in control of PC, how to connect to information across PC, and bring together functionality of devices.

Demo with Julie Larson-Green

New taskbar (absorbing quick launch) with app-type icons.

One icon per app running or to launch with live preview of all windows/tabs per app.

Applause

Can close windows in live preview thumbnails and get MRU per app-type from icon.

Windows side-snapping when windows dragged for easy compare.

Applause

Full screen by dragging to the top

Drag from start-menu to taskbar to add it

Can re-arrange icons on taskbar too.

New Windows Explorer

Libraries = folders, desktop search over multiple locations.

Multiple library locations including external devices and home computers, as combined view.

Search prompts with keywords and doc

Adds highlighting search results.

Home Networking with Home Group

All home PCs find each other and devices

When you bring your work device, you are automatically connected to device with a simple PIN.  Can control visibility of Pics, Music, Videos, Documents or individual folders.

Homegroup shows in Explorer as folder.

Find music across home group.  Shows location and can play it with new lightweight Media Player.

Windows Explorer, Media Player and Media Center all now have the same libraries.

Windows Media Player

Can “Play To” a network device (e.g. audio player or picture frame)

Device Stage

Bring device capabilities into one place, e.g. for Motorola Rokr, as well as manuals.  View of all devices including network devices (including through other home group PCs).

Printing

Auto-switching of printer from home group and work

Gadgets

Can be anywhere on the desktop.

Which seems silly since it’s mostly covered.

Desktop personalisation

Can peek at desktop – making windows transparent temporarily.

Now easier to create and share desktops.  Includes glass colouring.

System tray

Pop-ups often come up.  User now controls what is in system tray and notifications, and combine system control through an action center.

Touch demo

HP Touchsmart (<$2000)

<$2000 is nothing to brag about.

More space in menus using finger.

Can scroll and zoom (two fingers) on a Word document – no awareness of touch.

With awareness in IE on live search.  Brings up on-screen keyboard with predictive text.  Can use flicks to go back/forth.

Awkward applause.

Paint

Ribbon in paint as already known

Drag picture into paint with finger.  Finger paint text in paint.

Can draw with two fingers at once.

They have multi-touch games in the demo pavillion – a pong game.

When will we see something other than pong for multi-touch?

Back to just Steve Sinofsky

Talking about IE8 as key part of Windows 7 access to web

Though IE8 is independent of Windows 7!

Talking about Windows Live Mail.

Confusing talk about Windows Live Essentials and Windows Live Services.

Windows Live Services make things available in browser of choice. Mail, photos, messages, blogging.

More on WLS in the future.

Talking about feedback from Windows Vista.

Audience laughs

Talking about Vista SP1 – brought it to level people can use.  Windows Server 2008 showed commitment to learning and improving.

Key lessons from Vista towards building Windows 7.

Readiness of ecosystem:

  • Vista changed a lot of things that needed big ecosystem changes.  95% of PCs can get Vista drivers now.
  • Same kernel in Windows 7 so no new compatibility issues.

Standards:

IE 8

  • Compliance test work released
  • Wordpad supports OpenXML format

Compatibility:

  • UAC feature was issue for developers at least.  Majority of apps can run in standard windows mode.  This was a move forward.

End-to-end experience:

  • Home networking experience improvements.
  • Work machine in home network will not share things.

Mention of Windows Engineering blog.

Developing for Windows 7

Jump lists and libraries are key features for developers and will be in common dialogs and Windows Live apps.

Multi-touch, ink & speech get a mention.

Multi-touch needs a killer-app and a very large screen (which apparently is OK if you are Steve and can avoid a big one).

DirectX can taps potential of PC graphics.  Have extended to 2D and animation in Windows 7.

Video of autodesk using multi-touch

‘Quicker’ and ‘easier’ are adjectives!!  Quicly and easily are adverbs.  A crappy minute of a guy spinning a 3D object on a screen – multi-touch is a solution without a problem.

Windows 7 Fundamentals Performance

Reduce memory footprint of core Windows 7 installation.  Reduce desktop window manager memory footprint. Reduce registry reading and index work load.  Looked at DVD playback that uses lots of system components towards extending battery life.  Worked on boot speed, device readiness and responsiveness (including start menu and task bar).  Kernel now supports 256 processors.

Demo by Steve Sinofsky

Steve currently using a Net Book with 1GHz & 1GB (with 1/2 available) with Windows 7.

BitLocker encryption on a memory stick with password for consumers or with group policy for enterprise.

Native support for VHDs to create (dynamic and fixed), mount and boot from.

Setting custom DPI and better work with multiple monitors.

Improved magnifier – Windows Key and +/- tracking mouse.

Windows Key and P to switch between projector types and extension to multiple monitors.

Remote desktop with remote multi-monitor machine showing multi-monitor on local multi-monitor machine.

Big applause.

Can still move and adjust size of task bar.  Can change icon size.

Can customise shut-down icon.

Ability to control notification messages.

Slider for how much UAC you want to see.

Tracking to RTM:

  • Pre-beta to PDC attendees
  • “E7” Blog
  • Beta (feature complete – no performance benchmarking) – early 2009.
  • www.microsoft.com/windows
  • Feedback tool – link on windows capturing context for reporting feedback
  • Customer Experience Improvement data
  • Release Candidate to RTM phase

Action items:

  • Participate and aim for 64-bit
  • Focus on fundamentals
  • Integrate with Windows 7 desktop (jump lists and libraries and many more).
  • Evaluate new broad set of APIs
  • Code to web standards in IE8
  • Download Windows Live Beta

Over to Scott Guthrie to talk about development on Windows 7…

Can use Win32 and .NET and interop.

Autodesk investing.

New Windows 7 APIs

MFC for Windows 7

Visual Studio 2010 (including large code base and multi-core support)

Mention of the summer’s .NET 3.5 SP1 release.  Will be on Windows 7.

Can take advantage to optionally ‘light up’ Windows 7 capabilities.

Demo using .NET 3.5 SP1 of album viewer

Going to add Windows 7 features.

Showing main page XAML.

Announcement: Shipping a ribbon control this week

Adding ribbon support

Just change XAML to Ribbon Window with Ribbon Tabs and Group.  Added back/group buttons.

Add more tabs.

Works with WPF command infrastructure.

Can skin controls of course.  Changed theme on the fly including ribbon – part of WPF.

Adding jump-list support.

Can simply specify tasks in XAML

Multi-touch support

Will add events into core classes.  Showing gestures on HP SmartTouch machine for flipping through pictures in app.

Pixel Shader support

.NET 3.5 SP1 funky effects shown

Announcement: New .NET 3.5 WPF Toolkit.  New final release of datagrid, date picker, calendar control and state control.  CTP of WPF ribbon control (on XP, Vista & 7).

.NET 4

Multi-touch, deep zoom, visual state manager built in.

Can load CLR 2 (with include 3 and 3.5) and CLR 4 in same process space.

More support of interop.

DLR included.

Managed Extensibility Framework included – assemble apps from extensions.

Improved WPF design experience in VS2010.

VS2010 is built with WPF!!  Adding multi-monitor support.  Richer code editing and refactoring support and visualisations.  Better TDD workflow.

Can use MEF to extend VS2010.

Demo of MEF with VS2010 CTP (available this week)

Most of shell not updated to use WPF.  Is showing WPF source editor.

Adornment sample.  Want a richer experience of comment XML in code.

Implement class.  When editor finds comment, it will call class.  Add Export attribute to allow VS to find the class.  Copy assembly to VS extensions directory. Reload VS – new fancy comment style showing.

Applause

New layout also shows direct link to bug information (relevant to function commented).

Applause

In next release, the language services will be opened up.

Talking about .NET Client Momentum

Tesco is largest online grocery retailer in the world, using .NET.

Demo by Tesco (Nick Lansley, Head of IT) with Conchango

Grocery shopping is about large numbers of items.

Using HP Smart Touch.

Tesco-at-home gadget on Windows 7 desktop.  Launches application with a virtual ‘cork board’.  Has messages, notes, photos, recipes, calendar.

Go into calendar and plan meals.  Drag recipes into basket.  Show nutritional information too.

Looking for products.  Using wall of product photos.

Pick a cake.

See lots of detail, animations and suggestions about cake.

Sort into Delivery, Pick-up and Xmas list.

Show physical barcode to camera (built into screen) to select product.

Applause

Include special offers.

Back to Scott Guthrie

IE 8 improvements

  • Standards
  • Web Slices, Visual search, Accelerators
  • JavaScript debugging and profile tools included

ASP.NET improvements already shipped this year and MVC to be released in next few months.

Will add improvements for AJAX going forward and are including jQuery (including IntelliSense).

Announcement: Can download JQuery IntelliSense for VS2008 today from jquery.com website.

ASP.NET 4.0 will bring improvements for

  • Web Forms (inc. css)
  • MVC
  • AJAX (Rest and templating)
  • Distribute Caching (with Velocity)

VS2010 with .NET 4.0

  • Code focused improvements
  • Designer improvements.
  • Deployment improvements (for test, staging and deploy) with deploy of HTTP.  Will also deploy SQL.

Silverlight 2

Silverlight installed on 1 in 4 machine.  Closing on 100 millions machines with Silverlight 2.

Mention of NBC Olympics.

Announcement: IIS Smooth streaming (free)

AOL went live with new mail client

NetFlix just turned on their live watching service.

Announcement: Release of Silverlight 2 controls with source code for Charting, TreeView, DockPanel, WrapPanel, ViewBox, Expander, AutoComplete, NumericUpDown and more…

VS2010 will have WPF-like fully-interactive designer.

Next year will see new major release of Silverlight.  Will have richer graphics and data support.

Silverlight outside the browser coming up.

Customers want windows-web connected experiences on desktop, browser and mobile devices.

Over to David Treadwell

Showing Azure Services Platform diagram.

Focusing on Live Services as part of Azure Services Platform that bring things together and to enable developers to bring things together.

Live ID

These can be use on other websites.

Customisation of sign-in experience part of PDC sessions.

Microsoft Federation Gateway allows domain owners to take control of Live ID logins for domains they own. CTP connector to allow Active Directory to integrate easily into gateway.

Directory – Contacts API

Can be used for social graphs.

Communication and Pressence API

Can enhance websites with IM.

Search & Geospatial APIs

Can be integrated.

Statistics

460 Million Users.  11% of Total Internet Minutes spent on Live Services.

Integrated Experience Device(desktop/web/mobile)

Stuff about what people want – integration, sharing, control and access to data, etc.

Live Mesh allowed bridging with synchronisation.

It was tip of iceberg.

Mesh allows connection of Users, Devices, Applications, Data Synchronisation.

Mesh now core part of Live Services.

Announcement: Live Framework – way to get to Live Services.

Get access from PC, phone and web.

Demo by Ori Amiga – how to enhance application

Enhance photo app.

Connect to live environment.

Add simple code to show enumerations of mesh folders in local UI.

Same for devices.

Same for contacts, but use linq to order by name.

Can now easily enable sharing to another PC device and add sharing for other contacts.

An added PC is now synchronising and getting data.

Once effect on one photo is quickly synchronised and shown on another device with no intervention.

Mobile phone takes photo which is synced from mobile device, to the two PC devices.

Demo by Anthony Rose from BBC to Mesh-enable web application

BBC iplayer website showing.

My mesh activity now showing on website.

Now showing Silverlight application with devices. 

Can sync iPlayer to other devices.

Can share my iPlayer list with my friends.

Back to website.

Activity announcements showing – can see activity of friends.

Pick on show amongst friends and can watch it in browser.

My activity is updated.  If I watch on another device, my activity has been synced so I can resume playing where I left off.

Back to David Treadwell

Announcement: Live Mesh access going in beta this week

Over to Takeshi Numoto, General Manager

Talking about Office 14.

Announcement: Office Web-based Applications will be part of Office 14

They are lightweight versions of the desktop applications.

These will include: Word, Excel, PowerPoint & Onenote.

OneNote 14 demo

Image added to desktop app on one computer.  Updates in web-based app in a few seconds on another machine.

Applause

Notes also sync.

Another guy with a mobile phone takes a picture.  It appears in desktop app, is placed onto surface and sync to web-app again.

Word 14 demo

Two users can both open the same document.  Presence icon shows presence of other users – changes can be synced.

Now showing same document in a web browser.  It uses Silverlight.

Has the ribbon too.  Full fidelity retained.

Excel 14 demo

Open a spreadsheet application in IE8 from SharePoint.  Also open it in Firefox.

Fully formatting and expression editing.

Highlight in one view is quickly shown in another view.

Can publish into Windows Live Spaces using REST APIs with publishing.  When document is updated, the chart in Spaces is updated on a refresh.

Applause

This was a small part of the Office 14 story.

Back to Ray Ozzie

Recapping.

Register at azure.com

I have my SDS & .NET Services access codes; just waiting for Azure.

Thank you for coming, etc.

That’s that at 11:00PT (30 minutes over).  Next presentation on Oslo starting any minute.

I’ll comment and summarise the announcements later.

Windows Azure Specs

According to a Channel9, a slot running the newly announced Windows Azure cloud ‘OS’ has the following equivalent machine specs:

  • 1.9 GHz Processor
  • 2GB Ram
  • 160GB HDD

The storage service adds other transactional storage options.

Charging is expected to be based on CPU-Hours, Data Transfer, Transactions & Storage.

Understanding Microsoft Azure Services Platform

The Azure Services Platform (Azure for short) encompasses the new Windows Azure cloud services operating system and various services.  Commercial availability is is H2 2009.

It’s all quite well explained on the Azure website.

It includes Windows Azure which is a virtualised appearance of a computing and storage platform including clever scalability and availability management.  It can run .NET based applications and native code (later).  You can leverage all your ASP.NET skills.  There are Visual Studio CTP tools available that include a local test environment.  A web and webservice interface allows you to control your computing and storage instance needs.

This of this as pay for time Windows Server (but not quite) and storage services.  See the Channel9 video for the inside whiteboard discussion.

It also encompasses other (separately usable/available to varying degrees) platform cloud services (as shown on the website) that provide additional functionality:

  • Live Services (Channel9 video);
  • .NET Services (Channel9 video) for connecting on-premise and cloud systems together , doing federated identity and Windows Workflow in the cloud;
  • SQL Services (formerly SSDS, Channel9 video);
  • SharePoint Services;
  • Dynamics CRM Services.

Those may also be charged for by various measures.

On top of that, you can also use Windows Live, Office Live, Exchange Online, SharePoint Online and Dynamic CRM Online.

You’d be right in thinking that Amazon EC2 + S3 or GoGrid already provide virtualised server and/or storage in beta or released products in some cases.