Jelle Druyts .NET Consultant
Just another ignorant weirdo from Antwerp, Belgium trying to make sense out of it all
The keynote for this year's PDC traditionally started off with a roadmap of the Microsoft platform from the times of yore. In waves of 10 years, we received new foundations to build upon:
The keynote went on to talk about the three C's of Windows Vista: Clear, Confident and Connect. Things that caught my attention in those areas were:
Clear
Confident
Connect
After touring Windows Vista, Office 12 was next up. The target of Office has always been to "Get Better Results Faster" and there sure seem to be a lot of productivity enhancements. As a fun fact, Word 1.0 had 100 commands (in the menu bars and toolbars), Word 2003 has over 1500! So with that in mind, we basically got a quick tour of Word, Excel and PowerPoint running under Vista and it truly looks wonderful.
Windows Vista and Office 12 are both scheduled for release the second half of 2006, so that's getting pretty close already. I'm actually very much looking forward to getting all this power, so I might start really using Windows Vista as my main OS. I'll keep you posted if it works out
In the second part of the keynote, Jim Allchin came out to revisit the four pillars of Longhorn as they were originally set out at the PDC two years ago (Indigo, Avalon and WinFS on top of a common Core). They still seem to be in the current version of Vista although, for a long time, I thought they were gone: Indigo and Avalon were backported to Windows XP SP2 and Windows 2003, and WinFS seemed to be postponed to Longhorn Server. Here's how they look today:
Core
Presentation (formerly Avalon)
Communication (formerly Indigo)
If you think both these features seam a little vague, I can't blame you: they weren't really explained very much yet and I'm not sure what they do exactly or how to use them (but there will be plenty of sessions to explain later this week).
WinFS
Actually, this part wasn't covered today, so I'm assuming the "Windows Storage Foundation" (wild guess on the future official name) will still only appear in the Longhorn Server timeframe.
By far the coolest new feature that was announced today is LINQ, or .NET Language Integrated Query. This means you can write SQL-like selects with filtering and sorting as first-class citizens in the C# language. I'll definitely be spending time exploring this feature but in short, it means that you can query any object that implements IEnumerable<T>. Look at Dan Fernandez's blog for more info on LINQ and a code sample. Really, really cool!
Another surprise was the return of ObjectSpaces (once again). This time, using this long-awaited Object/Relational Mapping framework looked very similar to XML serialization in some way: you can decorate your types with attributes that define their mapping onto the database and you're pretty much done.
To conclude, Don Box, Anders Hejlsberg, Chris Anderson and Scott Guthrie came out to run a lap around Vista. The demo started with Anders Hejlsberg building a LINQ query doing a cross select of the currently running processes with an ObjectSpaces-fronted database containing process description. So that was one query, in native C#, that did an in-memory join between objects and the database in a very easy and recognizable format.
After that, Don Box exposed this information as an RSS stream through an Indigo service. A custom PoxBinding stripped off the SoapEnvelope at the top and as such, just doing an HTTP/GET on the service returnd a valid RSS stream, which was consumeable from IE7 out of the box.
To go even further, Scott Guthrie made ASP.NET consume this feed through an Atlas client, which means that it was queried asynchronously and with a pretty slick UI.
Chris Anderson concluded by showing the new Avalon rendering in action to show the items in the feed through fancy 2D and 3D views with minimal amounts of code and XAML.
All in all, this was a very impressive demo, although some parts were obscure and highly customized (the PoxBinding, the special plumbing to consume the Indigo service from JScript, some of the XAML formatting, ...).
At the very end, Hillel Cooperman showed us a demo application called Project Max that was built to showcase all these different components: it's a photo-sharing app that you can actually use and download at the Project Max Homepage. Looks good!
As a sidenote, the live transcript that was running while the speakers were talking was pretty cool, especially the fact that the person typing the transcript was pretty fast but apparently not very technical. While trying to keep up with the speaker, things like WinFS were consistently transcribed as WinFX (understandeable but critical mistake in this case), RSS became RSF and lots of other small mistakes. But the funniest one was where "things like RSS" was transcribed as "things like our asses"
Anyway, that pretty much concludes the keynote. A great start for a promising conference!