Welcome to MSDN Blogs Sign in | Join | Help

PDC2008 Keynote and Session Video Links

I've posted a PDC2008 Sessions page that contains a simple list of all keynotes and sessions by title with links to each corresponding page on Channel 9. I've also made it easy to download the PowerPoint presentations and to grab any sample code the speaker has elected to provide. I hope you find it useful.

Posted by mswanson | 1 Comments
Filed under: ,

PDC2008 Session and Keynote Recordings Are Now Published

Recordings of the PDC2008 sessions and keynotes are now available online for free, for anyone (no login required). Each session has its own page that includes a Silverlight viewer to watch streaming video and a Download link for iPod (MP4), WMV, WMV (High), and Zune. A few of the sessions and formats may not be available yet, but they will be very soon, so keep checking back as we continue to publish content. It's my hope that you find the PDC2008 content to be compelling, inspirational, and useful.

You can also download the PowerPoint presentation for each session, and for some talks, a zip file containing sample code that was shown during the session. There are links to related sessions and other Channel 9 content, and a discussion thread for each talk. The discussion thread is a great way to ask questions of the speaker or to share ideas with other "virtual attendees."

Unlike PDC05, when we hosted the sessions for less than a year (with a third-party hoster), we've created a home for our PDC2008 sessions on our very own Channel 9. The obvious benefit is that we can host the content indefinitely...or at least until it becomes so stale that it's no longer useful. So, there's no need to rush to download everything, since the content will be available for a long time.

I've been asked if PDC2008 session recordings will be available on physical DVDs like they were for PDC05. We received a lot of feedback after PDC05 that attendees would rather have all of the content made available for download at no cost. As a result, this is what we've done for MIX06, MIX07, MIX08, and now, PDC2008.

Thanks to everyone for catching me during the event to say "hello" and for providing feedback. We take your feedback very seriously, and it will be used to improve MIX09, the recently-announced PDC2009 (November 17-20, 2009), and any of our future conferences.

Enjoy!

Update: I just added a PDC2008 Sessions page that lists every keynote and session with links to videos, PowerPoint decks, and sample code.

Posted by mswanson | 4 Comments
Filed under: ,

PDC2008 Downloadable Master Session List

Only three more days before PDC2008 kicks off in Los Angeles. It's hard to believe that the big event is almost here! If you won't be able to join us at the conference, be sure to bookmark www.microsoftpdc.com and watch the first two keynotes streamed live. Keep checking back for news, announcements, and video recordings of each session.

Many of you have already used the new timeline view to add sessions to your own personal agenda. As an aside, did you notice that you can click on a time to "zoom in" to the content? It definitely makes the longer session names easier to read. For those who prefer to download an electronic version for offline viewing, I put together a 14-page PDC2008 Master Session List (link removed, see update below). Apologies in advance for the font size I had to use for the abstracts, but without the smaller font, the document was already over 23 pages long.

While I have your attention, also be sure to pick up printed session change lists that we'll make available at registration starting on Monday. We try to minimize changes to the schedule, but they inevitably happen (new sessions are revealed, repeats get scheduled, speakers get sick, etc.). The online version will always be up-to-date, so if you're ever unsure, browse to the timeline view from your laptop or one of the many machines we'll have scattered around the convention center.

Last, if you're mobile, you might prefer to use the mobile version of the site. See you soon!

Update: Because the downloadable session list was becoming more and more incorrect as the days went on (due to cancellations, reschedules, new sessions, etc.), we've removed it to reduce confusion.

Posted by mswanson | 5 Comments
Filed under:

Send Me Your PDC Video

In a little over a week, we'll be holding an all-hands meeting for Microsoft employees who are attending PDC2008. It'll be a huge meeting with many hundreds of people, including the core team, virtual team, content team, speakers, staff, and anyone else who plans to be at the event. I've been asked to lead the meeting, and I'd like to help my fellow employees appreciate the amazing passion, excitement, intelligence, and creativity of our PDC attendees. That's where you come in.

I plan to show some of our registration data, but I'd really like to show your faces and hear your words. I figured that a short video would be the best format. That way, I can include a few of them to represent the diversity of our audience and get everyone excited. Who knows? If we get enough, perhaps we'll even play a few while people are filing in to the keynotes at the main event in Los Angeles. :-)

If you're up for it, here's what I'd like:

  • A very short video (so I can show a few of them). Ideally, 15-25 seconds in length.
  • Talk into the camera and be as creative as you'd like with the background (perhaps a landmark from where you're from or something fun in your office).
  • Here's the beginning of your script: "My name is [your name] from [location]." The rest of the script is completely up to you.
  • Tell us something inspiring, interesting, fascinating, historical, or whatever related to you and the PDC. It can be past PDCs or PDC2008. You pick.
  • It doesn't matter if you've never attended the conference. If you still have a story about PDC, like why you wish you could attend, what you're excited to hear about, or perhaps why you can't attend, I'd love to hear it.
  • Encode it to a WMV or AVI file, and host it somewhere I can get at it.
  • Send me an e-mail telling me where/how to download your file, along with your full name and mailing address.

I'll let you know if I use your video at the meeting. Thank you in advance for your help!

Posted by mswanson | 1 Comments
Filed under:

PDC2008: A Day in the Life #7

The first full week of PDC2008 dry-runs is complete! If you're not familiar with our dry-run process, take a look at PDC2008: A Day in the Life #6. The on-campus dry-runs continue through this Thursday. After that, we have a little over a week to make final edits before the big event in Los Angeles. The photo to the right is one of the sessions we ran yesterday morning.

I was sitting in a dry-run of Larry Osterman's session, Windows 7: Building Great Audio Communications Applications, and it hit me. I've been so heads-down focused on producing content for the event, that I had completely forgotten that this is the %&@# PDC, man! There I was...sitting in a session...listening to Larry Osterman, a guy who's been at Microsoft for a long time. At prior PDCs when I was an attendee, I probably would have run up to the stage after Larry's talk to gape in amazement at his knowledge and expertise. How fortunate am I to actually work on the content for such an amazing event!? Wow. Sometimes, you just have to slow down, step back, and appreciate your situation. Thank you, world!

