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…

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.

Microsoft PDC 2008 Live Blog of Keynote 1 – Ray Ozzie

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:35PT and a spinning logo… a late start is par for the course at Microsoft events.

08:37 off we go with Ray Ozzie, Chief Software Architect.

‘Going to talk end to end.’  Showing pie chart of range of vendor sizes.  Thanking for attendance… awkward clap lead.

3 things kept him placing bets on Microsoft when he was in the audience.

  1. Microsoft builds key apps to ensure platform has no gaps.
  2. Scope of reach – so high likelihood of platform achieving critical mass.
  3. Bill & Steve knew that for them to be successful, Ray’s smaller business had to be successful.

Talking about devices.  PDC will talk about revolution of deeply combining software with services.

Activation codes for new services will be given out.  Today is the backend focus – premises to data centers.

Talking about virtualisation. 

Most people manage the enterprise, but more so now, IT has to be externalised.

Websites now need to allow customers to communicate with each other.

Software developers and IT operations need to work together to serve many users.

I think this is leading to Microsoft virtual computing offering…

Talking about what things can go wrong and resources need to handle it – aka why you should use the Microsoft solution.

More about geographic issue too.

Is the cloud different from serving internal users.  Yes, serving the world of the web is different.  There are reasons to have access to a shared infrastructure from a company with all the right expertise.

msn.com, windowsupdate, msdn, office online, microsoft.com, windows live all handles by Microsoft – they all grew organically.

Could these be the key apps that they’ll move to the offering they are probably about to announce?

He’s going on about how Microsoft has all the right kind of expertise.

It wasn’t packaged so others can use it.

Now talking about tiers: desktop/mobile; enterprise; web tier.  3rd tier is size of the web.

Some Microsoft people started on a mission to make a cloud platform for everyone.  A few months later, Amazon EC2 was launched.  Praise to them.

Announcement: Windows Azure and Azure Services.  Emphasis on the ‘Az’

Offering at the web tier. ‘Windows in the cloud’.  Foundation for a high scale service:  Computation; storage (blog, tables & streams); automated management system.

Visual Studio, .NET can be used.  You’d expect a world of tools from Microsoft and Vendors.

Let’s hear the features and pricing…!

Azure needs to be different.  Needs to be rooted in scale-out, not scale-up.  Need new types of model-based deployment, etc.

It’s a service running on a vast number of machines, first in the US, then worldwide.

CTP today.  Current features only a fraction.

They are far behind Amazon and GoGrid.

Microsoft services will move to Azure.

Azure has these pillars:

  • Live Services
  • .NET Services
  • SQL Services
  • SharePoint Services
  • Dynamics CRM

SQL Services now encompasses SQL Service Data Services and reporting, etc.

Switch to Amitabh Srivastava.

Windows Azure = Project RedDog

Kernels don’t demo well.  It’s scalable.

Azure manages global data-centre infrastructure.

Handles application or OS upgrade to avoid performance loss.

Fabric controller at heart.  Manages lifecycle for deploy, upgrade, configuration.  Tell is what end state you want with model and code.

Model includes (as XML file)

  • Roles & Groups
  • Channels & Endpoints
  • Interface
  • Configuration Settings

For high availability:

All components built to be highly available.  Single or even double failure will not bring it down.

Technologies:

  • Service mgmt,
  • Virtualized compute
  • Blobs
  • Tables
  • Queries
  • Locks

Can develop and test on your desktop.

Can use these skills: .NET, ASP.NET, VS 2008, VB, C#, C++, Windows Server.

Here comes the “Hello, World!” demo with Steve Marx – they both like red shoes…

4 new cloud templates in Visual Studio.

Cloud project gives two projects – one with asp.net and another with cloud model/config.

A standard label in the asp.net project to say “Hello, PDC!”.  F5 for standard test.

Publish on the cloud project, takes you to the Azure Services Developer Portal.  Create a hosted service.  cloudapp.net is the default domain.

Production and Staging areas.

Upload bin folder and the metadata.

Deployment starts…

When ready, can try from web interface.

Demo with Jonathan Greensted, Sentient

Bluehoo – mobile app to make social connections.  Uses bluetooth.

Silverlight application with characters to show people.  Grey are discoverable without the software.  Pink/Blue for female/male friends with Bluehoo and profile.

Uses REST interface to service in the cloud.

Awkward clapping about dancing.

Everything in C#.  No new tools.  Standard scripted benefits waffle.

Bluehoo admin interface showing capacity for compute (web), queues, computer (web), storage.

Can go to Azure portal and change things.

Currently editing of XML, but will be UI soon.

More scripted marketing pre-canned benefits waffle.

m.bluehoo.com beta.

Back to more about Azure with Amitabh Srivastava.

Open with:

  • Command-line interface
  • REST protocols
  • XML file formats
  • Managed and native code support

.NET apps first and native code later.

Designed from the ground up.

All looking good so far but still waiting for pricing, availability (which doesn’t sound like any time soon for a real release).

Over to Bob Muglia, SVP for server and tools business.

Talk about 5 generations of computing: Monolithic; Client-Server; Web; SOA; Service.

Trip down memory lane about these.

Services Requirements (the same for cloud but more challenges for them):

  • Interoperability, business Processes
  • Identity & Security
  • Data Management & Compliance
  • Services Management

Azure apps can take advantage of huge power, but reducing up-front capital cost.  Move from thinking about management 24/7 to having it provided.

Looking at .NET Services pillar of Azure:

  • Service Bus (connect on-premise to cloud securely traversing firewalls)
  • Access Control (federated access for on premise and cloud)
  • Workflow services (scalable taking Windows Workflow into the cloud from on-premise)

Pool of resource available to Azure app developer.

Looking at Identity Services in .NET Services:

  • Users control their own identities
  • Single, federated identity platform
  • Open and interoperable.

Codename ‘Geneva’ helps federate Active Directory into the cloud.

Looking at SQL Services of Azure:

  • Database
  • Data Sync
  • Reporting
  • Data mining
  • ETL
  • Reference Data

Will grow to these from current SQL Service Data Services.

Demo with Shawn Davison of Red Praire (supply chain and store operations currently with SOA solutions)

Demo of one-button product recall

Showing Access Control Service in Azure portal.

Partners use own identities.

Looking at Workflow Service web.

Now showing Contoso (fictional company for demo) use of Red Praire system.  Playing product manager at Contoso.

On Contoso intranet, select product.  Enter that a critical problem found – click one button.

Over to Silverlight prototype on RedPraire showing interaction with Azure service initiated from on-premise workflow.

Azure workflow handles communication with partners.

Not a great example to demo or visualise, but it’s hard to demo this stuff effectively.

Talking about System Center products.  Operations Manager collects information for on-premise systems.

Project Atlanta built on Azure to allow companies to get their global Operations Manager status online using Service Bus.

Can compare System Center data across opt-in customers.

Showing VS.  Adds code snippet to bring in SQL Services data and puts the result into a chart.

Announcement: Chart control for Silverlight in PDC hand-out kits.

Showing early version of reporting services in Azure.

With the Reporting designer in VS.

Runs a preview of data with lots of rich chart types like Pie, Gauge, Bar graphs.

Goal to create symmetry between on-premise and the cloud.

Many skills can be leveraged from on-premise to the cloud.

Announcement: Next-generation Oslo modeling platform in PDC hand-out kits.

Oslo incorporates M language for making models and Domain-Specific languages.

Not a lot of focus on new developer tools on display, mostly services and infrastructure stuff.  Still no pricing or full availability information.

Over to Dave Thompson, VP Microsoft Online Services

Talk about extending Microsoft online services using Azure.

Explanation of why Microsoft online needed.

Online services are Subscription access to Microsoft servers.

Announcement: All enterprise server software will have option of online service in the future.  Watch out partners!

Examples of people that use the services.

Selling up Software + Services where services is Microsoft Online Services

Need a seamless experience with Federated Identity and Extensible.

Note that SharePoint and CRM Online Services currently are not as extensible as on-premise, e.g. can’t upload own managed code and plug-ins.

Explaining federated identity from on-premise to Active Directory to Microsoft Online Services.  The system they use is part of Azure.

Showing current extensibility of Online Services, saying that indeed custom code isn’t support currently, but will be.

Demo of ‘more complete solutions using Windows Azure and Online Services’.

Will show online federated idenity model and constructed line-of-business application using Online Services (not all currently available yet or in all territories including Canada!).

No announcements about broader availability of Online Services!

Roles for demo:

  • IT Administrator
  • Developer
  • Project Manager
  • Customer of company

Setting up Microsoft Services Connector.

As IT Administrator…

Just specify dns domain name, certificate and who on-premise can access Online services.

‘Even a VP can do it’.

No laugh

As Developer…

Goes to Dynamics CRM – showing that login transparent.  It is customised for Professional Services company with time sheets, etc.  Has custom entities.

Get WSDL for CRM including access to metadata.

As Project Manager…

Checking and approving time sheets.  Sets off workflow.

Easier to do reports.

Customised ribbon in Word – contruct a status report using web services.  Side panel to pick project and select items – inserts those details into Word.  Push a button and report is published to SharePoint.

No servers set up by fictional company or customers.

As Customer…

On SharePoint web portal, Silverlight gauge control, table of information and inclusion of new status report, both getting data from CRM Online.

Back to Ray

Covered the Azure Services Platform.

Note that Live Services was not covered from the 5 pillars.

There are Azure sessions.

PDC attendees have first access to Azure CTP at noon PT at azure.com.  Provisioned over next 2 weeks.

Announcement: azure.com (there but sign up is currently not available as expected)

More broad access based on learning from that.

They will be conservative progress.  Preview is free but things may change.

Pricing and models will be competitive.

Today was about infrastructure.  Tomorrow will be about experiences, client OS, services to bridge web, pc and phone.  There will be surprises.

So that’s it at 10:15 PT.

One would think that the biggest wow announcement would be on day 1, so the fact that the infrastructure was  announced today (with no real availability) before Windows 7 (tomorrow) makes me wonder how well the announcements of Windows 7 will stand up tomorrow.  The build for attendees is supposed to be M3, Pre Beta, and what’s to be shown tomorrow is rumoured to be more feature-rich than the build being handed out.  It seems like getting a PDC build will not be much of a catch – the same could be said for Azure benefits for attendees if real availability is very much in the air (publically at least).  PDCs don’t happen every year, but I’d think that one may be appropriate next year if, as many are speculating, Windows 7 comes out in H2 2009 (for xmas 2009 PC inclusion), and Azure could also then be in full swing.

I think some good announcements were made today, but they are far from being commercially available or even comparable pricing-wise.  Ray talked about being conservative, but it also looks like the stuff is far from ready yet in any case.  Note, I’m using Windows Live Writer Beta to do this – also S+S where the Microsoft part is in Beta (although there was a non-beta prior release) and the Services part (provided by WordPress) has been out of Beta for some years now.

Talk about the Live Services pillar for Azure services and Wave 3 was notably absent.

Perhaps further keynotes on on-demand session videos will reveal more…

So until revealing session videos occur or tomorrow’s keynote, bye for now.