Scott Guthrie and Craig Shoemaker
take some time out of PDC 2008 to discuss Silverlight and highlights
from the keynote address. Scott shares about current-day Silverlight
integrations with Live Mesh, living through the Olympics and what might
be expected from Silverlight in the future.
Silverlight Outside the Browser
Hosting Silverlight (or any RIA technology) outside the browser is enabled by integrating with Live Mesh.
Live Mesh allows data synchronization and storage across different
devices between desktop, web or mobile applications. The frame and
security model available will host sandboxed applications and will work
under many different RIA scenarios.
BBC iPlayer
During the Scott Guthrie’s portion of the keynote address on day two of PDC, he introduces the BBC iPlayer.
BBC iPlayer is a mesh-enabled Silverlight application that links the
data running in and outside the browser. The "mesh-ified" experience
allows users to begin watching a video on the iPlayer website and
continue watching the same video on a mobile device – starting at the
exact point where the user left the video on the website.
Web-Enabled WPF Applications
A close cousin to the Silverlight-outside-the-browser experience is
the web-enabled WPF client application. Scott’s keynote also featured a
touch-screen WPF application called Tesco at Home.
Tesco at Home
Tesco at Home is a desktop client that proves experiences that look
great and incorporate 3D, web cams, animation and advanced behavior are
accessible today with current technologies. The most striking feature
of the application is the ability to wave a bar code in front of the
webcam and the application adds that item to your shopping cart!
Note:
Applications like Tesco’s are finally getting to the point where
"average" developers have the tools and resource to make them possible.
Coupled with the .NET development stack and a $1,500 touch-enabled
machine building applications with surface-like computing and other
advance behaviors are possible today.
Are Silverlight and WPF More Than Just a Pretty Face?
The value of the .NET platform is driving home the case that rich UI
technologies like Silverlight and WPF are good for much more than
animated logos and snazzy status bars.
A single language, a single programming model and a single set of
tools makes any investment made in the platform leveraged for creating
worthwhile applications on the desktop, the web or in the mobile space.
Case in point: the 2009 Olympics website.
Lessons Learned from the Olympics
The 2009 Olympics website is a true success story for Silverlight. The site hosted the following:
- Over 55 million unique users
- Over 3,500 video clips
- Up to 64 live streams
To add to the pressure, NBC paid $1 billion for the rights to this
17 day event. Silverlight and the .NET stack needed to be able to take
media from Beijing, China and find a way to record, encode, and
broadcast the content to 55 million people within 30 seconds.
If this project failed it would have been the end of Silverlight.
Not only was the project a success, but the website broke all
existing records of media on the web. They were able to record stats on
what was being watched, how long, at what resolution and more. The
teams knew within a day they had a hit on their hands.
"Make it Happen"
You can almost hear Scott telling his team "make it happen!" once
the project was green-lit. Development started in January 2008; the
site went live in July with the games beginning in August. The most
difficult aspects surrounding the project seemed to be the people and
project management.
Technologically a number of supporting systems are required for the
Olympics website. Each of the following elements helped ensure a
success:
- Robust CMS: A rich content management system to serve the 3,500+ videos
- Advanced Media Encoding: Redundant hardware encoders to encode live feeds for 60 live events
- Sponsorship Support: Ad markers, leading roles, mid-point insertion and delivery statistics and reports for billing
The 1.7 terabits of concurrent data access represented too much data
to push through any single data center anywhere in the world. Therefore
to support the event, multiple redundant data centers helped serve the
site’s content. (Because, you know, if a data center decides to blow up
you can’t let NBC lose their $1BB investment!)
Microsoft’s Role
While Microsoft played a supporting role to the project, (the NBC
development team built the site) Scott’s team made sure Silverlight was
ready for the onslaught of the Olympics. They carried out performance
tuning and extensive testing of the Olympics scenario.
Nail Biting moments?
With a project of this magnitude there must be one or two close
calls, right? Two days before the Olympics started a construction crew
in Chicago cut a fiber cable. A couple of hours of bouncing network
traffic around were required to keep the system up.
Silverlight Player Ubiquity Strategy
The plan to have a wide-spread install base of the Silverlight player falls under a few categories:
- Killer Content: Sites like the Olympics, Office Web
Companions, AOL Webmail, NetFlix Instant Watch and more will drive
users to install the player
- OEM Deals: Agreements with partners such as Hewlett-Packard will feature the Silverlight player pre-installed on new machines
- Auto-update: The Silverlight 1 player has an automatic
update mechanism that will help bring older player installs up to the
current release Silverlight Search Engine Optimization The Silverlight
team is looking at a number of ways to help expose Silverlight content
to search engines:
- Screen Readers: While accessibility features are built in to
Silverlight, the team is looking at enhancing the effectiveness of
using screen readers on SL applications
- Maintaining URLs: They are looking at ways to publish URLs that will bring a Silverlight application back to a pre-defined state or location
- Hints: Further applications may be able to expose “hints” to help guide search engines to the appropriate content.
What’s to Come from Silverlight?
While Silverlight applications are currently a solid base for media
and RIA scenarios, there is a lot more coming to the platform. In the
future look for Silverlight to focus more on data for line-of-business
and data-centric applications. The team is looking at ways to bring the
ASP.NET Dynamic Data paradigm to the platform as well as simplifying
n-tier remoting of data in Silverlight applications.
Open Culture: Welcome, jQuery
The recent announcement of jQuery being included with Visual Studio
was a ground-breaking milestone for Microsoft. In the past Micro$oft
has had an image of being a closed, proprietary evil beast, shunning
the world of open source software. This image seems to be increasingly
proven wrong.
What is Open?
"Being open" can take on many different meanings. Microsoft’s openness is found by their track record of engaging the following:
- Being transparent about their roadmap
- CTPs, developer previews and early-access betas
- Blogs from people inside Microsoft, doing blog and podcast interviews and the like
- Open into interoperable file formats and protocols
- Collaboration with the open source world
Is there more to come?
Now that jQuery is shipping with
Visual Studio, what other open source projects can you expect to see
Microsoft cozy up to? Well that all depends on how Scott and his team
answer the questions: What do you engage and what do you embrace?
Embracing an open source project with dedicated support and shipping
with a Microsoft product is not a decision the team takes lightly. Even
beyond the obvious technical harmonies Microsoft may find with a given
technology there still remain issues of how the group is run, legal
aspect and more. To engage with an open source project though is much
less of a commitment and will perhaps be more common as time goes on.