On another topic, I've mentioned session recordings in a few prior posts, but I've never really explained what we do with them. The amazingly talented Brian Keller, one of my Developer & Platform Evangelism (DPE) colleagues, is responsible for recording every single session at PDC2008 (except for the pre-conference sessions) and publishing them for your viewing pleasure. Watch the recent This Week on Channel 9 episode (or is it?) for the details in under 10 minutes.

So you can view the content as quickly as possible, we publish each session within 24 hours of its completion. The recording includes the PowerPoint presentation, any demos that were shown, audio, and video of the speaker. I grabbed a screen shot from our MIX08 recordings to give you an idea of what they look like.

This year, each recording will be hosted on Channel 9 along with a bunch of related links and a discussion thread. You can use the thread to suggest topics or questions that the speaker may incorporate into their talk or discuss the session after the video is published. Oh yeah...the recordings are completely free to anyone and available in a variety of formats. No login required.

Next, we made a decision earlier in the week that I hope you'll notice at the conference. At the Los Angeles Convention Center (affectionately known as the LACC), we have 15 primary session rooms that are available during 18 time slots (15 "normal" time slots + 3 over lunch). When we plan the master agenda (which was locked-down just yesterday), we traditionally try to predict expected attendance for each session and match it to an appropriately sized room.

Below is a diagram that shows the 15 rooms (whose relative sizing is correct) across three representative time slots. You'll notice that for time slot 1, only 9 of the 15 rooms have been scheduled. Time slot 2 has 11 sessions, and time slot 3 has 10. Notice, though, that there are rooms that remain empty.

  

The challenge is that it's very difficult to accurately predict attendance. This year, we're using the My Sessions data that over 55% of you have provided, and that helps a lot (thank you!). Still, there are products and technologies that won't be announced until the keynotes, and there's no way to confidently gauge interest in them until we see people filling up the rooms. By then, it can be too late.

At the event, when we get close to filling a room, we route the audio and video of the presentation to one of six dedicated overflow rooms. The overflow rooms are even smaller than the 15 primary rooms, but they allow us to quickly "add more seats" so that you don't miss the session. Overflow situations are never ideal, and if the overflow room fills up, we then have to decide if we want to repeat the session later in the week.

