Though this was my second day at the event, it was actually the first full official day of the PDC, with everything fully staffed and attended. It was a packed day, with lots of great stuff to talk about. Let me start at the top.

Opening keynotes

The day started early -- it was 8am when we strolled into the Convention Center. We helped ourselves to the breakfast selection in the Big Room (I highly recommend the omelette) and then we went to the room where the keynote was held. As Microsoft employees we were asked to wait off to the side until the beginning of the presentation, to ensure that attendees were able to get a good seat in the main room. Once the keynote was getting started we went into the room and sat near the back, which was actually perfect for me because one of the main things I wanted to get from the keynote was the reaction of the crowd.

The keynotes were long -- about three and a half hours total. There was a lot of great content, however, including a lot of stuff about Windows Presentation Foundation. I was particularly excited when Jim Allchin highlighted a "vector-based composition engine" as a major feature in Windows Vista, because this is what my team does. But there was a lot of other stuff mentioned as well, including Office "12", Windows Vista search and virtual folder features, Windows Communication Foundation, "Atlas", and several other things. It was pretty much drinking from the fire hose for almost four hours. I was nearly overwhelmed with the amount of information presented, and I work there; I can only imagine what it was like for the attendees who were seeing this stuff for the first time. Thankfully, there are three more days for everybody to digest the content before they head home :-).

As for the reaction, the crowd was happy, so I was happy. There was a lot of excitement about several of the demos, but I was particularly excited about the positive reaction to the Windows Flip and Flip 3D demos, because they are enabled by WPF composition technology (yay composition! :-)).

Hands-on labs

Immediately after the opening keynotes I was slated to proctor the hands-on labs for about three hours. I was concerned about the fact that the keynotes had run a bit long, but, as I expected, pretty much everybody was at the keynotes, so when we got to the hands-on labs area we found it virtually empty of attendees (though there were several proctors hanging around). That situation didn't last long, however, as people trickled in steadily right thereafter. The slow start actually gave us an excellent chance to ease into the proctoring role. As we helped people, patterns quickly emerged: most people got in trouble because the labs are very detailed, which is good, but missing a detail often results in build errors. During ordinary development this is a normal and generally harmless occurrence, but when you are faced with a brand-new technology and a lot of new concepts at once it can be a showstopper because you find out quickly you don't have all of the context you need to diagnose the failure. So that's where the proctors come in.

Now, the good thing about proctoring is that we see people make similar mistakes, which point out trouble spots in the labs that we can sometimes improve in real-time. That means that the more people that come to the lab, the better the experience of most attendees ends up being. This feedback loop is a miniature version of what we do in a much broader way with the whole product, via CTPs, Betas, and so on.

WPF presentations

I only had one HOL shift today, so I spent the time afterwards checking out some of the WPF presentations. Now, why would I go see presentations on the technology that I already work with every day, you ask? The answer, again, is to gauge the reaction of the audience. It was especially interesting to stick around for the Q&A sessions. Today I saw Michael Wallent's presentation, entitled "Choosing the Right Presentation Technology", and Rob Relyea's presentation, entitled "A Lap around the Windows Presentation Foundation". Michael did a phenomenal job laying out the platform roadmap, which is not so much about a single platform but a suite of platforms that complement each other. Rob covered a very large number of concepts in just one hour, which was another serving from the fire hose, but it was a great appetizer to whet everybody's appetite for the fine-print details to be presented over the next few days in several presentations. I was a bit concerned that the crowd was running low on energy near the end of the day, but at the end of Rob's talk one of the attendees offered some nice positive feedback to preface a question, and the crowd showed their agreement by clapping, which was really nice to see. It's clear that we have a truly exciting set of technologies on display at this PDC.

The track lounge

It was my plan to wrap it up for the day right after Rob's talk, but before leaving I needed to drop by the track lounge to pick up a personal item that I'd stowed there earlier in the day. It took me about an hour to get my item and leave, not because it was far, or because I couldn't find what I was looking for, but because there were so many people eager to have a chat and ask questions that I couldn't get myself away. This was by far the most fun I've had in a conference, interacting one-on-one with customers who are excited about what we are building but also have excellent questions about how they can properly take advantage of the new platform without losing their previous investment. I only have one officially booked track lounge session, which is tomorrow, but I expect I'll be spending additional time in this area. As far as I'm concerned, this is where the fun is :-).

Stay tuned for tomorrow's update.