blings_9_25_cLots of great stuff came out of the keynote address at MIX this morning.  I plan to go into more detail later after I've had some chance to try out some of these bits, but I want to share what I observed this morning from Ray Ozzie, Scott Guthrie and a whole host of customers.  For full coverage, visit the official MIX website and you can see videos, interviews, screen caps and more straight from the horse's mouth.  For now, here's my take on what I saw this morning:

Internet Explorer 8

A new version of Internet Explorer was highlighted during the talk (I need one of those IE8 t-shirts, if anyone from the product team is reading this).  The focus of IE8 is around standards adoption and performance.  The beta is available today from the IE8 web site, so you can play along at home.

Some of the new features include:

  • CSS 2.1 and HTML 5 Standards Support
  • Standards Certification (they've included over 700 test cases to the W3C)
  • Performance and Reliability - performance was hard to see in the demo, but the team has been working on improving the browsing speed.  Two cool parts of this demo were showcasing the enhanced support for the Back button (more on this in a future post) and a demo of IE8 detecting and responding to network outages so that data doesn't get lost.  I can't wait to see how this plays out...
  • Developer Tools - outstanding debugging support is built into IE8 including an enhanced version of the IE Developer Toolbar that now includes full JavaScript and CSS style debugging.
  • Activities - which are code-snippets the plug into the browser to extend the functions of IE.  The example showed this morning was the highlighting of an address on a web page with a context-sensitive popup menu giving the user the option to display a map from Windows Live Maps.  This feature is going to make it really easy to plug a bunch of additional features into IE (finally!)
  • Web Slices - probably the most visually cool feature was the addition of Web Slice technology.  It's sort of like a Favorite, only it captures a "slice" of the web page, as defined by the web page author, that can be accessed at a later time.  Some examples are capturing flight information or weather information.  Unlike a favorite, the user gets updated when the content changes - favorites are static, but web slices are dynamic.

Silverlight 2

This probably got the most cheers from the crowd, which is really exciting because I know a lot of people (including me) have been waiting for this release.  There are so many advancements in Silverlight 2 that it's going to take a while to cover them all.  Luckily, I've got a few speaking engagements coming up where people are interested in hearing about Silverlight 2, so I'll have a chance to showcase a lot of that during those talks.  Anyway - here are some of the highlights (in no particular order):

  • XAML compatibility with WPF - this one hit me as a surprise, because all I'd heard up until today was that Silverlight XAML was a separate but similar subset of WPF XAML.  What ScottGu mentioned this morning was that you'll now have the ability to reuse XAML between Silverlight and WPF.  I'll definitely play with this and let you all know, but this is HUGE if it works as cleanly as it was described.
  • Rich WPF UI Framework: For those of you that weren't happy with just Ellipse, Rectangle and TextBlock, Silverlight 2 now supports simple controls like TextBox, Button, ListBox, etc. as well as advanced controls such as the Slider and the DataGrid (yep - that's right... the DataGrid).  Additionally, Silverlight 2 includes other WPF-like features including layout controls like grid and flow, data binding, templating, skinning, stying and animation.  AOL demonstrated their new Silverlight 2-based email client that takes advantage of these new controls, layouts and custom skinning through templating.  Very cool stuff...
  • CLR and DLR Support - Silverlight 2 ships with built-in support for JavaScript, C#, VB.NET, Iron Python and Iron Ruby.
  • Small Download Size - Silverlight 2 is currently at 4.38MB as of this writing.  For a cross-browser, cross-platform version of the .NET Framework that supports the DLR and rendering high-definition content, that's pretty freaking amazing.
  • Smarter Media Streaming - for all of you using Silverlight for media streaming, this is a really cool advancement.  Instead of you, the user, having to choose the "right" bitrate for the video you want to watch, Silverlight 2 will automatically adjust the bitrate based on your network connection.  If the connection is good, you'll get high quality bitrates.  If the connection gets saturated, you'll get lower quality bitrates.  The really cool part is that this change from hi-to-low quality can all happen during the course of one movie clip.  The dynamic switching of bitrates is very cool and adds a lot to the user experience of Silverlight video.
  • Advertising - this is "the way the web makes money", or so I've been told.  Expression Studio 2, specifically Expression Media Encoder 2, will support a wizard for creating advertisements out of Silverlight content.
  • Deep Zoom - those of you who've seen Photosynth or the Seadragon technology behind it will be thrilled to know that Seadragon technology is now part of Silverlight 2.  The Deep Zoom feature lets you perform amazing image manipulation with very little CPU expense over large quantities of complex images.  For an example of this, check out the Hard Rock web site and look at their new Memorabilia section - all I can say is WOW! 
  • Improved Networking Stack - Silverlight 2 supports an enhanced networking stack including AJAX, WCF, WS-* and Sockets, and supports cross-domain service access (so you no longer have to route all service requests through the hosting server). 

There are a lot of things to be excited about with the new technologies coming out of Microsoft.  Get yourself over to the IE8 beta download site and pick up your copy, and be sure to let us know how you like it.  Same thing goes for Silverlight 2 - feedback is an important way for the Microsoft Product Teams to continue to produce great software, and we rely on your input to make it so.