Attendee surveys tell us that sitting in an overflow room is never as ideal as sitting in the primary room (there's still something about being in the same room as the presenter). We also get feedback that packed rooms are less comfortable to sit in. From my experience, I prefer to have an open chair next to me for my backpack or laptop, and frankly, sometimes you just need a little more personal space. You know what I mean. :-)

This year, we're going to try an experiment. Instead of leaving rooms empty and risking more overflows and repeats, we decided to "slide everything to the left" so that we use all of our biggest rooms.

This configuration should help us accommodate as many people as possible in each session while minimizing overflows and repeats. I sincerely hope that this improves your overall PDC2008 experience.

The downside is that some of the sessions that would normally be in smaller rooms will be in bigger rooms. In some cases, the larger room may cause the session to appear relatively empty...even with hundreds of people present. I know this can affect speakers, and I'm sure that many of them will be worried about filling-up their session (my apologies). Fortunately, to my knowledge, we've never received negative feedback that "the room was too big, and I didn't have enough space to stretch out."

So, if you attend PDC2008 and don't like the larger rooms, please let us know. We always listen to your feedback and are willing to adjust for our next event (which is MIX09, by the way).

Only 15 more days!

Posted by mswanson | 3 Comments
Filed under:

PDC2008: A Day in the Life #6

Today was our first day of PDC2008 dry-runs on campus. To present a session at the conference, all speakers are required to rehearse their session in front of the content team and a handful of their peers. This is in addition to the proposals and outlines that are part of an earlier vetting process. It's one of the many methods we use to ensure that the content is both relevant and accurate.

During dry-runs, Microsoft employee feedback can be very direct. Thankfully, it is also honest and respectful. Ideally, the feedback leads to much stronger sessions that provide more value to attendees. With over 200 sessions, we'll review more than 240 hours of content in the coming weeks. Today's dry-runs included one session that needs a lot of work (or we may cut it), a handful of very good sessions that should be in great shape by the event, and two standout sessions that are fantastic as-is (though we still gave feedback to make them even better). I have to admit that one of the two standout sessions was unexpected, but I like good surprises!

On another note, the final version of our master agenda is due this Wednesday, October 8th, which means that we'll know the dates, times, and rooms for each session. We'll update the public web site next week to include a timeline view that you can use to manage your personal conference agenda. This should be good news to everyone who has sent e-mail asking when this information would be available.

I want to thank everyone who created a personal My Sessions list! Almost 55% of our attendees took the time to select sessions that they'd like to see at the conference, and as promised, I've used the data to (anonymously) generate a master agenda that should enable you to attend as many sessions in-person as possible. Overall, pending a few manual tweaks we'll make over the next two days, you should—on average—be able to see over half of the sessions you selected. Interestingly, the average My Sessions list contains 21 selections, even though there are only 18 time slots during the event.

For those who are curious about the genetic algorithm part of the process, I've included a graph of run number 19, which is only significant, because it was the master agenda with the lowest overall cost/highest fitness. The cost axis measures how good the agenda is with zero being "perfect." With the number of factors involved, it's highly unlikely that a perfect solution exists. You can see that the solutions started leveling out around generation 45 and stopped after generation 75.

Some have asked which factors are considered by the algorithm. Here's a list of the major factors that influence the overall cost/fitness value of each solution (each solution represents a possible PDC2008 master agenda):

  • Solutions that schedule deeper sessions (Advanced/Expert) after their corresponding introductory (Introductory/Intermediate) sessions are considered better. We refer to these as priors.
  • Solutions that place sessions into rooms that can accommodate their expected attendance are considered better. Any room that exceeds its maximum capacity during a run is severely penalized.
  • Solutions where overall room attendance is "balanced" are preferred. This prevents the algorithm from filling 1% of a room that can hold 2,000 while filling 98% of a room that can hold 500 people. This helps prevent unnecessary overflow situations during the event.
  • Solutions that schedule the same speaker more than once in a single time slot are considered terrible and are given the maximum possible cost (Int32.MaxValue in my case). They don't survive the early generations.
  • Solutions that schedule sessions before their product/technology is announced are severely penalized. We refer to these as holds. For example, we don't want to schedule a session on Windows 7 until after the appropriate keynote.
  • Solutions that allow attendees to see more of their My Sessions in-person are considered better. The algorithm actually iterates through all My Sessions lists for each solution and "schedules" each person in a room.

There are some smaller factors, but these are the key differentiators. It's rare that the smaller factors ever come into play in the grand scheme of things. With C# code that is not optimized, each run of 75 generations takes around 25 minutes on my recently-purchased 2.66GHz Intel Core2 Quad CPU (Q9450). I usually let it run multiple times overnight to compare best solutions.

While we've put a lot of effort into making a fantastic master agenda, don't worry if you can't make all of your sessions in person. Like we've done for our MIX events, a video recording of each session (other than pre-conference sessions) will be published within 24 hours of its completion for anyone to stream or download. How cool is that!?

Hope to see you at the event!

Posted by mswanson | 3 Comments
Filed under:

PDC2008: A Day in the Life #5

I have an internal PDC2008 gadget running in my Windows Sidebar, and it reports that there are only 25 days remaining before the big event. In "event time," that seems like tomorrow! I'll probably go to sleep tonight and wake up in the Los Angeles Convention Center. I'm not sure if I'd consider that a dream or a nightmare at this point. :-) There's still a lot to do!

My days are packed with PDC2008-related meetings (and some MIX09 meetings, if you can believe it). Last night, we published 25 brand new sessions, and here are a few of the highlights:

  • Miguel de Icaza is presenting a session titled Mono and .NET. It's great to have Miguel present at PDC!
  • We announced a handful of sessions from Microsoft Research, including Designing the World Wide Telescope by Jonathan Fay and another called Contract Checking and Automated Test Generation with Pex. Parallelism and concurrency are hot topics this year, and Concurrency Analysis Platform and Tools for Finding Concurrency Bugs should be extremely useful.
  • A languages panel is starting to become PDC tradition, and this year, we've assembled a panel of experts for the ambitiously titled The Future of Programming Languages. Not only will you hear from the top language designers at Microsoft, but we'll have a number of industry luminaries too. This is always a very popular session.
  • Microsoft .NET Framework: CLR Futures with Ian Carmichael and Joshua Goodman should appeal to anyone interested in the future of managed code development.
  • Learn about where the Windows Presentation Foundation is headed with Kevin Gjerstad in WPF: Futures.
  • To see how our MIX Online Team has made it easy to work with Microformats, be sure to attend Oomph: A Microformat Toolkit by Karsten Januszewski.

On a related topic, you may remember the post I did awhile back called PDC 2008 Conference Scheduling Using a Genetic Algorithm. Well, the time has finally come to feed the algorithm some real data and generate a master agenda that enables you to attend your favorite sessions in-person. This is a bit of an experiment for us this year, and I need your help to make it work.

Please take a few minutes to sign in to the PDC2008 sessions page (the Sign In button is in the upper right corner), and add sessions that you plan to attend to your My Sessions list. You can either check the box next to each session or click the Add to My Sessions button. If you've already done this, I'd ask you to review your list, since we've added a lot of new content over the past month. Note that by adding sessions to your list, you are not committing to anything; you're always free to attend any session you'd like. The more data you provide, the better we can generate a master agenda that helps you get the most out of your PDC experience.

Last, I want to point out something that Adam Kinney is coordinating this year called PDC Badges. The PDC2008 badge holders have two slide-in pockets on the front. The top pocket is where your name shows up, but the bottom will accept a standard business card...or anything business-card-sized (the imagination wanders). By the way, why do I always think of badgers when I talk about badges?

We'll provide a "default" card and coordinate some special achievement cards that you can collect throughout the event. An example might be, "I met Mike Swanson," though I'm not sure that'd be much of an achievement. :-) The idea is that they're unique, cool, limited, and fun to collect. You can keep your current-favorite card in the front—prominently displayed—while the lame and embarrassing cards are hidden from view.

The cool part is that you can print your own badges and bring them to the event. Think of it as a way to tag yourself. While you can certainly use any vendor you choose to print the business cards, I've had great luck with MOO (I've posted about their MOO MiniCards before). You can upload as many as 50 different designs for orders of 50 or 200 business cards. Their prices are good, and the quality is high.

Well, that's about it for this post. I'm not sure how many more posts (if any) I'll sneak in before PDC2008, but if you're planning to attend the event, stop me and say "hello" as I run down the hallways. I love meeting my readers face-to-face!

Posted by mswanson | 6 Comments
Filed under:

More Bits, Windows 7 Sessions, and Keynote Speakers for PDC2008

As promised, we published 17 additional Windows 7 sessions this morning. If you were wondering how much you'd hear about Windows 7 at this year's Professional Developers Conference, you now have the answer: a lot. A few of the session descriptions simply say "TBD"...and that's not because we're unsure about what we plan to talk about. ;-) I can tell you that we have even more sessions that won't be published until the event itself.

If that's not enough, we're also giving every attendee a pre-beta copy of Windows 7. Yes, you heard that right. You'll be able to install your own copy of Windows 7 and play with it on your hardware. This is a very limited release, and PDC2008 attendees will be the first to get it. Gotta love the PDC!

Finally, we announced a bunch of new keynote speakers, including Steven Sinofsky, Scott Guthrie, Bob Muglia, and David Treadwell. This is a powerhouse lineup, and they have a lot of exciting announcements to make.

Only one month to go! Please keep your hands and arms inside the ride at all times, and remain seated until the ride comes to a complete stop.

Posted by mswanson | 6 Comments
Filed under:

PDC2008 Hard Drives, Services, Windows 7, and More

It's going to be an awesome PDC2008, baby! Before you read the rest of my post, watch this short 4 1/2 minute video that we published this afternoon on Channel 9 for some helpful context. Please forgive my super-reflective forehead...I still remember the "oily" result from when my mom had me fill out a Mary Kay skin type questionnaire when I was a kid.

To start, I get a lot of questions about the overall theme of this year's conference. We've published nearly 140 sessions already, we'll publish many more on Windows 7 later this week, and even more will be published on October 1st (oh, and we'll have a few super-secret sessions that can't be revealed until after the keynote announcements at the event). But what will the catch phrase be for PDC2008? Like we've had "the Longhorn PDC" and "the .NET PDC" of years past, this year's event is all about Software + Services.

For developers and architects who have been around for awhile (have you noticed my gray hair?), the "software" side of Software + Services is the easiest to understand. It's the software that you develop for installation on a PC or device that leverages local computing resources like memory, computation, and storage. Or, it's the software that you build to run on a web site...or maybe even a background process that runs on a server in your company's data center. It can take many forms, whether you're developing using Microsoft platforms and tools, managed or native code, or even software that's built using competitive technologies.

You're probably also familiar with "services." Perhaps your software calls a third-party web service to help track shipments. Maybe it provides data to be mapped with one of the online mapping sites, or maybe it uses something like SQL Server Data Services to store information online. Regardless, some of the work is performed elsewhere using other computing resources. Like a traditional service industry, you pay for the services that are provided (that is, unless they're free).

The combination of software plus services allows you to architect and build software that uses local computing resources where it makes sense and to call remote services to take advantage of additional scale, computing power, storage, location, redundancy, and more. Of course, there will continue to be software that runs completely on local devices, and there will be new kinds of software that run completely as a service...or "in the cloud," so to speak.

At PDC2008, we'll announce some strategic bets that Microsoft believes will shape the future of software and services and explain how you can take advantage of these new opportunities with our help. I have to admit that I was initially skeptical that services, cloud computing, and utility computing would represent a significant shift. But, now that I've wrapped my brain around the possibilities, and I've seen what can be accomplished, I personally believe that this is the start of a new and exciting chapter in our industry.

On another note, we announced today that every attendee will receive a cool, PDC2008-branded, 160GB external hard drive loaded with software! As far as we know, this is the first time that external hard drives have been given out in such large quantities at a conference (8GB thumb drives now seem so yesterday). I don't know about you, but I'd love the drive even if it were blank! The fact that we're loading it with geek candy makes it all the better!

Last, if you haven't been following our weekly Countdown to PDC2008 show, they're all tagged PDC08 on Channel 9. Each episode is 10 minutes or less to respect your time.

I hope to see all of you at the event!

Update: Colleague Tim Sneath also posted on these topics today.

Posted by mswanson | 6 Comments
Filed under:

Update on My Illustrator Plug-In and Flash to XAML Conversion Tool

Just over three years ago, in July, 2005, I released the first version of my Adobe Illustrator to Avalon/XAML Export Plug-In. The plug-in started off as a weekend project, and it’s since become quite popular. The plug-in is included in most WPF and Silverlight books, and it’s fun to see it referenced when I’m thumbing through new releases at Borders or Barnes & Noble. I hadn’t been watching the download stats, so I checked tonight and was surprised to see that it’s been downloaded over 75,000 times (actually a bit more, but the stats aren’t complete). Even if I only counted the most recent release, that would make it a top download on CodePlex. That’s pretty cool.

I receive e-mail about the plug-in almost every other day, and here are the most common questions and their answers:

  • Do you plan to update the plug-in?
    Unfortunately, my role has changed within Developer & Platform Evangelism (DPE) over the years, and I no longer focus on WPF, Silverlight, or XAML. As such, it’s unlikely that I’ll have the time to update the plug-in.
  • Do you plan to release the source code?
    While releasing the source code has been my goal since day one (actually, even prior to its first release), there are many complicated reasons why I can’t. I’m not happy about it either, but it is what it is.
  • Does it run on a Mac?
    No. I have nothing against the Mac, but I’ve never owned one, and I’ve never done any Mac development. Sorry.
  • Why doesn’t it do _____?
    Most of what it can or can’t do is listed in the Features grid on the plug-in page.

A colleague pointed me to Hanselminutes Show #120. Jump to 17:34 to hear Felix describe his workflow. Here are some of the juicy quotes that help to validate why I created the plug-in in the first place:

“Every designer knows Photoshop and Illustrator inside out.”

“That Illustrator plug-in has been available to me and I use it—I say—daily.”

“It’s unbelievable. It’s such a vital tool.”

It’s great to hear this from someone who uses the plug-in on a daily basis, and frankly, his feedback has motivated me to think about updating the codebase. No promises, but you never know. :-)

By the way, if you’re looking for an Illustrator tool that you can extend, check out the XamlXporter for Illustrator project on CodePlex.

The other XAML-related tool I’ve written is called SWF2XAML, and it was first released in November, 2006. Compared to the Illustrator plug-in, SWF2XAML has a much more complex codebase. SWF2XAML will open a Flash file (SWF), parse structures from the file format, generate a frame of data, convert it to WPF, and display it in a window. The XAML can then be exported for either WPF or Silverlight use. As a convenient side effect, embedded bitmaps are also automatically exported.

According to the stats, SWF2XAML has been downloaded over 42,000 times, and its most recent version alone would dethrone the Illustrator plug-in (if it was hosted on CodePlex, that is). Again, I’m amazed. It’s been referenced in recent WPF and Silverlight books, but it isn’t as pervasive as the Illustrator plug-in.

There are three questions I receive frequently for SWF2XAML:

  • I receive the following error message: “Input string was not in a correct format.” What’s up?
    This is a known bug that occurs when the numeric format in Windows is set to a non-United States format (i.e. 123.456.789,00). The workaround—while inconvenient—is to change the Regional Settings in Windows to use English (United States). This seems to do the trick every time.
  • Do you plan to update the tool?
    Same answer as the Illustrator plug-in, I’m afraid. :-(
  • Does it convert animation or sound?
    No. While it could be extended to convert animations and sound, it was built to recover static assets from SWF frames and convert them to XAML. For many, once the assets are converted, they can be used (and even re-animated) in a XAML tool of choice. Many large web sites have used SWF2XAML to convert their Flash assets to XAML for use with Silverlight.

If you want to know how to read a Flash file (SWF) with C#, check out my Example C# Code for Reading Flash (SWF) Files. For insights into how the Flash shapes are parsed and converted to XAML, check out Converting Flash Shapes to WPF. Last, I encourage you to experiment with another tool that converts Flash files—including both animation and sound—called theConverted – Swf to Xaml Converter (the Samples page has some good demos).

Thanks to everyone who has used these tools over the years! I’ve really appreciated the suggestions and feedback I’ve received, and I’m very happy to hear that they’ve helped you be more productive.

Update: Robin Debreuil, creator of theConverted, points out that he has recently added the project to CodePlex. Thanks, Robin!

Posted by mswanson | 3 Comments
Filed under:

PDC2008: A Day in the Life #4

So soon after A Day in the Life #3, you ask? Indeed! There are a few questions that I get over and over from people both internal and external to Microsoft, and I thought I’d address them in a blog post.

Question #1: “I’m a third-party speaker (or ‘I know a third-party speaker…’) who has spoken at other events that would make a fantastic speaker at PDC. What can I do?”

I get this one almost every day. Sometimes, they suggest a specific topic, and other times they say that they’re quick learners who can present on any topic, and if we have a session without a speaker, they’d likely be the perfect fit. While I honestly appreciate their enthusiasm and interest, the nature of PDC content makes it extremely difficult for anyone who didn’t actually architect or build the product or technology to authoritatively present.

As you may recall from A Day in the Life #2, PDC is not an event where we provide training on today’s technologies (except in our pre-conference sessions). PDC content is organized around top-level themes, and the content is selected because it aligns with those themes. Because PDC is where we lay out the future of the Microsoft platform, most of what we talk about is in the future. So, the content frequently falls into one of two categories:

  1. The product or technology won’t be announced until the PDC. We’ve introduced and launched a lot of technologies at prior PDCs, and you can bet we’ll do it again this year. Needless to say, there are usually only a handful of people who know about and understand the details of a new technology, and they’re inevitably members of the product team. It’s a reality of the situation.
  2. The product or technology has previously been announced and possibly covered at other events like Tech·Ed or MIX. In this case—and so we don’t simply repeat content that’s already out there and is possibly more appropriate for those events—we do it “PDC style” by going super deep. A good example from a previous PDC was a session that spent 75 minutes starting from a simple C# “Hello World” application, to how it was JITted to native code, to an exploration of the actual memory layout, to final output on the screen. For PDC2008, a good example would be Deep Dive: Building an Optimized, Graphics-Intensive App in Silverlight where we go under the covers on geeky topics like layout, rendering, and media pipelines. As you can imagine, there are very few people who can deliver this kind of content.

As a result, it’s rare for third-party speakers to present a breakout session at PDC. Occasionally, presenters will invite third-parties to speak about their experience with a technology, and when we have panels, there are almost always third-parties involved. And third parties help us deliver fantastic pre-conference sessions.

It’s interesting to note that third-party speakers are absolutely appropriate (if not required) for Tech·Ed and MIX. In those cases, though, it makes perfect sense given the type of content presented at those events.

Question #2: “When is the ‘call for papers?’”

Like #1, I get this question a few times each week from both internal and external folks. It’s a great question, and it makes sense given the fact that PDC is the Professional Developers Conference. Most conferences do have a call for papers (or CFP), and it’s not obvious why PDC wouldn’t have the same mechanism to gather content.

If I again refer back to A Day in the Life #2, the fact that we start with top-level themes and work our way “down” may explain why we usually know what content we’re looking for. It’s a question we ask ourselves as part of the first step in planning a PDC. However, because we’re not perfect by any stretch, we do have an internal Session Suggestion Box which is similar to a CFP in concept. It’s implemented as a SharePoint list, and anyone inside Microsoft can contribute a session idea. We just recently closed the Session Suggestion Box to new submissions. There are some fantastic suggestions on the list, but unfortunately, many of them have little to nothing to do with the future of our platform.

Question #3: “What are your tracks?”

Tracks are like mini-conferences that run in parallel. Each track typically covers a unique set of topics, and they can be helpful when building a master agenda for the conference. At PDC05, for example, the six tracks were: Presentation, Data, Communication, Fundamentals, Tools and Languages, and Office System. For PDC2008, we have four internal tracks that we use to organize the groups that assemble the content, and the tracks were selected to ensure that various organizations within Microsoft work together. However, we don’t believe that the internal track names will make any sense at all to attendees (without education), so we’re going to align our topics by technology…very similar to how we’ve tagged the content by technology in our session list. There are other conferences that are very interested to see how this “no tracks experiment” works out. Let’s hope it works well!

Last, I’ve thought about using one of our sessions for a PDC feedback discussion. While we do surveys before, during, and after the conference to gauge your feedback, there’s nothing like a face-to-face chat. Would anyone actually attend? Does this sound like a good idea? Is it worth “giving up” another session to do this? If you have suggestions, please leave feedback or contact me directly.

Until next time…

Posted by mswanson | 0 Comments
Filed under: ,

PDC2008: A Day in the Life #3

Before I forget, be sure to check out the latest videos on Channel 9 in our weekly Countdown to PDC2008 series (or just look for anything tagged PDC08). The 10-minute-or-so shows are fun to make, and Jennifer and I would love your feedback, questions, and suggestions. Plus, we’ve been introducing a new Hard Hat Challenge on each episode, and winners receive a very limited edition PDC2008 t-shirt. Note that these are not the official event shirt (especially, since the event shirt hasn’t been selected yet)…these are the shirts we give to the internal Microsoft team.

Okay, let’s get to A Day in the Life #3. I’d been thinking about possible topics for this third installment when the obvious answer popped into my head. How about a literal diary-style account of an actual day at work? It might seem a bit mundane, but it would truly be in the spirit of the series. So, let’s give it a go.

To start, there’s nothing abnormal or atypical about this past Thursday, August 14, 2008. It was the day I had the idea to write this post, so I jotted down an outline of my day and started filling in some of the details. Unfortunately, there are some details that I can’t share, and I hope you’ll indulge a bit of obscurity.

Like clockwork, I almost always wake up one minute before my alarm is set to go off at 7:00am. It takes me about 30-40 minutes to make myself presentable, and I drive from my home in Sammamish, WA to the main Microsoft campus in Redmond. On the way, I stop by Peet’s Coffee & Tea and pick up a large, non-fat latte. I usually arrive on campus around 8:15am with coffee in hand and head to my office in building 18.

Since this was a Thursday, my first order of business was to put together a slide deck for my two-hour PDC2008 Track Team meeting. I have Track Team meetings every Tuesday and Thursday morning for two hours all the way until PDC2008 in October. The team focuses on PDC content, and we have about 30 members from across the company that actively participate (there are many more on supporting virtual teams, but I don’t interact with them as frequently).

While preparing my slides, Steve Cellini, our General Manager (“GM”), popped-in to my office and asked if I could make a last-minute 10:00am meeting with Technology X (apologies for the obscurity). Unfortunately, without me, there isn’t anyone to run my track meeting, so I asked if he could move the meeting to 1:00pm and cancel the other meeting already occupying half of that time slot. An unfortunate side effect of this reschedule was that I would lose the only “free” 30 minutes of my day. Oh well. I like working on stuff I love!

For the morning track meeting, I had prepared a Wordle of August PDC2008 content for my slide deck. Fellow friend and evangelist, Thomas Lewis, had pointed me to Wordle awhile back…and it’s addictive! It basically takes words, counts how many times they appear within text, and creates a “word cloud” that represents the relative frequency of each word with its font size. Because Wordle doesn’t perform stemming, and because I wanted our technology and product names to be counted as single units, I wrote a small application to “fix” some of the word duplication and generally clean-up the cloud (i.e. “Visual Studio” instead of “Visual” and “Studio”). Here’s the result of running the current list of titles and abstracts from our PDC2008 sessions (note that we’ve published less than half of the sessions we’ll ultimately have at PDC2008, so this word cloud will change as we get closer to October):

 

I was very happy to see that the word cloud didn’t reveal any surprises. Indeed, we use the words Microsoft, application, learn, new, and service very frequently. And as a matter of fact, those words do a pretty good job of summing-up the kind of content we’ll have at PDC2008. As I mentioned, other words will “pop” as we reveal more of the unpublished sessions over time (there’s that obscurity again). :-)

