Today was Bill Gates’ last public keynote as Microsoft Chief Software Architect. He spoke at the Microsoft Tech·Ed North America 2008 Developers conference and you can see a streaming version of the keynote here.

While Bill is probably not the most exciting presenter on earth, I have always been impressed and inspired by him and by his passion and his vision. I remember seeing him in an event for developers in Italy many years ago and then, like now, it was really impressive to witness how what he says affects people at many different levels.

In his keynote Bill covered a number of different topic from user interfaces to cloud services, to robotics, to the IE8 public beta, etc.

I would like to focus on the announcement that later this week the Beta 2 of Silverlight 2 will be available for designers and developers to download and start testing.

This is a significant change and improvement from the beta 1 and here is a list of the major changes:

  • UI Framework: Beta 2 includes improvements in animation support, error handling and reporting, automation and accessibility support, keyboard input support, and general performance.  This release also provides more compatibility between Silverlight and WPF.
  • Rich Controls: Beta 2 includes a new templating model called Visual State Manager that allows for easier templating for controls. Other features include the introduction of TabControl, text wrapping and scrollbars for TextBox, and for DataGrid additions include Autosize, Reorder, Sort, performance increases and more.  Most controls are now in the runtime instead of packaged with the application.
  • Networking Support: Beta 2 includes improved Cross Domain support and security enhancements, upload support for WebClient, and duplex communications (“push” from server to Silverlight client).
  • Rich Base Class Library: Beta 2 includes improved threading abilities, LINQ-to-JSON, ADO.NET Data Services support, better support for SOAP, and various other improvements to make networking and data handling easier.
  • Deep Zoom: Beta 2 introduces a new XML-based file format for Deep Zoom image tiles, as well as a new MultiScaleTileSource that enables existing tile databases to utilize Deep Zoom. Better, event driven notification for zoom/pan state is another improvement in Silverlight 2 Beta 2. 

It is important to note that Silverlight 2 Beta 2 introduces some changes that will break certain applications targeting the previous version of the beta, Silverlight 2 beta 1 (which is one of the main reasons that Microsoft recommended not using Silverlight 2 beta 1 for commercial deployment purposes). For a run down on the changes and work-arounds please visit: www.silverlight.net.

So stay tuned for the release and I really encourage anyone to go, download and play with the new beta.