Saturday, February 21, 2009

Azure User Group February Seattle Meeting

The Azure User Group will have its first Seattle area meeting on Tuesday 02/24/09, meeting details below. Since this is the first meeting for Seattle, our topic will be Introduction to Azure Cloud Computing. In addition to introducing the platform, we'll get right into the developer experience and build and deploy an Azure cloud-hosted web site. Hope to see you there!

Date: Tuesday 02/24/09
Time: 6pm to 8pm
Location: Microsoft Bellevue Office, Lincoln Square, Bellevue, WA
RSVP link: https://www.clicktoattend.com/invitation.aspx?code=135405

Please RSVP so we can get the right head count for pizza and beverages.

Introduction to Live Services, Part 2: A Guided Tour of Live Services

In Part 1 of this article, we introduced Live Services and explored how it fits into Azure Cloud Computing. Now in Part 2 we'll take a tour of Live Services and get acquainted with the many services your applications can leverage.

Live Mesh and the Live Desktop
Live Mesh is a system for synchronization, sharing, and access of your data and applications. You go to
http://mesh.com first to sign up for a mesh, and afterward to access your mesh. You can add multiple devices to your mesh, which will soon include not only PCS but also Macs and mobile devices.




















Mesh also gives you a virtual desktop called the Live Desktop in which you can create file folders. You can move local files in and out of your Live Desktop manually (e.g. through dragging) or set up automated synchronization.
























You can try out Live Mesh and the Live Desktop at http://mesh.com/.

SkyDrive
SkyDrive is online file storage, currently providing 25GB of free storage per user. SkyDrive is password-protected and you can create personal, shared, and public folders and control who can access what.

You can try out SkyDrive at http://skydrive.live.com/.

Live Alerts
Live Alerts provides notification services. For example, you can get a notification about the weather or a new Live Mail message. Notifications can come to your desktop, mobile device, or email account. Live can detect where recipients are on the network and intelligently deliver an alert message.

You can sign up for and configure Live Alerts at
http://alerts.live.com
.

To program against Live Alerts, use wither the Windows Live Alerts for RSS Feeds or the Windows Live Alerts SDK.

Live Contacts
If you use Live Mail (Hotmail), Messenger, or Mobile Contacts, Live can make it easy for you to use and share your contact information--all under your control. There is a Contacts control you can put on your web sites that shows a logged in Live ID user their contacts and allows them to electively share some or all of them with your web site.

You can try out the Live Contacts control at
http://dev.live.com/mashups/trypresencecontrol/
.

You program against Live Contacts using the Contacts Control or the Contacts API.

FeedSync
FeedSync provides synchronization for the web. Just like RSS and Atom, FeedSync feeds can be synchronized to any device or platform.

You program against FeedSync using the Microsoft Sync Framework.

Live Messenger
Live Messenger is a well-known instant messaging system which includes a desktop IM client.

You can program against Live Messenger using the IM Control, the Presence API, the Messenger API, and the Activity SDK.

Photos and Photo Gallery
Live lets you store and access photos from Live users. Photo gallery is a desktop application that aids in getting photos off your camera, editing photos, and publishing them online.

You can download Photo Gallery at
http://download.live.com/photogallery.

You program against Photos and Photo Gallery using the Photo Gallery SDK o Photos Control.

Live Search
Live Search is not only a search destination on the web, it's also an API you can use to search your own content sources. Results can be output in JSON, SOAP, or XML.

There's an online example of Live Search at
http://simon.incutio.com.

You program against Live Search using the Live Search SDK.

Silverlight Streaming
Silverlight Streaming, as the name implies, allow media such as video to be streamed to Silverlight applications in a scalable way. Silverlight Streaming is cross-platform and cross-browser.

You can see a demo of Silverlight Streaming at
http://retail.mslivelabs.com/.

You program against Silverlight Streaming using the Silverlight Streaming SDK.

Live Framework
The Live Framework is the primary Live SDK. Along with it is Live Framework Tools for Visual Studio. It allows you to get at Live Services using the protocols that are common throughout the rest of Azure such as REST.

You can download the Live Framework and Tools only from Azure.com after signing up for an account, receiving a Live Framework token, and activating it.

Live ID
Live ID is a well-known identify system that is also adding support for Open ID. Integrating your web site with Live ID spares users from having to create and remember yet another ID and password. It's also possible to link Live ID to your enterprise Active Directory.

This is one area I've done some real development with. I've created several Azure-hosted web sites that integrate with Live ID for identity. It's a well-thought out system. You can see a demo that uses Live ID in the LifeTracks demo (
http://lifetracks.cloudapp.net) which is also on CodePlex.

You program against Live ID using the Live ID Web Authentication SDK, Live ID Delegated Authentication SDK, or Live ID Client Authentication SDK.

Live Spaces
Live Spaces let you define an online spot for sharing things like photos and messages. You can also add web gadgets.

This
video demonstrates interactively configure a Live Spaces space,
You program against Live Spaces using the Live Spaces SDK (there are multiple SDKs).


Live Maps (Virtual Earth)
Live Maps provides mapping and geospatial services, in 2 and 3 dimensions.
Live Maps can be accessed online at
http://live.maps.com/. An online demo of an application that integrates with Live Maps can be found at http://visitplanner.mslivelabs.com/.

You program against Live Maps using the Map Control or Web Services.

Web Gadgets
Web Gadgets are modular web areas you can add to web sites such as Live Spaces.

You program against web gadgets using the Live Gadget SDK.

Writer
Writer helps you write blogs and includes features such as spell checking.

You program against Writer using the Writer SDK.

Summary
As I present Live Services at user group meetings and other events, I find most developers are unaware that all of this exists and that they can take advantage of it programmatically. We've taken a grand tour of Live Services in this article to better acquaint you with the possibilities. The rest is up to you: how will you leverage the social layer of Azure in your applications?


Introduction to Live Services, Part 1: How Windows Live Fits Into Azure Cloud Computing

In this two-part article we'll introduce and explore Live Services, one area of the Azure cloud computing platform.

What do Windows Live and cloud computing have to do with each other? On the one hand, there must be some connection since the Azure platform diagram shows an area called "Live Services". On the other hand, Microsoft has long had services and products with the name "Live" that pre-date the Azure platform announcement by years. So how are we to understand all this, and what can Live do for your cloud computing applications? In this article we'll clear that up. In Part 1, we'll clarify what the intersection is between Live and cloud computing. In Part 2, we'll take you on a guided tour of the many capabilities in Live Services that are available to you.

Live as a Brand
The first thing we need to do is get a handle on what the "Live" brand means. That's confusing for several reasons. Live has been a moving target, not always meaning the same thing over the years. It isn't always applied consistently. The collection of offerings in Live is vast which makes it hard to find a common theme and dilutes its meaning. We'll do the full tour later, but to get an idea of how many different things are in Live, check out
this diagram.

Azure to the rescue. What Live needed was a rallying point around which most of its offerings made sense. The Azure cloud computing platform fills this need perfectly. If we can overlook a few misfits like OneCare, nearly every part of Live serves a purpose in filling out the Azure platform. More than anything else, Live provides the social layer of Azure, connecting people, devices, data, and applications.. And as we all know, social networking is big these days.

Live and Cloud Computing
Let's see if we can convince ourselves that Live and cloud computing have something to do with each other. Cloud computing is about leveraging smart, scalable data centers for your computing needs. Those computing needs might include hosting, storage, communication, security, collaboration, and workflow. Most of Live's offerings are also services provided by smart, scalable data centers and fall into these same categories or add some new ones. Some examples:
- Live Mail (Hotmail) and Live Messenger provide communication services through a smart data center.
- Live Desktop and SkyDrive provide storage services through a smart data center.
- Live ID provides identity services through a smart data center.
- Live Maps (Virtual Earth) provides geospatial services through a smart data center.


