Thursday, September 09, 2010

It’s Déjà Vu All Over Again: Live Services Rejoins the Windows Azure Platform [Apparent Hoax]

Update 9/9/2010: The Microsoft/web site is still promoting Azure for Developers: Live Services. All nine pages of Training Videos are dated 12/21/2008 or earlier.

Update 9/7/2010: It turns out that Azure for Developers: Live Services is one of two Training Videos dated 12/21/2008. Guess I won’t need to redraw my Azure Services Platform diagram after all. It would be interesting to learn who was responsible for this gaffe.


The Microsoft/web site announced Azure for Developers: Live Services on 9/7/2010 or thereabout:

Remember this slide from PDC 2008?

image7

Well, Bill Lodin (starring as Rip Van Winkle) just reincarnated Live Services as a component of the Azure Services Platform, along with other members’ earlier avatars: .NET Services (now Windows Azure AppFabric and Service Bus) and SQL Services (SDS, now SQL Azure).

Here’s what Bill has to say about these products (from the video transcript below the embedded player):

Now, meanwhile another thing that’s just recently been announced is the Azure Services Platform and the Azure Services Platform certainly is built on the notion of cloud computing and specifically the computing storage facilities provided by Windows Azure but there are other components besides Windows Azure to the Azure Services Platform. There’s .NET Services, sequel [SQL] [S]ervices and [S]hare [P]oint and [D]ynamics CRM but what we’re going to be talking about in this session is, of course, Live Services so note that we’re not talking about Windows Azure and we’re not talking about any other component of the Azure Services Platform other than Live Services in this session. [Emphasis added.] …

Apparently, Bill considers recently to mean about two years ago. SharePoint Services and Dynamics CRM disappeared from the Windows Azure Platform and .NET Services metamorphosed into new components more than a year ago.

Bill continues:

… So what is Live Services? Well, in a nutshell, Live Services are simply building blocks that handle user data and application resources. They are part of the Azure Services [P]latform. [Emphasis added.] …

My question is “Why are they part of the Azure Services Platform?”


image15

In a nutshell, the Live Framework allows developers to consume and combine Live Services to build your own custom applications and to support that, there is two things that you would download in order to get started, The Live Framework SDK and Live Framework tools that work with Visual Studio. Now, the components of the Live Framework, there’s three. The first is the Live Operating Environment and the Live Operating Environment represents a service composition engine so we break that down, it’s just sort of a run time if you will, that takes a number of services and brings them all together in one place and we can think about services as being akin to what we talked about earlier and that is geo location and web search and contacts and photos and custom information that you want to store.

The Live Operating Environment exposes the programming model in two places. It exposes it in the cloud but it also exposes it on clients and that’s going to be key part of sort of the whole value of the Live Operating Environment. The Live Framework also defines a resource model, a consistent way that you can define resource types and relationship. In other words, when we say contact, what does that mean? We want some consistency and we want some consistency in the API as to how we get at the data associated with contacts. There’s a programming and application model that defines resource model elements that allow you to deploy, managed, discover and run applications. [Emphasis added.]

So, this is sort of a high level view of the components that make up the Live Framework with a little detail thrown in. To begin with, we’ve got that Live Operating Environment. Again, the service composition engine and although it’s associated with Windows Azure and the Cloud, it also can be executed on Windows devices, on ultimately on Mac devices, Windows mobile, on your clients and then on top of the Live Operating Environment, you’ve got the resource model and the resource model could take several sessions just to go through it. So, we’re not going to talk about it any great detail just to point out that there’s a lot of work and emphasis has been placed on making the resource model consistent and interoperable. Some of the sort of benefits that I have already mentioned.


image11

Then there libraries that allow you get to that resource model, whether it’s a .NET frame work API, a Silverlight API, java script and there could be other/ There’s no reason why you can’t create your own library to access the resource model because accessing the resource model uses things like HTTP and ATOM bout any programming language. Finally, there’s the tools and services that make up the Live Framework and we’ll see a few of these in today’s demos.

Now, let’s talk a little bit more in detail about the Live Operating Environment. Now, the Live Operating Environment is this services composition engine. It provides a schema in the cloud and something they’re referring to as cast reflection on all of your devices. The Live Operating Environment exists in the cloud. It also get installed on all devices that you want to participate in your mesh and we’ll talk about that a little bit later. The goals of the Live Operating Environment, one is that all of the incarnations of the Live Operating Environment look and feel the same. So, in other words, you install an application into your mesh and you’ve got the Live Operating Environment running on several machines and then you’[r]e also accessing it through the cloud. It’s going to look and feel the same regardless of which machine you’re using or which browser you’re using and so forth. Each instance of the Live Operating Environment is architected in the same way for consistency sake.


image

So, let’s take a look at just what it looks like to build a Live Framework client application. Before we open Visual Studio, we need to set up our development environment and to do that, you’re going to need to download two things. You’re going to need to download the Live Framework SDK and the Live Framework tools. Now both of these downloads are available through, at this point, through connect.microsoft.com and you need to register for and received a token for live services. So, once you’ve redeemed your token and then accessed the developer portal, then you’ll be able to download the SDK and zip file and then an MSI that represent the tools installer.

I’ve searched throughout http://connect.microsoft.com and can’t find any evidence of Live Framework. The old Live Framework forum is in the Archived Forums Forums category, which isn’t very encouraging.

