Going into the recording, I knew I would have to keep it very high level (since the format for the whole recording is < 10 mins and there are important PDC announcements first, so I was couting on 8 minutes, and it takes me 3 to introduce each speaker, these folks have too many accomplishments).
Now that I have no time constraints, here is a detailed introduction to the PDC pre-cons.
The top part of this writing is a bit of high-level reasons why you should attend the pre-cons?
Underneath that section, you can find the "inside the pre-con" planning, goals, processes, and raw session details as I see them (not as the polished abstracts describe).
What is a pre-con?
An all day training the day before PDC.
What should you expect if you attend a pre-con?
- Guidance! Actionable advise & lessons learned from industry & technology experts.
Pre-cons are only a day, so when I thought about the sessions, I made sure the topics lend themselves for the presenters to share their lessons learned, their advise both on best practices and avoiding worst practices. The motto for the pre-con from the start has been "Spend a day at the pre-con, learn some thing you can apply to your job as soon as you walk out of the pre-con!"
- Great/Relevant content:
We selected the topics very carefully to align with either PDC or the software industry. Where we have PDC sessions on the topic (like parallelism) the pre-con will greatly compliment PDC sessions; where we don't (like Agile) the topic is very relevant to the industry. Please do make sure you scroll to the 'inside' section to get the details on each session.
- Great presenters:
The line-up of presenters is pretty incredible. This was by far the highest priority for us, we wanted people who "do and teach" or "walk the walk" and I must say we got it. Here are some silly statistics for you to get a measure on caliber:
- 80% of the sessions have book authors as presenters. If I go by numbers and add up the books I average ~two books per person (and these books are top sellers!)
- 90% of the sessions have speakers that are regulars at big conferences (like PDC, TechEd, etc.). The only session that does not have 'repeat speakers' is "advanced debugging" and the reason for that is that we purposely went deep but I vouch for the speakers (have you read their book? ). If you can't take my endorsement, how about Mark Russinovich's endorsement .
- The Microsoft speakers are either Dev-Leads, Architects, or Distinguished Engineers. These are the people that "earned their stripes" and are now driving strategy; these are the kind of people I would want to get advice from.
- Huge value
The cost is $400. Most people pay that much on airfare when they fly to a $2500 training (by the same speakers). You will argue, this is one day, the $2500 is 3 or 4 days. My thoughts there: if you are coming to PDC, you are likely an accomplished software professional. Do you really need HOLs? All four day trainings have them. I think a one day session is great because it forces the presenters to prioritize, to compress. Given the caliber of speakers we have, they are not going to cut you short, they are going to figure creative ways to deliver the message and insights that matter most. This is double value for you because the price is great, and we make the most of your time.
Official abstracts and bios for the speakers at the PDC pre-con website.
Now the inside story to the Pre-cons..
There were three key tenets at the core of pre-con planning:
- I wanted it to be deep content, centered around guidance. The topics had to be interesting and contentious; when contentious was not a match (e.g. WPF or Silverlight), we went for speakers with huge experience that would be analytical and critical of the technology, folks with insightful experience both in the technology presented, the predecessor and competing technologies, and the challenges the technology addresses.
- Steve Cellini, the uber PDC owner, wanted top quality. On the very first meeting, he said "Quality is the goal! Get only the top speakers and make sure the delivery is exceptional" and when I explained to him that I needed to balance speakers due to budget he did not even blink at it, "blow the budget if you need to!" I think you will see Steve's support both in the line-up of incredibly talented speakers and in the number of speakers; a lot of sessions have two or three presenters, I firmly believe this will make the sessions more entertaining, and drive the content/guidance to a more insightful level. The few sessions that have a single speaker, it is because we felt the delivery was better with that single speaker!
- Complimentary to PDC. This was Mike Swanson's role; we wanted no overlaps and we wanted synergies with PDC sessions.
Avoiding overlap was not hard, pre-cons are focused on shipping technology and PDC sessions focus on futures; that said, on any topic covered in both pre-con and PDC, a pre-con should frame a technology, its challenges, and the current best practices, so that when you attend a PDC session on the future of the technology, you can get the most out of that topic, and put the future solution into context with the challenges and today's solution.
Selecting the sessions
I started with ~50 topics. I was all over the map, XNA, HPC, WPF, WF, Sharepoint, Live, F#, LINQ, etc. Then I mapped them to PDC tracks (sorry, afaik I can't share these but I can say there were four), for pre-con we added an extra track called "industry/fun" track; which aimed at doing some thing different from what you expect at PDC.
We quickly narrowed it from 50 to 25 by applying a rigorous quality criteria:
- Do we have enough content for a whole day? Is a day enough to grasp the topic and actually learn?
- Is this topic something commonly taught elsewhere? If so, is it relevant to PDC content? If not relevant to PDC and taught elsewhere with same quality of presenter, we skipped it.
When I was down to 20-25 sessions, we shared them with other teams at Microsoft and with an "Advisory board"; the advisory board is mostly Regional Directors; all of them trainers/influentials and community leaders. It was great to hear what they thought the community needed; it was quite different from what I was expecting, but they provided great info to back up their arguments, so we listened!
After the prioritization, we went after great presenters for each topic. If we did not find an absolute rock-star (inside or outside Microsoft ) we cut the topic.
In the end, there were still a few painful cuts. ASPX/MVC stuff, XNA, new MFC/Win32 stuff, and a few others. There was a an important goal to achieve: variety! . Some people inside Microsoft didn't get that it did not matter not to have the 10 most popular, but we needed to have some thing for everyone! I could agree that ASPX would have had more attendees than say "advanced debugging", but I needed to offer some thing to the C++ developers, and the web developers already had Silverlight, you get the drill. "Something for everyone" was maybe a secondary tenet.
The sessions themselves and the dynamics: Why the session, why the speaker(s)?
I aimed to add context to each session, without repeating the abstracts and speaker bios. Please do read those before reading the ramblings below; my thoughts below are meant to add context on why the speaker or topic, but I did not repeat the outline or objectives for each session.
- WPF ( by Charles Petzold). Despite the hype for web apps; there is still a lot of software that can't run in the browser (due to security, performance, off-line requirements, preserving an investment, and many other reasons). WPF is Microsoft's latest and richest UI framework for writing desktop applications; XAML and its declarative model are at the core of any future presentation stacks at Microsoft. Easy to see why we needed to go deep and explain the fundatmentals of WPF, and who better to present it than Charles Petzold?
Charles has written half a shelf of Windows Programming books. Two WPF books already! He is funny, he is a brilliant writer and speaker, he is very thorough and he speaks likes he sees it. Early in the cycle, I told Charles he could have unlimited access to the WPF architects -most of them were eager to work with Charles - but then Charles said in an email when discussing his abstract "if I could re-write my WPF book, I would start with ... " and there I knew it was time to leave him alone; he has clearly thought it through (end-to-end) many times.
- Silverlight ( by Jeff Prosise)-- Silverlight is a subset of WPF that brings richness, and cross-platform .NET programmability to the web; clearly a disruptive technology. No one has more experience training web developers than Jeff Prosise. He is very critical and tends to take a 'best practices' angle to his talks so I thought he would be most appropriate to introduce people to Silverlight. We could have had an MS person deliver this session, but it would have been too "blue". Jeff will bring the perfect balance of experience and insights for people to really understand Silverlight and know when and how to apply it.
- Data ( by Mike Pizzo & Jose Blakeley) -- This session topic was selected before I found the speakers. Given how rich our data programmability APIs are, there are lots of people asking for advice on when and how to use each technology. There are also people wondering if the one they are using will be deprecated, etc. My guess is that I have read > 3 books, and dozens of whitepapers and even more blog posts on our data APIs and I still could not authoritatively explain when to use each technology (and why), what best prepares me for the future?, etc. If you want the answers to those questions, you should come to this session and ask Mike & Jose! These two guys have been around since OLE DB. They are both incredibly smart and know data inside out; I doubt there is any one better to answer those questions and set you straight on the best fit for you.
- Debugging ( by Mario Hewardt and Daniel Pravat). It is a PDC tradition to have a very deep win32 session; at first I was going to skip this tradition because I had only 10 sessions and felt that the "inside the Winxx kernel" had been done enough times; but then I went back to my win32 days and remembered that despite my getting good at COM and Win32, debugging was always a challenge that I never mastered. My guess is that there are others out there in this same situation; the sad part is you never know how much more effective you can be until someone shows you, that is why the session, we need the experts to show us that it is easy. The challenge when I decided to pursue it as a session was to find the speaker for the topic. I ordered three debugging books online; when I ordered "Advanced Windows Debugging" I did not know the authors, but it was highest ranked book (5 stars). I read 1/3 of each book and it was a no-brainer that these folks were it! Then I met them and was reaffirmed that they were perfect for a debugging session: They were cautious before agreeing to do it; they had a lot of questions, and then they built a plan, and have been executing since. They also make a really great team, complimenting each other very well. I have read the book and can guarantee it will save you time next time you want to debug a problem, join the session and also save time from reading the whole book! I am sure Mario & Daniel will share their best tips at the pre-con.
- Concurrent programming and parallelism ( by Stephen Toub, Joe Duffy & David Callahan). This was a no-brainer; it is a trend in computing, it is still new and there is a lot of room for guidance towards best practices. I have seen Stephen & Joe present and both of them are great; this is one of those talks where you will learn a lot and be better prepared for actual PDC sessions; we have been monitoring carefully to make sure there is no overlaps and all the sessions compliment each other well.
- VSTS ( via Brian Randell). This session was picked early because the topic is very real-world. Lots of people have bought VSTS but don't know how to use it to its potential; I have been there myself. I went to the VSTS team and asked them to present it and they said "Brian Randell is the man for this".
I was surprised they recommended an external, but then I spoke to Brian it was obvious he is full of best practices and advise to avoid the worst practices. He is perfect for this session. After the session was announced, the VSTS team heard that the Agile session had a panel and they asked to have a panel too; Brian Harry, Sam Guckenheimer and others are coming for Q&A at the end of Brian's session. This detail might not be in the abstract.
- Windows Mobile apps ( Doug Boling & Jim Wilson). Another trend ready to boost. My guess is there is lots of people who have Windows and .NET skills that they can use on mobile, but that does not fully prepare them for mobile; you have to understand the constraints (CPU, battery,etc.) and the tools (debuggers, emulators,etc.) Doug and Jim are the two best known Windows mobile trainers. I am quite excited that we got both of them for a joint session; I know the content they are preparing is new, so any one who knows them or has seen them before, should still get a lot out of this session. This session should also compliment any other Mobile sessions at PDC.
- Agile (Mary Poppendieck and Grigori Melnik). Practical advise from the industry and from within Microsoft.
Mary brings industry experience, best practices, and a lot of insights on going to agile and sustaining it. Mary is going to deliver some invaluable advise to help you overcome the most common challenges and pitfalls. In the later part of the seminar, Grigori will share the Microsoft perspective: How our own Patterns & Practices team does it. Agile is a huge deal for the p&p team. I am excited to hear their advise. For those more 'experienced' agile practitioners, there is also a panel at the end. Peter Provost and Jim Newkirk are joining Mary & Grigori to answer all questions!
- WCF and REST (Juval Lowy and Ron Jacobs). This session will be full of great advise and fun. Juval is a probably the most recognized WCF/SOA speaker outside of Microsoft; he wrote the book on it and has spoken at all major conferences on the topic; but this time we threw him a curve: Ron is going to come and talk about REST. I am confident between the two of them we will get a good pros & cons on SOAP and REST, how these two can co-exist in a WCF world,etc. These two folks have great chemistry; I really want to see them as a team! I have seen Ron present this REST talk before, but I am sure with Juval in the room the level will be raised immensely.
- Performance in the .NET framework (Mark FriedMan, Joe Hellerstein & Vance Morrison). This session is also aiming to address a real-world scenario. .NET performance is good but with perf, there is always room for improvement; Vance has been working on .NET from the very beginning, and has been a huge part of the team that has made a lot of progress; Mark & Joe joined later, but are pretty deep into areas like thread pooling and garbage collection. I can't wait to hear these folks share their advise, I am certain there will be enough to boost the perf in your app, and to do at least three "Aha!"s during the day.. From what I have seen these 3 folks work great together, I think the session will come together very cohesively.
Registering for pre-cons.
Now that you have seen the line-up; I hope you do consider joining. It is going to be fun and enlightening. I promise!
I have to close with an FAQ that has come up several times already: if you already registered for the conference and need to change your registration so you can attend the pre-con, it is possible to do it, just email PDC2008@ustechs.com and they will help you.
If you have a suggestion for improving the pre-cons feel free to email me via the blog. We welcome all suggestions!
That is it (for now)! C U at PDC Pre-cons!