I also pulled data for the top 10 sessions based on the number of people who have added them to their My Sessions list. Without revealing the whole list, it shouldn’t surprise anyone that The Future of C# by Anders Hejlsberg is tracking at #1. Anders is always a highly rated speaker, and I’m sure that this session will be packed. By the way, if you haven’t added your favorite sessions yet, please do. It’ll help me create a master agenda that allows you to see more of your favorite session in-person. Thanks in advance.

I didn’t think I’d be able to make a 9:30am meeting with Technology X, and I had marked myself “tentative.” But, I finished my meeting preparations in time and ran to the conference room. Thank God it was in the same building. We had a productive discussion about PDC2008 sessions, and I had to leave a few minutes early to start my 10:00am Track Team meeting.

Our Track Team meetings generally start at around 10:08am, because it takes that long for many of the attendees to find parking and make it up to the conference room. Most of them come from other building across campus. Topics of the Thursday meeting included:

  • General registration update – I quickly cover how registration is doing overall, and we touch on what percentage of attendees have signed-up for pre-conference sessions.
  • A reminder that internal employees need to sign up soon – we have internal deadlines too. :-)
  • A reminder that our internal Session Suggestion Box would close at end-of-day Friday – this is an internal SharePoint list where anyone inside the company can recommend sessions that we should consider for PDC2008. It’s quite a list.
  • A reminder that the team needs to identify their Lounge Owners - these are the people who are responsible for making sure that the right experts are staffing the Lounge and Hands-on Lab areas at the event.
  • An update on lunch sessions – nothing obscure here…these are the sessions that happen during lunch.
  • A discussion about the Microsoft Pavilion booths and the Lounge layouts - we decided to include an additional monitor in each Lounge for demos
  • The aforementioned top 10 session list

We had planned to review the status of our Hands-on Labs and talk more about staffing, but around 11:15am, an unscheduled fire alarm very rudely interrupted us, so we all picked up our laptops and filed outside…into the bazillion degree temperatures we had in Redmond on Thursday. We met in small pockets as we waited to return to the wonderful air-conditioned building; some of us talked about our ideas for a PDC2008 poster and others brainstormed about the best way to track staff. I was sweating the whole time. Because we were getting near the end of our meeting time, we decided to call the meeting and follow-up via e-mail.

A bit before noon—when we were allowed back into the building—I ran into Steve Cellini in the hall, and we quickly debriefed on the 9:30am meeting that I had with Technology X. Henry Hahn, one of our Track Team members, happened to still be around, and he joined us to report his perspectives.

At noon, and without lunch (my wife doesn’t like it when I don’t eat…and neither do I), I ran to a meeting about MIX09. For those that don’t know, the Evangelism organization at Microsoft is responsible for both our PDC and MIX events. We talked about the questions we want to ask on the registration form you use when you sign-up for the conference. If you can believe it, the fire alarm went off again…yes, again…and I was in the same conference room as before! So, we all went outside and continued the meeting in the shade. To help us better dial-in the content at our events, we try to track the kind of attendees we get, and we never seem to be completely happy with the prior year’s taxonomy. In other words, each year, we try to do better. This meeting was to discuss exactly how we do it. We think we’ll ask about tasks instead of having everyone put themselves into pre-defined buckets (like Developer/Designer/etc.). A lot of people have blended skill sets, so this sounds like a good idea to me.

I had to leave the MIX09 meeting early to travel to another building on campus for a 1:00pm discussion on Technology X. We talked about how we got to where we are and what we needed to do for our next series of steps. This meeting was all about PDC2008 preparation, and we talked about keynote presence and the amount of content that we could feature given our current session budget.

We then drove back to building 18, and I had about 20 minutes before a few of us had to leave for a meeting in yet another building. With laptop in hand, I never made it back to my office. Two people stopped me in the hall and pulled me into their offices for questions related to PDC2008.

So, at 2:30pm, I went with a few people to another building to talk about the long-term strategy and reveal plans for Technology Y (obscurity again, but a different technology this time). We discussed long-term roadmaps, upcoming features, core messaging, overall concerns, how we would address specific business problems, and how we could feature Technology Y at both our PDC and MIX events and within Evangelism overall. It was an inspirational talk with one of our great Vice Presidents.

By the time we returned to building 18, our weekly PDC2008 Core Team meeting was already underway, and I joined about 15 minutes late (I hate being late). The team was already talking about wireless network coverage in our big keynote room, some quotes we had received, concerns about obscuring views with wireless “towers,” etc. Like a NASA launch, we continued with things like registration status, marketing status, content status, press and analyst status, keynote status, and the status of the many other sub-groups and people who drive various aspects of a big conference like PDC. I gave my typical way-too-long update on content, covering: sessions, publishing plans, keynotes, slide templates, room signage, our Microsoft Pavilion area, the Lounge area, and Hands-on Labs. By the way, I don’t own most of these things, but content ends up touching just about everything at the event. I eventually just decided to shut-up, since I could talk for hours on PDC2008. You can probably tell by the length of this blog post. :-)

When the meeting ended around 5:00pm, I was asked to stay to talk about a few outstanding issues. Then, on the way back to my office, I stopped in Thomas Lewis’ office to talk about MIX09 keynotes, our evangelism organization, and a lot of other things. Thomas and I think quite a bit alike, and he’s one of the few people that I trust implicitly…and we go to lunch almost daily.

To top off my Thursday, Joan Hoshino, our PDC2008 Business Owner (who you can meet in this Countdown to PDC2008 video), caught me to ask for my help to re-layout the Microsoft Pavilion booths. So, I wrapped-up with Thomas and helped Joan for about 15 minutes. We try to locate the booths near other related technologies to make navigation of our big room easier and more productive for attendees, so this was a very worthwhile exercise.

Uncharacteristically, I finally left the office around 6:30pm with no lunch or time for e-mail. I normally try to get out of the office by 5:00pm or so, but meetings that take place later in the afternoon can cause me to stay a little later.

And that was my Thursday! The day was a little longer than average for me, but the mix of activities and meetings were pretty typical. If you’ve followed this post to the end, I congratulate you!

Posted by mswanson | 1 Comments
Filed under: ,

My Decision Matrix

Have you ever had to make a decision with too many options or factors to consider all at once? Or perhaps you’d like to be more objective about your choices. Or maybe you need to document your decision to make it more defensible later on (“your honor, this chart shows why Grape Nehi is clearly superior to Orange”). Whatever the reason, you may find that a simple decision matrix is all you need.

I’ve been using various forms of my decision matrix to make both personal and professional decisions for as long as I can remember. In recent years, I discovered that my method is very similar to portions of a Kepner-Tregoe Matrix (“KT Matrix”). If you’re interested in a much deeper understanding of their techniques, I wholeheartedly recommend The New Rational Manager by Charles H. Kepner and Benjamin B. Tregoe. It’s a fantastic book.

Anyway, I’ve found myself using my decision matrix in more and more situations recently, and people have started asking for copies of the spreadsheet. I re-formatted it a bit, added some simple instructions, and I’ve been e-mailing it to anyone who asks. I’m sure someone with more spreadsheet skills could improve what I’ve created, and if anyone would like me to share their improved version, please contact me directly.

To use the decision matrix, I recommend the following steps (whether you’re doing this alone or with a group). By the way, you’ll get the most objective decisions by writing down your results on paper or a whiteboard before entering them into the spreadsheet. If you use the spreadsheet, it’s too easy to see the options jockeying for position.

  1. Of the options you’re considering, decide which attributes can be used to help make a decision. You can include as many attributes as necessary. For example, if you’re considering multiple vendors, you might use attributes like Cost, Reliability, Company Size, Expertise, Process Familiarity, etc. If you’re doing this as a group, make sure everyone agrees what the attribute means. It’s often helpful to include a few more words, like: “Process Familiarity – how well does the vendor understand the way we do things at our company?”
     
  2. For each attribute, assign a relative weight that is greater than zero. In my decision matrix, the range of numbers doesn’t matter; it’s the relationship between those numbers that matters. For example, if Cost is assigned a weight of 8 and Expertise is assigned a 4, you’re saying that Cost is twice as important as Expertise in your decision. Naturally, lower weights are less important than higher weights, and it’s okay if multiple attributes share the same weight. In that case, you’re saying that those attributes will be treated equally. In group situations, the discussion about the relative importance of these attributes can be very enlightening, and it’s a fantastic way to build consensus.
     
  3. While this step is optional, I find it extremely useful. I like to “test” the weights by turning them into sentences. And if I’m in a group, we test these sentences aloud. I’ll say something like: “So, we’re saying that it’s three times as important to work with a large Company Size than it is to receive a low Cost?” Or: “Reliability is really only half as important as Expertise?” For anything that sounds wrong, this is a great opportunity to adjust the relative weights.
     
  4. List all of your options. In the example I’ve been using, this would be the vendor names. Then, for each attribute, assign a score from 0-100 to each option. I highly recommend scoring all options for an attribute before moving to the next attribute, because it’s much easier to imagine the attribute, then score each option relative to one another. Of course, if you don’t know all of your options yet, this can’t be done (for example, if you’re using this technique to interview candidates for employment, you may need to score each attribute for the candidate while on the phone). Scores don’t have to be perfect, and 0 can mean bad/low confidence/not applicable/failure/etc., while 100 can mean great/high confidence/guaranteed/etc.
     
  5. Enter your results into the spreadsheet. Here’s an example decision matrix that my wife and I used to select a lot of land years ago:

     
    Add the attributes as columns. In this example, attributes are listed in columns B through H. If you need to insert new columns, be sure to update the formulas in row 10 and in the Score column. I don’t like that this step requires manual manipulation of the formulas, and I’m hoping that someone can improve the spreadsheet to make this step easier and more maintainable. Then, add the relative weights from step 2 above the appropriate attributes in row 9. Last, add all of your options and scores from step 4.