So, let’s talk about, first of all, the SDK. The SDK has the class libraries and the samples in order to be able to write applications that use the Live Framework and you’ll want to extract this to program files. Microsoft __ SDKs. It’s key that you install it there because in certain cases, the SDK expects it to be in that location so at least at this point for right now, you’ll want to make sure that you install it in Microsoft SDKs under program files and then you have the Live Framework SDK. There’s the version, you’ve got your class libraries, there’s the client – here we go – the client DLL, the resource model DLL and the web DLL, this is also where you’re going to find samples for .NET using SP.NET or WPF. There’s sample mesh applications and so forth. There’s also a tool called the live fx resources browser and let me just fires this up really quick. What this tool does is it actually is a web browser that connects to your local operating environment, your local Live Operating Environment or your cloud Live Operating Environment. …

image

Once the tools have installed, we can go ahead and fire up Visual Studio 2008. Select file, new project and I want to point out that there’s no specific template for a Live Framework client application because you can access the Live Framework from any managed code that has access to Live Framework DLLs so it can be a Windows service, a console app, Windows form app WPF application, you know, essentially any of these things so, we’re going to create a standard WPF applications called live FX demo and because we’re going to need some user interface to show off the results of our calls to the Live Framework, I’m going to go ahead and add a new user control and just replace the XAML with some code I happen to already have so we’ll just replace all that XAML there and I’m actually going to do the same thing for the window as well just so that we have our UI handled and we’re going to need to add an event handler. Here and we should now have sort of an empty shell of an application with a little bit of user interface but no real code behind.

Visual Studio 2008? Wait a minute; is this a hoax?

image

 

Notice the November 2008 CTP date.


Live Mesh? You gotta be kidding me:

image

So, let’s talk a little bit about Live Mesh before we wrap things up. Live Mesh is simply a software plus service platform that’s designed to unify all your data devices and applications and the goal of Live Mesh is to just have all of your data devices, your data driven applications and devices simply work together to make sure that your data and the applications that use that data are available to you anywhere, anytime allowing you to easily connect and share with the people you need to connect and share with and that data that’s being used by applications, you want to make sure that’s always up to date. So, mesh can be leveraged by both desk top and web based applications.

If you’re writing a desk top application, you can either use the local Live Operating Environment or even and you can use the clog based Live Operating Environment. If you’re building a web out, then it’s going to connect the Live Operating Environment in the cloud and again, just as what you know, what we talked about before, the application already has all the hard stuff handled, synchronization offline, resource model, etc., so when you build a mesh enabled web application, it’s going to be hosted and deployed in the user’s mesh, that is to say, it’s everywhere and anywhere. It takes full advantage of the live services that we’ve been talking about with respect to the available information on line, data sharing, synchronization and one thing about the nature of mesh enabled live applications is they have to be implemented using the multiplatform technology because remember devices that can run the Live Operating Environment and participate in a mesh run the gamut from Windows PCs to Windows Mobile 6 to Mac OS.

Damaster extolled The history of Windows Live Mesh in a 9/2/2010 post to LiveSide.net:

You might’ve heard that Microsoft recently decided to rebrand Windows Live Sync to Windows Live Mesh. But what was the story behind this great file synchronisation tool? We’ll give you a brief summary of the history behind Windows Live Mesh, right from the very beginning.

Windows Live FolderShareIt all started in 2005, three days after Microsoft introduced the “Windows Live” brand on November 1st, 2005, when they announced an acquisition to purchase FolderShare from ByteTaxi Inc, a software which allowed PC-to-PC sync of files and folders over the internet, and also enabled users to remotely access their files from the PCs under the sync relationship. But things didn’t change for almost three years, and for those users who were already using FolderShare, life went on. During these three years, Microsoft had been busy rewriting the entire FolderShare backend sync platform, moving it from LAMP to Windows Server. It wasn’t until March 2008 when Microsoft finally came out of the limelight to release Windows Live FolderShare, the first version under the “Windows Live” branding which was completely rewritten to make it run on the new Windows Server platform. …

He continues with happenings in 2008 and 2009, and concludes:

Great news came in August 2010, when Microsoft decided to up the cloud storage limit back to 5GB, but also announcing the rebrand of Windows Live Sync to Windows Live Mesh. The new branding, according to Dharmesh Mehta, was because “the Sync name created some confusion for people because of other Microsoft products with the Sync name, and customers had really grown to like the Mesh brand." (Credits to Paul Thurrott) In fact, to add to the confusion, while it was never announced, Wikikou.fr actually got hold of an interim beta screenshot showing that Microsoft did consider naming it “Windows Live Devices” at some stage (the same name as the web-based counterpart which allows users to manage their devices in the synced relationship and remotely access their computers via the browser). We’re quite glad that this name never made the cut!

Windows Live Devices (client)So looking into the future, it would appear that one of the highest priority would be for Microsoft to look into the possibilities of merging the Windows Live Mesh storage with SkyDrive’s 25GB, and as such letting users take advantage of SkyDrive’s other features like Office Web Apps. Microsoft also mentioned that they may consider a paid option which allow users to purchase additional storage space in future releases. And what about Mesh for Windows Phone 7? What are your thoughts about the future of Windows Live Mesh? Let us know by leaving a comment below!


Bill Lodin concludes his video with the following Links slide:

image

The http://go.microsoft.com/fwlink/?LinkId=130293 link leads to this page:

image

The recent blog post link leads to Rob Dolin’s very long Windows Live and Activity Streams post of 8/25/2010:

image

It appears to me that the debut of Azure for Developers: Live Services was a bit premature or someone mixed the signals to sync all the required content. My next step is to obtain a Live Framework Token. Wish me luck and stay tuned.

0 comments: