MIX07 kicks off

4/30/2007 11:40:33 AM

I'm sitting next to Tim, Dave, and hundreds of other people in the MIX07 keynote. Here's a blow-by-blow brain dump.

SilverLight + .NET = better browser-based development. Ray talks about .NET spanning different experiences, including XNA for Xbox 360 (whoo hoo!). .NET is going cross-platform with Silverlight. They did show some of this at last year's MIX but this is more of a formal announcement (i.e. it's actually shipping sometime).

Expression Studio is officially shipping as of today... MIX attendees get a special commemorative edition. (sweet)

Silverlight Streaming: companion service to Silverlight. Uses Microsoft's Storage Service, and is free for up to 4GB (!) of video storage.

The Silverlight community website (silverlight.net) is now live. (There's also http://www.microsoft.com/silverlight/ .) You can download Silverlight now, including the version with .NET support.

Scott Guthrie is a pimp. He's bringing up the folks from Netflix and Avenue A/Razorfish to talk about how they've been using Silverlight. "Unprecedented collaboration between our designers and developers." Silverlight supports VC1 encoding as well as 720p... real-time delivery for rapid start, movie browsing, etc. They're now demoing the Netflix movie player using Silverlight. Movie loads up in 2 seconds... one mouse click and it's running fullscreen. Integrated controls like chapters, interactive ratings, reviews, similar movies... all inside the the film itself. They built the first working demo in 3 weeks.

(Side note: movies are really distracting when someone is trying to present :)

They're now showing The Hunt for Red October on a Mac, still using Silverlight. The guy on the Mac has invited the other guy on the PC to watch the movie together. The movie loads up on the PC and synchronizes between the two machines. While they're watching the movie they are chatting back and forth... very cool.

Wayne Smith is now coming on board to show off Expression Studio. (More distracting video demo as he's trying to talk. :) He's loaded up Expression Media Encoder (May preview), which is a video preparation tool. It just crashed on him, but he handled it pretty well. It has an AV Compare feature where you can see the effects of compression/encoding/etc. You can even play the video and move a slider back and forth to see the quality difference live. It also has templates so you can easily output the video with a skin including controls for playback.

Expression Design is now on the screen. He's exporting his design to Silverlight-flavored XAML... not much new there. Now he's fired up a preview of Blend 2, and has directly opened the video file (including the template) from the encoder. He is now stitching the video and graphic elements together. Holy crap, he was able to reuse the Blend stuff back in Encoder... even Woody says "that's hot!"

Now Jonathan Leess from CBS Television Stations group is showing how they are bringing in user-generated content. There's a map of the US with CBS video feeds superimposed over it... most of the videos are the typical bad news you'd see at 6pm like riots, "campus massacre", etc. (heh) Now he's showing a web site for a news station, where user content will be featured on the home page. There's a list of user content (photos, audio, and video) that can be sorted, filtered, and displayed in a bunch of different ways. There is integrated advertising: the example is at an auto show and the Cadillac logo is shown in the bottom right-hand corner.

I wonder if there is a compensation model around user-contributed content?

Scott Guthrie now has some more info on Silverlight Streaming... up to 4GB of video hosted for free. You can host Silverlight applications as well as video content. http://silverlight.live.com


  • Silverlight 1.0 Beta - planned release this summer
  • Silverlight Streaming Alpha (online now)
  • Blend 2 Preview

Now more about .NET in the browser with Silverlight. The same "engine" from the desktop CLR will be shipping in Silverlight... some examples show 300 to 1000 times better performance over browser-based Javascript. It also ships with HTML DOM integration -- now you can do "AJAX" apps without wrangling with Javascript. It also includes LINQ support for flexible data support... oh mama.

Scott is now moving to the demo. He's starting off on a machine that doesn't even have Silverlight installed; it's an XP box without .NET at all. A nice logo pops up prompting to install Silverlight; one click (and a couple of confirm dialogs) and the app is running in about 5 seconds. He's showing a chess app where one side is run by .NET and the other side is run by Javascript; .NET is doing about 1.5 million nodes/sec against Javascript's 300 nodes/sec. Checkmate.

He's now showing a Silverlight project in Visual Studio. There is a code-behind (actually code-beside, Scott :) C# file. He's built a Hello-World app and is showing it running on the Mac. Cross-platform .NET on the client, in the browser... I've been waiting for this moment for over 5 years. Not only can you run code cross-platform, but you can even debug cross-machine, cross-platform -- he's set a breakpoint and is stepping through it while hitting the page from Safari on the Mac! Viewing and changing properties... many people just crapped their pants just now.

Tim has posted a nice synopsis of today's announcements. (Some of the things he's mentioned haven't actually been announced yet in the session... :)

Scott just showed a map with integrated calendar and flight itinerary info. Awesome. Drag a line between two cities, select a date range, and *poof* there's the list of itineraries.

Beau Ambur from Metaliq is now on stage to talk about TopBanana. It's a web-based video editor app built with C#, Visual Studio, and Expression Studio. Nine videos playing at once, good perf -- the whole app (not including the videos) is under 50K! You can stretch video clips out to show a range of thumbnails... very cool UI.

Last but not least, Scott's back on stage to talk about dynamic languages with .NET. The Dynamic Language Runtime (DLR) is some common functionality for implementors of dynamic languages to run atop the .NET platform. Ruby support -- IronRuby is Ruby for .NET. He's showing a Ruby demo using Textmate as the editor and hosted on LightHTTPD... no .NET on the server. Ruby, Python, JScript, dynamic VB, or languages that aren't even out yet.. you can run them within Silverlight on the browser using .NET.

The next demo is a command line interpreter in the browser. He's showing Ruby and executing code as it's typed. Method names are Ruby-ish (like wpf.load_xaml).


Bob Bowman, president of MLB.com is now on stage. They stream live games over the Web and have been doing it since 2002, although the experience has changed quite a bit over time. Their new Mosaic service can show six games at once. (Notable about his talk is he showed screenshots of their video interface instead of actually showing videos playing in the background... hint hint.) Now they are showing video, naturally fullscreen, very cool... overlaid scores, who's on base, player tracking, chat, lots of interactive features.

He just showed Silverlight running on a mobile phone. Video is playing on the phone. More crapping pants.

I need to go find a beanbag to land on... feeling woozy... too much awesomeness.


Silverlight clr!!! This is going to be amazing, amazing stuff. Thanks for the updates.