Live and Azure
The
Azure platform diagram shows Live being used in two ways. At the top of the platform diagram are Software as a Service (SaaS) offerings that you use and configure online but don't program against. Those with "Live" in the name are consumer applications and those with "Online" in the name are business applications.

The middle layer of the Azure platform diagram is called Azure Services, one member of which is called Live Services. To an Azure developer, this is the area that will be most interesting to you. "Live Services" refers to a healthy subset of the Live family that can be considered building block services for Azure cloud computing.

Since Live was around before Azure, you may be wondering if Live really uses the base Azure infrastructure or not. What I've heard is that parts of Live are using the Azure infrastructure--especially on the storage side--and over time more and more most of Microsoft's online services will be using the Azure infrastructure.


If they aren't fully integrated, does this mean you can't combine Live services with the Azure platform? Not at all. Personally, I've created several Azure-hosted web applications that also integrate with Live ID. I've also created an Azure-hosted Silverlight web site that integrates with Live Maps (Virtual Earth). All of this was straightforward.


Live Services
Let's return back to the question of how much of Live is part of Azure. The
http://dev.live.com web site has sections for the following under "Live Services": Admin Center, Alerts, Contacts, FeedSync, Live Framework, Messenger, Photo Gallery, Photos, Search, Silverlight Streaming, Spaces, Virtual Earth, Web Gadgets, Windows Live ID, and Writer. In my opinion the Live Mesh Desktop and Live SkyDrive belong on this list as well.

While most developers already use some parts of Live personally--such as Live Mail or Live Messenger or Live ID--many don't seem to be aware that all of the members of Live Services can be programmed against. This opens up some truly interesting possibilities for your applications.

SDKs and the Live Framework
There's clearly a lot of work going on to integrate and align Live with the rest of the Azure effort. Although every part of Live has its own individual SDK today, the
Live Framework appears to be the "main" API Azure developers are being encouraged to use. It's being positioned as the unified way to get at Live Services, supporting the RESTful protocols found all throughout the other parts of Azure.

If you're doing any work with Live Services the first thing you'll want to install is the Live Framework SDK. You'll also want the Live Framework Tools for Visual Studio. Downloading the Live Framework SDK and Tools is tricky! Instead of just going to a download page, you have to first sign up for an Azure and get your Live Framework invitation. Once you've received and activated that, you can get to a
download area for the SDK and Tools after signing in at Azure.com. The other Live SDKs are not so restricted: if you browse the different services listed at http://dev.live.com you'll see to links to one or more SDKs on the page describing each service.

So there you have it. Live is big, adds a social face to Azure, and contains an amazing amount of useful functionality you can leverage in your cloud computing applications.

In Part 2, we'll get acquainted with the individual members of Live Services and see what they offer you.

Wednesday, February 11, 2009

Azure User Group February LA Meeting

The Azure User Group will have its first Los Angeles meeting on Tuesday of next week (02/17/09), meeting details below. Since this is the first meeting for LA, our topic will be Introduction to Azure Cloud Computing. In addition to introducing the platform, we'll get right into the developer experience and build and deploy an Azure cloud-hosted web site. Hope to see you there!

Date: 02/17/09
Time: 5pm to 7pm
Location: Microsoft, 333 South Grand Ave, Suite 3300, Los Angeles, CA
RSVP link: https://www.clicktoattend.com/directions.aspx?code=135486

Please RSVP so we can get the right head count for pizza and beverages.

Azure User Group February OC Meeting

The next Azure User Group meeting in Orange County is Thursday of next week (2/19/09), meeting details below. We're going to be talking about Live Services. You can't cover Live Services in a single meeting due to how vast it is, so we'll first take a general tour of Live Services illustrated by some demos, followed by an in-depth look at how to integrate Live ID authentication with Azure web sites. Hope to see you there!

Date: 02/19/2009
Time: 6pm to 8pm
Location: Microsoft Irvine Office - 3 Park Plaza, Suite 1600, Irvine, CA
RSVP link: https://www.clicktoattend.com/invitation.aspx?code=135460