And you’re done! If everything worked correctly, the best option (according to your attributes, weights, and scores) should be the option with the highest overall score in the last column. Often, there are additional factors that can’t easily be included with attributes alone, so the final decision maker should really use this data as good advice. Perhaps best of all, you have a defensible document that summarizes which attributes of your decision were important, how they relate to each other, and how each option was scored.

Download my Decision Matrix Excel spreadsheet (21.5KB), and start making objective, defensible decisions!

Posted by mswanson | 2 Comments
Filed under:

New Show: Countdown to PDC2008

Jennifer Ritzinger and I have started a new show called Countdown to PDC2008, and we just published our first episode on Channel 9. We’ve been recording an internal video series (of the same name) for about ten episodes now, and some fellow employees suggested that the format might also work for an external audience. So, we decided to try it, and we’d love your feedback! Specifically, if you have any questions about the conference, or if you’d like to hear about a particular topic on a future show, please add your comment to the post. We’ll do our best to address them.

To keep things short, tight, and packed with information, we use an old skool analog kitchen timer. Yes, we know that it runs a bit fast, but you know what? We will abide, and “at the ding, we’re done”…even if we’re in the middle of a word. That way, even if we suck, we won’t suck for long. For astute viewers, the fact that we’re standing up and using a kitchen timer might even make this an Agile show.

Okay…I’m just rambling now. Enjoy!

Posted by mswanson | 1 Comments
Filed under: ,

Obscure DVD Recommendations

Okay, "obscure" may be exaggerating a bit; perhaps "less well known" is a better way to describe these DVD picks. Like Helvetica: The Documentary, these aren't your typical Saturday night popcorn popping blockbusters. But if you have an interest in any of these subjects, they're worth checking out.

First up is the excellent and extremely comprehensive, BBS: The Documentary by Jason Scott. It took Jason three years and over 200 interviews to assemble the material on the three DVDs included in this package. There's over five-and-a-half hours of content covering topics like the beginning of bulletin board systems, sysops and users, Fidonet, the ANSI Art Scene, hacking, phreaking, anarchy, cracking, and the legal battle over data compression between PKWARE and SEA.

Not only did I used to write bulletin board software (for the Atari 800 and Commodore 64), but I ran a few BBS's in my time. If you grew up in this era, or if you've ever been curious about communication systems that pre-date the internet, you'll appreciate this amazing work. Be sure to check out Jason's www.textfiles.com, and sign-up to be informed about his next project, Get Lamp, a documentary about the history of text adventures (xyzzy, baby!).

Second on my list is TILT: The Battle to Save Pinball. TILT tells the story of Williams Electronic Games and their attempt to save the industry by creating Pinball 2000. The one hour documentary includes numerous interviews, clever graphics, and some old promotional video. You can just imagine an arcade owner receiving a VHS tape from Williams describing this revolutionary new pinball platform! The over three hours of extras included on this two disc set are almost better than the film: from the design of a pinball machine, to a tour of the former Williams pinball factory, to footage of a few unreleased machines. Me? I was a video game addict. But I pumped enough quarters into the occasional pinball machine to enjoy this DVD set. Recommended.

Next up is Change and Motion: Calculus Made Clear, 2nd Edition, one of many titles from The Teaching Company. While I've been interested in the DVDs from this company for a long time, I've never been able to convince myself to spend the money. However, they're in the middle of an "up to 70% off" sale, and that's just the excuse I needed. This particular course contains 24 half hour lectures across four DVDs. Boldly, they claim that this course can teach calculus to someone with a basic understanding of math, and they explain all of the formulas using plain English. As a Technical Evangelist at Microsoft (and PDC2008 Content Owner), I'm always interested in seeing how others convey complex topics. They're picky about their professors, and I'm sure that helps. I've watched about half of the lectures so far, and I'm impressed. Sure, the instruction is a bit dry, but considering the topic, they've done a really good job.

Last, but not least, is an older title called REVOLUTION OS, an 85-minute film that tells the story of the creation of GNU/Linux and the beginning of the Open Source movement. It's been a couple of years since I watched this film, but I remember learning quite a bit. The second disc has over 70 minutes of additional interviews with people like Linus Torvalds, Richard Stallman, Bruce Perens, and Rob Malda (of Slashdot fame). As an interesting side note, I used to work for one of the companies that Rob worked for in Holland, Michigan...in the same department. Small world. Anyway, the film provided some good perspective, and for that, I appreciate it.

Are there other relatively obscure or unknown films like this that I'm missing? I'd love some good recommendations!

Posted by mswanson | 2 Comments
Filed under:
More Posts Next page »
 
Page view tracker