<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Mike Swanson's Blog : Development</title><link>http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx</link><description>Tags: Development</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Evolving the PDC09 Event Site</title><link>http://blogs.msdn.com/mswanson/archive/2009/09/10/evolving-the-pdc09-event-site.aspx</link><pubDate>Fri, 11 Sep 2009 00:25:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9893882</guid><dc:creator>mswanson</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9893882.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9893882</wfw:commentRss><description>&lt;p&gt;Did you know that the PDC is assembled and run by the same group that does MIX? At this year’s &lt;a href="http://2009.visitmix.com/"&gt;MIX09 in Las Vegas&lt;/a&gt;, we hired a company to facilitate seven on-site focus groups, each comprised of around 10 attendees. While the questions covered a broad range of event topics, many related to our “online experience.” Here is a small sample of verbatim comments:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“this year's site is difficult to navigate: hard to find info about sessions and content” &lt;/li&gt;    &lt;li&gt;“more pre-data should be given: concentrate on schedule and speakers” &lt;/li&gt;    &lt;li&gt;“Integrate identity of MIX09.com website with passport or open ID” &lt;/li&gt;    &lt;li&gt;“tag the sessions so it is easier to choose a theme and follow it”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For &lt;a href="http://microsoftpdc.com/"&gt;PDC09&lt;/a&gt;, we decided to invest in a single online platform that addresses this feedback and allows us to reuse and evolve it for both MIX and PDC. The platform is being developed by the same group that built &lt;a href="http://channel9.msdn.com/"&gt;Channel 9&lt;/a&gt; and &lt;a href="http://www.visitmix.com/"&gt;MIX Online&lt;/a&gt;, and it uses &lt;a href="http://oxite.codeplex.com/"&gt;Oxite&lt;/a&gt; as its foundation.&lt;/p&gt;  &lt;p&gt;Here are some of the things we’re doing:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;To simplify the site, we’ve reduced the number of pages and navigation elements, and we’ve made the most important information more prominent. We went through a complete process to identify the right information architecture, and Tim Aidlin’s post, &lt;a href="http://www.visitmix.com/Opinions/Designing-the-pdc09-Experience"&gt;Designing the PDC09 Experience&lt;/a&gt;, gives additional context and insight.&lt;/li&gt;    &lt;li&gt;Because we’ve heard that session management is important, we’ve tried to make it easier to find, filter, plan, and share the sessions that interest you.&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;A list of “Featured Sessions” is prominently displayed on the &lt;a href="http://microsoftpdc.com/"&gt;home page of the site&lt;/a&gt;. We try to publish new sessions around the first of each month, and this hand-picked list is usually from the most recent batch. &lt;/li&gt;      &lt;li&gt;All workshops and sessions are tagged with their primary technologies, related topics, and general themes. Click the “show tags” link on our &lt;a href="http://microsoftpdc.com/Sessions"&gt;Sessions page&lt;/a&gt; to expose and filter using the tag list.&lt;/li&gt;      &lt;li&gt;Each workshop and session has a details page with comments. This is a great way to provide feedback to the presenter ahead of the event or to ask questions after-the-fact.&lt;/li&gt;      &lt;li&gt;In the coming weeks, we’ll enable new functionality that makes it easy to pick your favorite sessions and add them to a personal agenda. Behind the scenes, we’ll use this data to gauge the popularity of each session so we can schedule them in appropriately-sized rooms. So, the more you use the tool, the better we can make the in-person experience. Then, when we assign rooms and time slots closer to the event, you’ll be able to modify your schedule and coordinate an overall conference attack plan.&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Our &lt;a href="http://microsoftpdc.com/Speakers"&gt;Speakers page&lt;/a&gt; shows an alphabetical and searchable list of everyone who is speaking at the event, including a short bio and an optional photo. When a speaker’s name is clicked, you’ll see the list of sessions they’re presenting.&lt;/li&gt;    &lt;li&gt;We’ve integrated with Live ID so you don’t have to create a new identify or profile just to interact with the site. Plus, logging-in with your Live ID makes it possible for you to save the list of your favorite sessions.&lt;/li&gt;    &lt;li&gt;Like MIX09, we’ll stream the keynotes live and display &lt;a href="http://search.twitter.com/search?q=%23pdc09"&gt;#pdc09-related tweets&lt;/a&gt;. The team is investigating ways to filter out spurious tweets, spam, retweets, bots, etc. so the feed isn’t cluttered with useless information. Our events have proven to be trending topics on Twitter, and as a result, they draw a lot of attention…some of it unwanted.&lt;/li&gt;    &lt;li&gt;We’ll also be releasing a mobile optimized version of the site that makes it easier to navigate the physical conference. It’ll show an abbreviated version of the sessions that have been added to your agenda, a list of all sessions, important news, and logistical information like maps.&lt;/li&gt;    &lt;li&gt;Last, we’ll make it easy to download keynote and session content after the event. We’ve learned that many of you like the “all you can eat” plan, so we’ll do our best to make this a simple scenario.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;At the end of the day, our goal is to provide both in-person and online attendees with an experience that makes it easy to plan, organize, navigate, consume, and share the content that matters most. Hopefully, we’ve struck the right balance.&lt;/p&gt;  &lt;p&gt;As always, we’d love your feedback. Did we miss anything? What would you prioritize?&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9893882" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>PDC09</title><link>http://blogs.msdn.com/mswanson/archive/2009/06/19/pdc09.aspx</link><pubDate>Sat, 20 Jun 2009 02:16:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9792359</guid><dc:creator>mswanson</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9792359.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9792359</wfw:commentRss><description>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 4px 0px 10px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="PDC09" border="0" alt="PDC09" align="right" src="http://www.mikeswanson.com/blog/images/PDC09%20Logo.gif" width="240" height="53" /&gt;Are you ready for our 14th Professional Developers Conference!? We’re back at the Los Angeles Convention Center this November, and as always, it’s going to be fun event! We have one day of workshops (formerly referred to as &lt;em&gt;pre-cons&lt;/em&gt;) on Monday, November 16th, and the main conference runs from Tuesday, November 17th through Thursday, November 19th.&lt;/p&gt;  &lt;p&gt;Our event site at &lt;a href="http://www.microsoftpdc.com"&gt;www.microsoftpdc.com&lt;/a&gt; opens for registration in early August. In the meantime, here are a few ways to plug-in to the news and announcements…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;First, add yourself to the &lt;a href="https://www.ustechsregister.com/pdc09mailinglist/main.aspx"&gt;PDC09 mailing list&lt;/a&gt; so we can send you information about the conference (like registration details, discounts, speakers, sessions, etc.). We don’t send a lot of mail, so you don’t have to worry about your inbox filling up.&lt;/li&gt;    &lt;li&gt;Follow &lt;a href="http://twitter.com/PDC09"&gt;@PDC09 on Twitter&lt;/a&gt;, and if you tweet anything about the conference, be sure to include the #pdc09 &lt;a href="http://twitter.pbworks.com/Hashtags"&gt;hashtag&lt;/a&gt; so we can hear what you have to say (yes, we listen). If you’ve been resisting Twitter, I have to tell you that it’s a fantastic way to keep up with everything that’s going on. If you don’t want to follow on your mobile device, &lt;a href="http://search.twitter.com/search?q=%23pdc09"&gt;search the #pdc09 hashtag&lt;/a&gt; on occasion for the latest updates.&lt;/li&gt;    &lt;li&gt;RSVP for the &lt;a href="http://www.facebook.com/event.php?eid=52112865983&amp;amp;ref=ts"&gt;PDC09 Facebook event&lt;/a&gt; for yet another way to stay plugged-in to the event.&lt;/li&gt;    &lt;li&gt;If you’re a company that would like to &lt;a href="http://microsoftpdc.com/sponsors/"&gt;sponsor or exhibit at PDC09&lt;/a&gt;, we’ve recently opened the submission process. There are limited sponsorships and exhibitor booths available in the convention center, so my recommendation is to submit early. But you knew I’d say that, didn’t you? :-)&lt;/li&gt;    &lt;li&gt;Bookmark the &lt;a href="http://www.microsoftpdc.com"&gt;www.microsoftpdc.com&lt;/a&gt; event site. That’s the central location for everything related to the conference.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;In addition to being on our PDC09 Core Team (which means that I’m somehow involved with just about everything related to the event), I own our keynotes this year. I’m also part of the team that is working to elevate our online experience; we heard a lot of feedback at PDC2008 and MIX09, and we’re doing our best to address that feedback for PDC09.&lt;/p&gt;  &lt;p&gt;If you have any questions or suggestions, feel free to add a comment to this post or &lt;a href="http://blogs.msdn.com/mswanson/contact.aspx"&gt;contact me directly&lt;/a&gt;. And watch this space for future posts about PDC09 as we get closer to the event.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9792359" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>MIX09 Keynote and Session Videos</title><link>http://blogs.msdn.com/mswanson/archive/2009/03/26/mix09-keynote-and-session-videos.aspx</link><pubDate>Thu, 26 Mar 2009 23:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9511806</guid><dc:creator>mswanson</dc:creator><slash:comments>16</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9511806.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9511806</wfw:commentRss><description>&lt;P&gt;Whew…what a show! Thanks to everyone who joined us in Las Vegas last week for our fourth MIX conference, &lt;A href="http://2009.visitmix.com/" mce_href="http://2009.visitmix.com/"&gt;MIX09&lt;/A&gt;. It was great to meet many of you in person and to associate Twitter aliases with real names. It’s awesome that someone can walk up and say, “Hi, I’m WoogyChuck,” and I actually know what that means!&lt;/P&gt;
&lt;P&gt;&lt;IMG style="MARGIN: 2px 0px 4px 15px; DISPLAY: inline" align=right src="http://www.mikeswanson.com/blog/images/MIX09%20Session%20Recording.jpg" width=352 height=212 mce_src="http://www.mikeswanson.com/blog/images/MIX09%20Session%20Recording.jpg"&gt; As we’ve done in prior years at both PDC and MIX, all keynotes and sessions were recorded and published within 24 hours by the talented &lt;A href="http://blogs.msdn.com/briankel/" mce_href="http://blogs.msdn.com/briankel/"&gt;Brian Keller&lt;/A&gt;. The first video format we publish is WMV, and the other formats show up as they’re encoded. By now, almost all of the videos in all of the formats have been published. The few that remain will be added over the coming days.&lt;/P&gt;
&lt;P&gt;Special thanks to &lt;A href="http://coolthingoftheday.blogspot.com/" mce_href="http://coolthingoftheday.blogspot.com/"&gt;Greg Duncan&lt;/A&gt; for taking our session data and publishing a &lt;A href="http://coolthingoftheday.blogspot.com/2009/03/mix-09-quick-video-link-list.html" mce_href="http://coolthingoftheday.blogspot.com/2009/03/mix-09-quick-video-link-list.html"&gt;simple list of links&lt;/A&gt; within days of MIX09. Based on Greg’s work, feedback from the &lt;A href="http://search.twitter.com/search?q=%23mix09" mce_href="http://search.twitter.com/search?q=%23mix09"&gt;#MIX09 tweets&lt;/A&gt;, direct e-mail, and many blog comments, our online team quickly implemented a dynamic &lt;A href="http://videos.visitmix.com/MIX09/All" mce_href="http://videos.visitmix.com/MIX09/All"&gt;list of all MIX09 session and keynote recordings&lt;/A&gt;. We’ve learned that you like this straightforward format, and we’ll make sure we add this to our list of features for &lt;A href="https://www.ustechsregister.com/pdc09mailinglist/main.aspx" mce_href="https://www.ustechsregister.com/pdc09mailinglist/main.aspx"&gt;PDC09&lt;/A&gt; and &lt;A href="http://visitmix.com/News/Thank-You-from-the-MIX09-Team" mce_href="http://visitmix.com/News/Thank-You-from-the-MIX09-Team"&gt;MIX10&lt;/A&gt;. If you prefer to browse the videos by image, check out the &lt;A href="http://videos.visitmix.com/MIX09" mce_href="http://videos.visitmix.com/MIX09"&gt;thumbnail view&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;To download videos for offline viewing, you have a few options:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Visit the &lt;A href="http://videos.visitmix.com/MIX09/All" mce_href="http://videos.visitmix.com/MIX09/All"&gt;list of all MIX09 sessions&lt;/A&gt;, and download them individually. &lt;/LI&gt;
&lt;LI&gt;Use your favorite RSS tool to download all of the videos in your format of choice (&lt;A href="http://videos.visitmix.com/MIX09/RSS" mce_href="http://videos.visitmix.com/MIX09/RSS"&gt;All&lt;/A&gt;, &lt;A href="http://videos.visitmix.com/MIX09/Feeds/WMV/RSS" mce_href="http://videos.visitmix.com/MIX09/Feeds/WMV/RSS"&gt;WMV&lt;/A&gt;, &lt;A href="http://videos.visitmix.com/MIX09/Feeds/WMVHigh/RSS" mce_href="http://videos.visitmix.com/MIX09/Feeds/WMVHigh/RSS"&gt;WMV High&lt;/A&gt;, &lt;A href="http://videos.visitmix.com/MIX09/Feeds/MP4/RSS" mce_href="http://videos.visitmix.com/MIX09/Feeds/MP4/RSS"&gt;MP4&lt;/A&gt;). Note that there are also many non-session videos and audio recordings that are available in &lt;A href="http://videos.visitmix.com/MIX09/Feeds/WMA/RSS" mce_href="http://videos.visitmix.com/MIX09/Feeds/WMA/RSS"&gt;WMA&lt;/A&gt; and &lt;A href="http://videos.visitmix.com/MIX09/Feeds/MP3/RSS" mce_href="http://videos.visitmix.com/MIX09/Feeds/MP3/RSS"&gt;MP3&lt;/A&gt; format. &lt;/LI&gt;
&lt;LI&gt;If you’re like me and prefer a command-line tool, download a &lt;A href="http://www.gknw.net/mirror/curl/win32/curl-7.19.4-ssl-sspi-zlib-static-bin-w32.zip" mce_href="http://www.gknw.net/mirror/curl/win32/curl-7.19.4-ssl-sspi-zlib-static-bin-w32.zip"&gt;recent build of cURL&lt;/A&gt; (1.2MB), and extract it to your folder-of-choice. Then, download &lt;A href="http://www.mikeswanson.com/blog/files/MIX09Downloader.zip" mce_href="http://www.mikeswanson.com/blog/files/MIX09Downloader.zip"&gt;MIX09Downloader.zip&lt;/A&gt; (1.27KB) and extract the &lt;STRONG&gt;MIX09Downloader.bat&lt;/STRONG&gt; file to the same folder. From a command prompt, start &lt;STRONG&gt;MIX09Downloader&lt;/STRONG&gt; by passing it one of the following parameters: WMV-HQ, WMV, MP4, Zune, PPTX. Then wait. :-) For files that aren’t available, cURL will download a file that is around 220 bytes in size (if you change the extension to .htm and open it, you’ll see that the file is simply an HTML “not found” error page). &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Here’s how much disk space you need to plan for (~45.5GB in total):&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;TABLE border=0 cellSpacing=2 cellPadding=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD vAlign=top width="15%"&gt;
&lt;P align=right&gt;&lt;STRONG&gt;&lt;NOBR&gt;WMV-HQ&lt;/NOBR&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top width="15%"&gt;&lt;NOBR&gt;= ~22GB&lt;/NOBR&gt;&lt;/TD&gt;
&lt;TD vAlign=top width="5%"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD vAlign=top width="15%"&gt;
&lt;P align=right&gt;&lt;STRONG&gt;MP4&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top width="15%"&gt;&lt;NOBR&gt;= ~7GB&lt;/NOBR&gt;&lt;/TD&gt;
&lt;TD vAlign=top width="5%"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD vAlign=top width="15%"&gt;
&lt;P align=right&gt;&lt;STRONG&gt;PPTX&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top width="15%"&gt;&lt;NOBR&gt;= ~530MB&lt;/NOBR&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD vAlign=top&gt;
&lt;P align=right&gt;&lt;STRONG&gt;WMV&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top&gt;&lt;NOBR&gt;= ~10GB&lt;/NOBR&gt;&lt;/TD&gt;
&lt;TD vAlign=top&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD vAlign=top&gt;
&lt;P align=right&gt;&lt;STRONG&gt;Zune&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top&gt;&lt;NOBR&gt;= ~6GB&lt;/NOBR&gt;&lt;/TD&gt;
&lt;TD vAlign=top&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD vAlign=top&gt;
&lt;P align=right mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD vAlign=top&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;If you'd like to rename your downloaded files, I've created a &lt;A href="http://www.mikeswanson.com/blog/files/MIX09Renamer.zip" mce_href="http://www.mikeswanson.com/blog/files/MIX09Renamer.zip"&gt;MIX09 Renamer&lt;/A&gt; batch file (4.19KB) that will do it for you. Extract the &lt;B&gt;MIX09Renamer.bat&lt;/B&gt; file to the folder that contains your downloaded files, and from a command prompt, type &lt;B&gt;MIX09Renamer WMV&lt;/B&gt; to rename all of the .WMV files to the full session title. By changing the parameter, you can also rename your PPTX and MP4 files. For example:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;B&gt;B01M.wmv&lt;/B&gt; is renamed to &lt;B&gt;B01M - Scaling a Rich Client to Half a Billion Users.wmv&lt;/B&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Last, but not least, we did record some of the workshop sessions. However, because we don’t always record them for publishing (often for contractual reasons), we’re working to determine which ones can be posted. Also, we’ve noticed some audio/video quality issues with some of them that we’re trying to fix. It’ll likely be a few days to a week before we know more, and I’d encourage you to keep your eyes on the &lt;A href="http://videos.visitmix.com/MIX09/All" mce_href="http://videos.visitmix.com/MIX09/All"&gt;MIX09 session list&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Is there anything else that we’ve missed? I’d love to hear your feedback!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9511806" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/MIX/default.aspx">MIX</category></item><item><title>Native Text and Symbol Support Added to My Illustrator to XAML Plug-In</title><link>http://blogs.msdn.com/mswanson/archive/2009/02/24/native-text-and-symbol-support-added-to-my-illustrator-to-xaml-plug-in.aspx</link><pubDate>Tue, 24 Feb 2009 11:42:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9442330</guid><dc:creator>mswanson</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9442330.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9442330</wfw:commentRss><description>&lt;p&gt;Wow! I can hardly believe that this is the third post on my Illustrator to XAML plug-in in the past month. After not touching the code for well over two years, it’s been fun digging back into the project. &lt;a href="http://blogs.msdn.com/mswanson/archive/2009/02/08/test-version-of-my-illustrator-to-xaml-plug-in-for-the-mac.aspx"&gt;Adding Mac OS X support&lt;/a&gt; has been a brand new challenge for me, and I’ve enjoyed every minute. The response to the test version of the Mac plug-in has been fantastic. It’s clear to me that there are a lot of Illustrator users on the Mac who want to work with Silverlight and WPF! The good news is that the PC and Mac codebases for the plug-in are essentially in-sync, and any improvements that I make in the future should apply to both versions.&lt;/p&gt;  &lt;p&gt;One of the more common requests I’ve received is for native text support. As a matter of fact, native text support was one of the first features I started to build way back in 2005. At the time, though, when I dug-in to the Adobe Text Engine (otherwise known as ATE), it seemed like I had teleported into another dimension. The text engine provides a lot of typographic flexibility, and the API is newer than many of the more traditional APIs in Illustrator. I was already in unfamiliar territory building a plug-in, let alone learning about yet another deep and complex API. So, I disabled my early text code, and it’s been dormant ever since. The workaround has always been “convert your text to outlines before you export.” Of course, this method offers very little flexibility when you want to dynamically change text at runtime, and the text outlines significantly bloat the XAML.&lt;/p&gt;  &lt;p&gt;The new version of the plug-in exports native &lt;em&gt;point text&lt;/em&gt;. However, it does not export text that has been fitted to a path (for an example of this limitation, check out the &lt;em&gt;Yellowstone Map &lt;/em&gt;illustration on my &lt;a href="http://www.mikeswanson.com/xamlexport/Eye%20Candy.htm"&gt;updated Eye Candy page&lt;/a&gt;). Fortunately, most text in Illustrator is point text, so this shouldn’t present a problem for common cases. Illustrator also supports many advanced text features that are not currently exported, so you may notice differences in the way text is rendered. One of the text features that is not handled is the relative spacing between letters and words, otherwise known as &lt;em&gt;tracking&lt;/em&gt;. Here’s an example of some Illustrator text with increased tracking (top) and how the exported XAML is rendered with WPF (bottom):&lt;/p&gt; &lt;img style="margin: 5px 0px 5px 15px" src="http://www.mikeswanson.com/blog/images/Illustrator%20Tracking.gif" width="591" height="177" /&gt;   &lt;p&gt;I added the red lines to show that the anchor point of each TextBlock element is correctly aligned. However, because the tracking value is not accommodated in the XAML, each text run falls out of alignment. By the way, the Illustrator API returns three individual &lt;em&gt;glyph runs&lt;/em&gt; for this single word, which is why there are three TextBlock elements. Since all of the other attributes of this text run are identical (color, baseline, font size, font family), a future enhancement to the plug-in should combine all three of these glyph runs into one. For now, the manual solution would be to simply delete all but the first TextBlock.&lt;/p&gt;  &lt;p&gt;&lt;img style="margin: 5px 15px; display: inline" align="right" src="http://www.mikeswanson.com/blog/images/Illustrator%20Symbols.gif" width="245" height="212" /&gt;While I was digging through the code, I also uncommented some early work I had begun on &lt;em&gt;symbols&lt;/em&gt;. In Illustrator, a symbol is an art object that can be reused multiple times within a single document. So, after a symbol is created, instances of that symbol can be added to the document many times without having to create multiple copies of complex artwork. A great example of symbol use can be seen in the aforementioned &lt;em&gt;Yellowstone Map&lt;/em&gt; on &lt;a href="http://www.mikeswanson.com/xamlexport/Eye%20Candy.htm"&gt;the Eye Candy page&lt;/a&gt;. I’ve included a small section of the map to the right showing square black symbols used to mark picnic areas, food, lodging, etc. Ideally, symbols would be exported to a &lt;em&gt;ResourceDictionary &lt;/em&gt;and referenced in the exported XAML, though this is not the case in the current version.&lt;/p&gt;  &lt;p&gt;The last tweak I made was to improve the behavior of the shift keys in the PC version. The keyboard detection logic I was using seemed unreliable, and often times, the XAML editor would launch even though the left shift key was not being held down. I’ve received a handful of e-mail inquiries about this behavior, and I’m happy to say that I was able to fix it in this version. Why shift keys instead of dialog box choices, you ask? Well, it’s mostly because I didn’t want to spend the time to learn how to use the Adobe Dialog Manager (ADM)…yet another complex API. Plus, I’ve grown to like the simplicity and ease of the shift key approach.&lt;/p&gt;  &lt;p&gt;I updated the &lt;a href="http://www.mikeswanson.com/xamlexport/"&gt;Adobe Illustrator to XAML Export Plug-In site&lt;/a&gt; to bring it a bit more up-to-date. Nothing radical, though I did use &lt;a href="http://blog.nerdplusart.com/"&gt;Robby Ingebretsen&lt;/a&gt;’s fantastic &lt;a href="http://www.kaxaml.com/"&gt;Kaxaml&lt;/a&gt; editor to create some new visuals (thanks, Robby!). There’s also installation instructions for both PC and Mac along with download links to the most recent version.&lt;/p&gt;  &lt;p&gt;If you’re planning to attend &lt;a href="http://2009.visitmix.com/"&gt;MIX09&lt;/a&gt; and want to chat about the plug-in (or anything, really), &lt;a href="http://twitter.com/anyware"&gt;send me a tweet&lt;/a&gt; when you’re in Vegas, and I’m happy to hook-up. Otherwise, feel free to leave comments, feedback, and suggestions to this post or &lt;a href="http://blogs.msdn.com/mswanson/contact.aspx"&gt;drop me a line directly&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Most of all, have fun! :-)&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9442330" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category></item><item><title>Test Version of My Illustrator to XAML Plug-In for the Mac</title><link>http://blogs.msdn.com/mswanson/archive/2009/02/08/test-version-of-my-illustrator-to-xaml-plug-in-for-the-mac.aspx</link><pubDate>Mon, 09 Feb 2009 07:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9407936</guid><dc:creator>mswanson</dc:creator><slash:comments>17</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9407936.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9407936</wfw:commentRss><description>
&lt;p&gt;&lt;img src="http://www.mikeswanson.com/blog/images/XAMLExport%20on%20Mac.jpg" style="margin: 0px 15px 4px 0px;" mce_src="http://www.mikeswanson.com/blog/images/XAMLExport%20on%20Mac.jpg" width="365" align="left" height="172"&gt;One of the most frequent questions I get related to my &lt;a href="http://www.mikeswanson.com/xamlexport/" mce_href="http://www.mikeswanson.com/xamlexport/"&gt;Adobe Illustrator to XAML Export Plug-In&lt;/a&gt; is: “does it run on a Mac?” Unfortunately, the answer has always been “no,” because I’ve never owned a Mac, and I’ve never done any Mac development…ever. If you can believe it, the last Apple computer I wrote code for was the Apple IIe. Those were the days!&lt;/p&gt;
  
&lt;p&gt;Last week, I asked around the office, and between &lt;a href="http://blogs.msdn.com/tims/" mce_href="http://blogs.msdn.com/tims/"&gt;Tim Sneath&lt;/a&gt; and &lt;a href="http://www.thespiderking.com/" mce_href="http://www.thespiderking.com/"&gt;Thomas Lewis&lt;/a&gt;, I was able to borrow a Mac Mini to play around with (thanks, guys!). I installed OS X Tiger and Xcode 2.5, because I wanted to target the Illustrator CS3 SDK (which recommends that OS/tool combination). I would have gone back a bit further, but the CS and CS2 SDKs are both based on &lt;a href="http://en.wikipedia.org/wiki/CodeWarrior" mce_href="http://en.wikipedia.org/wiki/CodeWarrior"&gt;CodeWarrior&lt;/a&gt;, and I didn’t want to make my situation any more difficult by using even older versions of the OS and tools. Because of this choice, the plug-in should work fine with Illustrator CS3 and CS4, though I’ve only been able to test it on CS4 myself.&lt;/p&gt;
  
&lt;p&gt;Fortunately, when I wrote the original plug-in for the PC version of Illustrator, I mostly stuck to the platform agnostic functionality and types that are exposed by the SDK. This made it much easier to port the code to the Mac. Here are the three biggest challenges I encountered:&lt;/p&gt;
  
&lt;ul&gt;   
&lt;li&gt;General unfamiliarity with the Mac – since I haven’t used a Mac since the Mac Classic (before it was even called “Classic”), just finding my way around the system felt like I was exploring an alien planet. Where did my Illustrator window go!?!?&lt;/li&gt;
    
&lt;li&gt;Xcode – being unfamiliar with the Mac didn’t make it any easier to understand the project system or the Xcode developer tools. And Carbon? What’s that? :-)&lt;/li&gt;
    
&lt;li&gt;Platform-specific code – if you’ve used the PC version of the plug-in, you know that you can hold down the left shift key during export to pop-up your default XAML viewer; if you hold down the right shift key, your WPF export uses DrawingBrush syntax. The Mac API that I found doesn’t allow me to distinguish between the left and right shift keys, so the Mac version exports DrawingBrush syntax regardless of which Shift key is held down.&lt;/li&gt;
 &lt;/ul&gt;
  
&lt;p&gt;If you’d like to help test, &lt;strike&gt;download Mac version 0.18&lt;/strike&gt; (see update below) and copy the XAMLExport.aip file to your Illustrator plug-in folder. Like the most recent PC version, you’ll find "XAML for Silverlight (*.XAML)" and "XAML for WPF (*.XAML)" as new formats under File/Export. I’ve run many files from my test suite through the plug-in and have so far been able to add all of them successfully to &lt;a href="http://www.microsoft.com/expression/products/Overview.aspx?key=blend" mce_href="http://www.microsoft.com/expression/products/Overview.aspx?key=blend"&gt;Expression Blend 2&lt;/a&gt; on my PC.&lt;/p&gt;
  
&lt;p&gt;It may help to read through the Features list on &lt;a href="http://www.mikeswanson.com/xamlexport/" mce_href="http://www.mikeswanson.com/xamlexport/"&gt;my plug-in page&lt;/a&gt; to see what works and what doesn’t. Also, I’d love it if someone could test it with Illustrator CS, CS2, and CS3 and report their results…I only have CS4 on the Mac.&lt;/p&gt;
  
&lt;p&gt;Thanks in advance for your help and feedback!&lt;/p&gt;&lt;p&gt;&lt;b&gt;Update: &lt;a href="http://blogs.msdn.com/mswanson/archive/2009/02/24/native-text-and-symbol-support-added-to-my-illustrator-to-xaml-plug-in.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2009/02/24/native-text-and-symbol-support-added-to-my-illustrator-to-xaml-plug-in.aspx"&gt;A newer version of the plug-in is now available&lt;/a&gt;, including version 0.19 for both the PC and the Mac.&lt;/b&gt; &lt;br&gt;&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9407936" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category></item><item><title>Updated Adobe Illustrator to XAML Plug-In</title><link>http://blogs.msdn.com/mswanson/archive/2009/01/31/updated-adobe-illustrator-to-xaml-plug-in.aspx</link><pubDate>Sat, 31 Jan 2009 23:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9386868</guid><dc:creator>mswanson</dc:creator><slash:comments>8</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9386868.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9386868</wfw:commentRss><description>&lt;p&gt;It's been five months since I posted an &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/08/28/update-on-my-illustrator-plug-in-and-flash-to-xaml-conversion-tool.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2008/08/28/update-on-my-illustrator-plug-in-and-flash-to-xaml-conversion-tool.aspx"&gt;Update on My Illustrator Plug-In and Flash to XAML Conversion Tool&lt;/a&gt;. When I wrote that post, I was in deep preparation for our 2008 Professional Developers Conference, and I didn't have any time to focus on the plug-in. On top of that, I have to admit that I wasn't very motivated to dive back into a C++ project; while I used to write C/C++ all day long, that was many, many years ago. I've since been spoiled by managed code. But I digress...&lt;/p&gt;
  
&lt;p&gt;I found my project files, converted them to Visual Studio 2008 (yes, it's been that long), and spent some time fixing two issues that I've received a lot of e-mail about:&lt;/p&gt;
  
&lt;ul&gt;   
&lt;li&gt;The first issue was related to &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.media.pathgeometry.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.media.pathgeometry.aspx"&gt;PathGeometry&lt;/a&gt; changes in Silverlight 2. Chris Idzerda of Vertigo Software &lt;a href="http://blogs.vertigo.com/personal/chris/Blog/archive/2008/12/04/pathgeometry-figures-property-xaml-attribute-syntax-in-silverlight.aspx" mce_href="http://blogs.vertigo.com/personal/chris/Blog/archive/2008/12/04/pathgeometry-figures-property-xaml-attribute-syntax-in-silverlight.aspx"&gt;explains the problem&lt;/a&gt; in a recent post. This plug-in bug made it more difficult to use the exported XAML with &lt;a href="http://www.microsoft.com/expression/products/Overview.aspx?key=blend" mce_href="http://www.microsoft.com/expression/products/Overview.aspx?key=blend"&gt;Expression Blend&lt;/a&gt;. The good news is that the problem has been addressed in this update, and you should be able to add the exported XAML files directly to your Blend projects without issue.      &lt;br&gt;&amp;nbsp;&lt;/li&gt;
    
&lt;li&gt;The second issue was related to the insane numeric precision in the exported XAML. I was using the default floating point format (%f) which outputs 6 digits after the decimal point. Not only was this precision excessive and unnecessary, but it resulted in large exports. I've modified the format to output 3 digits after the decimal point (%.3f) which should still be more than enough precision, even for close-up work. Here's an example of output from versions 0.17 and 0.18 for comparison:     &lt;br&gt;      &lt;br&gt;&lt;b&gt;0.17:&lt;/b&gt; &amp;lt;Path Data="F1 M 71.924805,320.608887 L 44.380859,179.062500 L 120.126465,175.236816 L 117.831055,269.345703 L 138.489258,267.815430...      &lt;br&gt;&lt;b&gt;0.18:&lt;/b&gt; &amp;lt;Path Data="F1 M 71.925,320.609 L 44.381,179.063 L 120.126,175.237 L 117.831,269.346 L 138.489,267.815...      &lt;br&gt;      &lt;br&gt;On one of my larger test files, version 0.17 exports a 3,457KB XAML file, and version 0.18 output the same file at 2,987KB, a 14% savings.&lt;/li&gt;
 &lt;/ul&gt;
  
&lt;p&gt;The last small tweak I made was to rename the Silverlight and WPF formats so that they're next to each other in the "Save as type" drop-down list in the Export dialog. You'll now see "XAML for Silverlight (*.XAML)" and "XAML for WPF (*.XAML)". I hope this makes it easier to locate the formats in the list.&lt;/p&gt;
  
&lt;p&gt;I've also verified that the plug-in works properly with Adobe Illustrator CS4.&lt;/p&gt;
  
&lt;p&gt;Download version 0.18 from the &lt;a href="http://www.mikeswanson.com/xamlexport/" mce_href="http://www.mikeswanson.com/xamlexport/"&gt;Adobe Illustrator to XAML Export Plug-In&lt;/a&gt; page.&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9386868" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category></item><item><title>MIX09</title><link>http://blogs.msdn.com/mswanson/archive/2009/01/23/mix09.aspx</link><pubDate>Fri, 23 Jan 2009 20:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9372902</guid><dc:creator>mswanson</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9372902.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9372902</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://2009.visitmix.com/" mce_href="http://2009.visitmix.com/"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; MARGIN: 4px 0px 4px 15px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=MIX09%20Logo border=0 alt=MIX09%20Logo align=right src="http://www.mikeswanson.com/blog/images/MIX09%20Logo.gif" width=240 height=55 mce_src="http://www.mikeswanson.com/blog/images/MIX09%20Logo.gif"&gt;&lt;/A&gt; Yes, I’m still alive, and no, the rumors about the PDC Hard Hat Challenges melting my brain are false (it was only a minor contusion). The good news is that I’ve fully recovered, and I’m now focused on our upcoming &lt;A href="http://2009.visitmix.com/" mce_href="http://2009.visitmix.com/"&gt;MIX09 event&lt;/A&gt; in Las Vegas! This time around, I play the role of &lt;EM&gt;MIX09 Keynote Owner&lt;/EM&gt;. That basically means that I’m responsible for driving the process that we use to determine what our story is this year, who we’d like on stage, which customers and partners we want to feature, how we organize and tell our story, and the practical matters and logistics around making it happen. It’s a group effort, and I depend on a brilliant and passionate keynote team to get the job done.&lt;/P&gt;
&lt;P&gt;But enough about me.&lt;/P&gt;
&lt;P&gt;MIX09 is going to be an amazing event, and it’s our job to deliver a return on your investment to attend. We understand that the economy is forcing everyone to re-evaluate the benefits of taking time away from the office, let alone the travel and expense to fly to Las Vegas in the first place. Based on my years of experience working side-by-side with customers and partners in the field, I know that you may only be able to attend one event (period) each year. And for many of you, attending any event at all is often a benefit or perk. Not only is it in your best interest to attend the “correct” event given your role, but it’s also in our best interest to ensure that we attract an audience that aligns with the content we produce. To help you make the best decision, it may help to watch &lt;A href="http://visitmix.com/News/Countdown-to-MIX09-Even-in-Trying-Financial-Times-You-Cant-Afford-to-Stay-Home" mce_href="http://visitmix.com/News/Countdown-to-MIX09-Even-in-Trying-Financial-Times-You-Cant-Afford-to-Stay-Home"&gt;this 4-minute video&lt;/A&gt; where I quickly explain the benefits of the conference. To hear the benefits from one of our partners, watch &lt;A href="http://visitmix.com/News/Countdown-to-MIX09-Straight-from-the-Horses-Mouth" mce_href="http://visitmix.com/News/Countdown-to-MIX09-Straight-from-the-Horses-Mouth"&gt;this interview with Scott Stanfield&lt;/A&gt;, the CEO of Vertigo Software. Finally, if you &lt;A href="http://2009.visitmix.com/Registration/" mce_href="http://2009.visitmix.com/Registration/"&gt;register&lt;/A&gt; by February 13th, save $400 by using the “MIX09offer“ RSVP code.&lt;/P&gt;
&lt;P&gt;There are a lot of exciting things going on at MIX09, and I’d like to list a few of my favorites here:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://weblogs.asp.net/scottgu/" mce_href="http://weblogs.asp.net/scottgu/"&gt;Scott Guthrie&lt;/A&gt;, a MIX veteran, is going to keynote again this year. Scott is a fantastic speaker, and he always receives amazing attendee feedback. Check out his &lt;A href="http://sessions.visitmix.com/?selectedSearch=KYN0801" mce_href="http://sessions.visitmix.com/?selectedSearch=KYN0801"&gt;keynote from MIX08&lt;/A&gt;, then use your spider-sense to extrapolate what he might announce or reveal this year. I’m not telling. At least not yet. &lt;/LI&gt;
&lt;LI&gt;Bill Buxton &lt;A href="http://visitmix.com/News/Bill-Buxton-to-Keynote-at-MIX09" mce_href="http://visitmix.com/News/Bill-Buxton-to-Keynote-at-MIX09"&gt;was just announced&lt;/A&gt; as our second keynote speaker. I could try to summarize Bill in a sentence or two, but I can guarantee that it wouldn’t come close to doing him justice. Go grab a fresh cup of coffee, close the door to your office, and watch some of the videos &lt;A href="http://www.billbuxton.com/" mce_href="http://www.billbuxton.com/"&gt;on Bill’s site&lt;/A&gt;. He is a champion for user experience (among many other things) and is the author of the highly-regarded book, &lt;A href="http://www.amazon.com/Sketching-User-Experiences-Getting-Design/dp/0123740371/ref=pd_bbs_sr_1/104-7396138-7307151?ie=UTF8&amp;amp;s=books&amp;amp;qid=1177046911&amp;amp;sr=8-1" mce_href="http://www.amazon.com/Sketching-User-Experiences-Getting-Design/dp/0123740371/ref=pd_bbs_sr_1/104-7396138-7307151?ie=UTF8&amp;amp;s=books&amp;amp;qid=1177046911&amp;amp;sr=8-1"&gt;Sketching User Experiences: Getting the Design Right and the Right Design&lt;/A&gt;. &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://2009.visitmix.com/Agenda/Sessions.aspx" mce_href="http://2009.visitmix.com/Agenda/Sessions.aspx"&gt;The sessions&lt;/A&gt;. Not all of the sessions have been posted yet (we’ll end up with over 100), but a few that interest me are: &lt;EM&gt;What's New in Microsoft Silverlight 3&lt;/EM&gt; by &lt;A href="http://blogs.msdn.com/jstegman/" mce_href="http://blogs.msdn.com/jstegman/"&gt;Joe Stegman&lt;/A&gt;, &lt;EM&gt;The Future of Microsoft Expression Blend&lt;/EM&gt; by Douglas Olson, &lt;EM&gt;Integrating Microsoft Expression Blend with Adobe Creative Suite&lt;/EM&gt; by Joanna Mason (&lt;A href="http://blogs.msdn.com/mswanson/archive/2008/08/28/update-on-my-illustrator-plug-in-and-flash-to-xaml-conversion-tool.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2008/08/28/update-on-my-illustrator-plug-in-and-flash-to-xaml-conversion-tool.aspx"&gt;I’m an Adobe user too&lt;/A&gt;), and &lt;EM&gt;C# for Designers&lt;/EM&gt; by Jennifer Smith and Fred Gerantabee. Honestly, there are too many great sessions to choose from. But I guess you’d expect me to say that, wouldn’t you? :-) &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://2009.visitmix.com/MIXtify/TenKGallery.aspx" mce_href="http://2009.visitmix.com/MIXtify/TenKGallery.aspx"&gt;MIX 10K Smart Coding Challenge&lt;/A&gt;. I should have blogged this one earlier, since the entry deadline is January 30th, 2009. The grand prize winner receives a pass to MIX09, 3 nights at The Venetian Hotel and a $1,500 USD Visa gift card. Sweet. Even if you don’t enter, it’s fun looking through the gallery of submissions. Make sure you vote for your favorites and leave a comment or two. Since Genetic Algorithms hold a special place in my heart, I’m a big fan of &lt;A href="http://2009.visitmix.com/MIXtify/TenKDisplay.aspx?SubmissionID=0033" mce_href="http://2009.visitmix.com/MIXtify/TenKDisplay.aspx?SubmissionID=0033"&gt;Rick Barraza’s submission&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Also, by popular request, Jennifer Ritzinger and I are back with our weekly (or so) video series, &lt;EM&gt;Countdown to MIX09&lt;/EM&gt;. I don’t have a single link to all of the episodes, but I’ll list a few of them here. They’re all around 10 minutes in length, and if you subscribe to the &lt;A href="http://visitmix.com/News/RSS/" mce_href="http://visitmix.com/News/RSS/"&gt;MIX news feed&lt;/A&gt;, you’ll hear about them when they’re published.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-More-Training-Opportunities--the-Pre-Con-Workshops" mce_href="http://visitmix.com/News/Countdown-to-MIX09-More-Training-Opportunities--the-Pre-Con-Workshops"&gt;Countdown to MIX09: More Training Opportunities at the Pre-Con Workshops&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-DrinkBoy-Demos-and-Double-Redundancy" mce_href="http://visitmix.com/News/Countdown-to-MIX09-DrinkBoy-Demos-and-Double-Redundancy"&gt;Countdown to MIX09: DrinkBoy, Demos, and Double Redundancy&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-Even-in-Trying-Financial-Times-You-Cant-Afford-to-Stay-Home" mce_href="http://visitmix.com/News/Countdown-to-MIX09-Even-in-Trying-Financial-Times-You-Cant-Afford-to-Stay-Home"&gt;Countdown to MIX09: Even in Trying Financial Times, You Can’t Afford to Stay Home&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-Straight-from-the-Horses-Mouth" mce_href="http://visitmix.com/News/Countdown-to-MIX09-Straight-from-the-Horses-Mouth"&gt;Countdown to MIX09: Straight from the Horse’s Mouth&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-MIX-10K-Challenge" mce_href="http://visitmix.com/News/Countdown-to-MIX09-MIX-10K-Challenge"&gt;Countdown to MIX09: MIX 10K Challenge&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://visitmix.com/News/Countdown-to-MIX09-Design-Matters" mce_href="http://visitmix.com/News/Countdown-to-MIX09-Design-Matters"&gt;Countdown to MIX09: Design Matters!&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;If you have suggestions for topics that you’d like to hear us address on future episodes, send some e-mail to mix09 (at) microsoft.com. I promise that we’ll read everything you send, and we always try to reply.&lt;/P&gt;
&lt;P&gt;Thanks for taking the time to read this long overdue post, and I hope to see you at the event!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9372902" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/MIX/default.aspx">MIX</category></item><item><title>PDC2008 Keynote and Session Video Links</title><link>http://blogs.msdn.com/mswanson/archive/2008/11/03/pdc2008-keynote-and-session-video-links.aspx</link><pubDate>Mon, 03 Nov 2008 23:10:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9034848</guid><dc:creator>mswanson</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9034848.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9034848</wfw:commentRss><description>&lt;p&gt;I've posted a &lt;a href="http://blogs.msdn.com/mswanson/pages/PDC2008Sessions.aspx"&gt;PDC2008 Sessions page&lt;/a&gt; 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.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9034848" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>PDC2008 Session and Keynote Recordings Are Now Published</title><link>http://blogs.msdn.com/mswanson/archive/2008/11/01/pdc2008-session-and-keynote-recordings-are-now-published.aspx</link><pubDate>Sat, 01 Nov 2008 10:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9027861</guid><dc:creator>mswanson</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/9027861.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=9027861</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://channel9.msdn.com/pdc2008/" mce_href="http://channel9.msdn.com/pdc2008/"&gt;&lt;IMG style="MARGIN: 0px 15px 4px 0px" src="http://www.mikeswanson.com/blog/images/PDC2008%20Session%20Recording.jpg" align=left border=0&gt;&lt;/A&gt;&lt;A href="http://channel9.msdn.com/pdc2008/" mce_href="http://channel9.msdn.com/pdc2008/"&gt;Recordings of the PDC2008 sessions and keynotes&lt;/A&gt; are now available online &lt;STRONG&gt;for free&lt;/STRONG&gt;, &lt;STRONG&gt;for anyone &lt;/STRONG&gt;(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.&lt;/P&gt;
&lt;P&gt;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."&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/mswanson/archive/2005/10/24/484434.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2005/10/24/484434.aspx"&gt;Unlike PDC05&lt;/A&gt;, 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.&lt;/P&gt;
&lt;P&gt;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.&lt;/P&gt;
&lt;P&gt;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 &lt;A href="http://2009.visitmix.com/" mce_href="http://2009.visitmix.com/"&gt;MIX09&lt;/A&gt;, the recently-announced PDC2009 (November 17-20, 2009), and any of our future conferences.&lt;/P&gt;
&lt;P&gt;Enjoy!&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Update: I just added a &lt;/STRONG&gt;&lt;A class="" href="http://blogs.msdn.com/mswanson/pages/PDC2008Sessions.aspx" mce_href="http://blogs.msdn.com/mswanson/pages/PDC2008Sessions.aspx"&gt;&lt;STRONG&gt;PDC2008 Sessions page&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt; that lists every keynote and session with links to videos, PowerPoint decks, and sample code.&lt;/STRONG&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9027861" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>Update on My Illustrator Plug-In and Flash to XAML Conversion Tool</title><link>http://blogs.msdn.com/mswanson/archive/2008/08/28/update-on-my-illustrator-plug-in-and-flash-to-xaml-conversion-tool.aspx</link><pubDate>Fri, 29 Aug 2008 08:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8904516</guid><dc:creator>mswanson</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8904516.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8904516</wfw:commentRss><description>&lt;p&gt;&lt;img src="http://www.mikeswanson.com/blog/images/XAML%20Tools.gif" style="margin: 4px 15px;" align="right"&gt; Just over three years ago, in July, 2005, I released the first version of my &lt;a href="http://www.mikeswanson.com/XAMLExport/" mce_href="http://www.mikeswanson.com/XAMLExport/"&gt;Adobe Illustrator to Avalon/XAML Export Plug-In&lt;/a&gt;. The plug-in &lt;a href="http://blogs.msdn.com/mswanson/archive/2005/07/12/438178.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2005/07/12/438178.aspx"&gt;started off&lt;/a&gt; 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 &amp;amp; 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 &lt;a href="http://www.mikeswanson.com/XAMLExport/plugin/XAMLExport_0.17.zip" mce_href="http://www.mikeswanson.com/XAMLExport/plugin/XAMLExport_0.17.zip"&gt;the most recent release&lt;/a&gt;, that would make it a top download on &lt;a href="http://www.codeplex.com/" mce_href="http://www.codeplex.com/"&gt;CodePlex&lt;/a&gt;. That’s pretty cool.&lt;/p&gt;
&lt;p&gt;I receive e-mail about the plug-in almost every other day, and here are the most common questions and their answers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Do you plan to update the plug-in? &lt;br&gt;&lt;/b&gt;Unfortunately, my role has changed within Developer &amp;amp; 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. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Do you plan to release the source code?&lt;/b&gt; &lt;br&gt;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.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Does it run on a Mac?&lt;/b&gt; &lt;br&gt;No. I have nothing against the Mac, but I’ve never owned one, and I’ve never done any Mac development. Sorry. &lt;b&gt;Update: there is now &lt;a href="http://blogs.msdn.com/mswanson/archive/2009/02/08/test-version-of-my-illustrator-to-xaml-plug-in-for-the-mac.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2009/02/08/test-version-of-my-illustrator-to-xaml-plug-in-for-the-mac.aspx"&gt;a Mac version&lt;/a&gt; of the plug-in.&lt;/b&gt;&lt;br&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Why doesn’t it do _____?&lt;/b&gt; &lt;br&gt;Most of what it can or can’t do is listed in the &lt;i&gt;Features &lt;/i&gt;grid on &lt;a href="http://www.mikeswanson.com/XAMLExport/" mce_href="http://www.mikeswanson.com/XAMLExport/"&gt;the plug-in page&lt;/a&gt;. &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;A colleague pointed me to &lt;a href="http://www.hanselminutes.com/default.aspx?showID=138" mce_href="http://www.hanselminutes.com/default.aspx?showID=138"&gt;Hanselminutes Show #120&lt;/a&gt;. 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:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;“Every designer knows Photoshop and Illustrator inside out.”&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;“That Illustrator plug-in has been available to me and I use it—I say—daily.”&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;“It’s unbelievable. It’s such a vital tool.”&lt;/i&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;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. :-)&lt;/p&gt;
&lt;p&gt;By the way, if you’re looking for an Illustrator tool that you can extend, check out the &lt;a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=xamlxporter" mce_href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=xamlxporter"&gt;XamlXporter for Illustrator project&lt;/a&gt; on CodePlex.&lt;/p&gt;
&lt;p&gt;The other XAML-related tool I’ve written is called &lt;a href="http://www.mikeswanson.com/SWF2XAML/" mce_href="http://www.mikeswanson.com/SWF2XAML/"&gt;SWF2XAML&lt;/a&gt;, and it was &lt;a href="http://blogs.msdn.com/mswanson/archive/2006/11/21/swf2xaml-a-tool-to-convert-flash-files-to-xaml.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2006/11/21/swf2xaml-a-tool-to-convert-flash-files-to-xaml.aspx"&gt;first released in November, 2006&lt;/a&gt;. 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.&lt;/p&gt;
&lt;p&gt;According to the stats, SWF2XAML has been downloaded over 42,000 times, and its &lt;a href="http://www.mikeswanson.com/SWF2XAML/files/SWF2XAML_0.2.zip" mce_href="http://www.mikeswanson.com/SWF2XAML/files/SWF2XAML_0.2.zip"&gt;most recent version&lt;/a&gt; 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.&lt;/p&gt;
&lt;p&gt;There are three questions I receive frequently for SWF2XAML:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;I receive the following error message: “Input string was not in a correct format.” What’s up? &lt;br&gt;&lt;/b&gt;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 &lt;b&gt;English (United States)&lt;/b&gt;. This seems to do the trick every time. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Do you plan to update the tool?&lt;/b&gt; &lt;br&gt;Same answer as the Illustrator plug-in, I’m afraid. :-( &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Does it convert animation or sound?&lt;/b&gt; &lt;br&gt;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.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;If you want to know how to read a Flash file (SWF) with C#, check out my &lt;a href="http://blogs.msdn.com/mswanson/archive/2006/10/15/example-c-code-for-reading-flash-swf-files.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2006/10/15/example-c-code-for-reading-flash-swf-files.aspx"&gt;Example C# Code for Reading Flash (SWF) Files&lt;/a&gt;. For insights into how the Flash shapes are parsed and converted to XAML, check out &lt;a href="http://blogs.msdn.com/mswanson/archive/2006/02/27/539749.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2006/02/27/539749.aspx"&gt;Converting Flash Shapes to WPF&lt;/a&gt;. Last, I encourage you to experiment with another tool that converts Flash files—including both animation and sound—called &lt;a href="http://theconverted.ca/" mce_href="http://theconverted.ca/"&gt;theConverted – Swf to Xaml Converter&lt;/a&gt; (the &lt;a href="http://theconverted.ca/demo.html" mce_href="http://theconverted.ca/demo.html"&gt;Samples page&lt;/a&gt; has some good demos).&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Update: Robin Debreuil, creator of theConverted, points out that he has recently &lt;/b&gt;&lt;a href="http://www.codeplex.com/swf" class="" mce_href="http://www.codeplex.com/swf"&gt;&lt;b&gt;added the project to CodePlex&lt;/b&gt;&lt;/a&gt;&lt;b&gt;. Thanks, Robin!&lt;/b&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8904516" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category></item><item><title>PDC2008: A Day in the Life #4</title><link>http://blogs.msdn.com/mswanson/archive/2008/08/24/pdc2008-a-day-in-the-life-4.aspx</link><pubDate>Mon, 25 Aug 2008 02:42:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8892853</guid><dc:creator>mswanson</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8892853.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8892853</wfw:commentRss><description>&lt;p&gt;So soon after &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/08/17/pdc2008-a-day-in-the-life-3.aspx"&gt;A Day in the Life #3&lt;/a&gt;, 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.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;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?”&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;As you may recall from &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/06/22/pdc2008-a-day-in-the-life-2.aspx"&gt;A Day in the Life #2&lt;/a&gt;, PDC is not an event where we provide training on today’s technologies (except in our &lt;a href="http://microsoftpdc.com/Agenda/Preconference.aspx"&gt;pre-conference sessions&lt;/a&gt;). 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:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;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.&lt;/li&gt;    &lt;li&gt;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 &lt;em&gt;Deep Dive: Building an Optimized, Graphics-Intensive App in Silverlight&lt;/em&gt; where we go under the covers on geeky topics like layout, rendering, and media pipelines&lt;em&gt;.&lt;/em&gt; As you can imagine, there are very few people who can deliver this kind of content.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Question #2: “When is the ‘call for papers?’”&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;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 &lt;strong&gt;Conference&lt;/strong&gt;. Most conferences do have a &lt;a href="http://en.wikipedia.org/wiki/Call_for_papers"&gt;call for papers&lt;/a&gt; (or CFP), and it’s not obvious why PDC wouldn’t have the same mechanism to gather content.&lt;/p&gt;  &lt;p&gt;If I again refer back to &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/06/22/pdc2008-a-day-in-the-life-2.aspx"&gt;A Day in the Life #2&lt;/a&gt;, 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 &lt;em&gt;Session Suggestion Box&lt;/em&gt; 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.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Question #3: “What are your tracks?”&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Tracks are like mini-conferences that run in parallel. Each track typically covers a unique set of topics, and they can be helpful when &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/05/03/pdc-2008-conference-scheduling-using-a-genetic-algorithm.aspx"&gt;building a master agenda&lt;/a&gt; for the conference. At PDC05, for example, the six tracks were: &lt;em&gt;Presentation&lt;/em&gt;, &lt;em&gt;Data&lt;/em&gt;, &lt;em&gt;Communication&lt;/em&gt;, &lt;em&gt;Fundamentals&lt;/em&gt;, &lt;em&gt;Tools and Languages&lt;/em&gt;, and &lt;em&gt;Office System&lt;/em&gt;. For PDC2008, we have four &lt;strong&gt;internal &lt;/strong&gt;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 &lt;a href="https://sessions.microsoftpdc.com/public/sessions.aspx"&gt;our session list&lt;/a&gt;. There are other conferences that are very interested to see how this “no tracks experiment” works out. Let’s hope it works well!&lt;/p&gt;  &lt;p&gt;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 &lt;a href="http://blogs.msdn.com/mswanson/contact.aspx"&gt;contact me directly&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Until next time…&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8892853" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>PDC2008: A Day in the Life #3</title><link>http://blogs.msdn.com/mswanson/archive/2008/08/17/pdc2008-a-day-in-the-life-3.aspx</link><pubDate>Mon, 18 Aug 2008 01:20:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8875534</guid><dc:creator>mswanson</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8875534.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8875534</wfw:commentRss><description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;Before I forget, be sure to &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-To-PDC2008--Producing-a-Ginormous-Conference-in-10-Minutes-or-Less/"&gt;check&lt;/a&gt; &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-to-PDC2008-Open-Space-Opens-the-Minds/"&gt;out&lt;/a&gt; &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-to-PDC2008-Content-be-King/"&gt;the&lt;/a&gt; &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-to-PDC2008-Early-Bird-Discount-Ends-August-15/"&gt;latest&lt;/a&gt; &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-to-PDC2008-Poems-Pre-Conferences-Prosise-and-Petzold/"&gt;videos&lt;/a&gt; on Channel 9 in our weekly &lt;em&gt;Countdown to PDC2008&lt;/em&gt; series (or just look for &lt;a href="http://channel9.msdn.com/tags/PDC08/"&gt;anything tagged PDC08&lt;/a&gt;). 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 &lt;em&gt;Hard Hat Challenge &lt;/em&gt;on each episode, and winners receive a very limited edition PDC2008 t-shirt. Note that these &lt;strong&gt;are not &lt;/strong&gt;the official event shirt (especially, since the event shirt &lt;a href="http://www.microsoftpdc.com/Social/Contest/TShirt.aspx"&gt;hasn’t been selected yet&lt;/a&gt;)…these are the shirts we give to the internal Microsoft team.&lt;/p&gt;  &lt;p&gt;Okay, let’s get to &lt;em&gt;A Day in the Life #3&lt;/em&gt;. 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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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 &lt;a href="http://www.peets.com/"&gt;Peet’s Coffee &amp;amp; Tea&lt;/a&gt; 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.&lt;/p&gt;  &lt;p&gt;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).&lt;/p&gt;  &lt;p&gt;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!&lt;/p&gt;  &lt;p&gt;For the morning track meeting, I had prepared a &lt;a href="http://wordle.net/gallery/wrdl/126462/PDC2008_August_Wordle"&gt;Wordle of August PDC2008 content&lt;/a&gt; for my slide deck. Fellow friend and evangelist, &lt;a href="http://www.thespiderking.com/"&gt;Thomas Lewis&lt;/a&gt;, had pointed me to &lt;a href="http://wordle.net/"&gt;Wordle&lt;/a&gt; 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 &lt;a href="http://en.wikipedia.org/wiki/Stemming"&gt;stemming&lt;/a&gt;, 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 &lt;a href="https://sessions.microsoftpdc.com/public/sessions.aspx"&gt;our PDC2008 sessions&lt;/a&gt; (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):&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://wordle.net/gallery/wrdl/126462/PDC2008_August_Wordle"&gt;&lt;img style="margin: 15px; border-top-style: none; border-right-style: none; border-left-style: none; border-bottom-style: none" src="http://www.mikeswanson.com/blog/images/PDC2008 August Wordle.gif" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I was very happy to see that the word cloud didn’t reveal any surprises. Indeed, we use the words &lt;em&gt;Microsoft&lt;/em&gt;, &lt;em&gt;application&lt;/em&gt;, &lt;em&gt;learn&lt;/em&gt;, &lt;em&gt;new&lt;/em&gt;, and &lt;em&gt;service&lt;/em&gt; 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). :-)&lt;/p&gt;  &lt;p&gt;I also pulled data for the top 10 sessions based on the number of people who have added them to &lt;a href="https://sessions.microsoftpdc.com/public/learnmore.aspx"&gt;their My Sessions list&lt;/a&gt;. Without revealing the whole list, it shouldn’t surprise anyone that &lt;em&gt;The Future of C#&lt;/em&gt; 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 &lt;a href="http://blogs.msdn.com/mswanson/archive/2008/05/03/pdc-2008-conference-scheduling-using-a-genetic-algorithm.aspx"&gt;create a master agenda&lt;/a&gt; that allows you to see more of your favorite session in-person. Thanks in advance.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;General registration update – I quickly cover how registration is doing overall, and we touch on what percentage of attendees have signed-up for &lt;a href="http://www.microsoftpdc.com/Agenda/Preconference.aspx"&gt;pre-conference sessions&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;A reminder that internal employees need to sign up soon – we have internal deadlines too. :-) &lt;/li&gt;    &lt;li&gt;A reminder that our internal &lt;em&gt;Session Suggestion Box&lt;/em&gt; 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. &lt;/li&gt;    &lt;li&gt;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 &lt;em&gt;Lounge&lt;/em&gt; and &lt;em&gt;Hands-on Lab&lt;/em&gt; areas at the event. &lt;/li&gt;    &lt;li&gt;An update on lunch sessions – nothing obscure here…these are the sessions that happen during lunch. &lt;/li&gt;    &lt;li&gt;A discussion about the &lt;em&gt;Microsoft Pavilion &lt;/em&gt;booths and the &lt;em&gt;Lounge &lt;/em&gt;layouts - we decided to include an additional monitor in each Lounge for demos &lt;/li&gt;    &lt;li&gt;The aforementioned top 10 session list &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;We had planned to review the status of our &lt;em&gt;Hands-on Labs &lt;/em&gt;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.&lt;/p&gt;  &lt;p&gt;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. &lt;a href="http://blogs.msdn.com/henryh/"&gt;Henry Hahn&lt;/a&gt;, one of our Track Team members, happened to still be around, and he joined us to report his perspectives.&lt;/p&gt;  &lt;p&gt;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 &lt;a href="http://www.visitmix.com/2009/"&gt;MIX09&lt;/a&gt;. 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, &lt;strong&gt;again&lt;/strong&gt;…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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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 &lt;em&gt;Microsoft Pavilion &lt;/em&gt;area, the &lt;em&gt;Lounge &lt;/em&gt;area, and &lt;em&gt;Hands-on Labs&lt;/em&gt;. 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. :-)&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;To top off my Thursday, Joan Hoshino, our PDC2008 Business Owner (who you can meet in &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-to-PDC2008-Early-Bird-Discount-Ends-August-15/"&gt;this Countdown to PDC2008 video&lt;/a&gt;), caught me to ask for my help to re-layout the &lt;em&gt;Microsoft Pavilion&lt;/em&gt; 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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;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!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8875534" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>New Show: Countdown to PDC2008</title><link>http://blogs.msdn.com/mswanson/archive/2008/07/19/new-show-countdown-to-pdc2008.aspx</link><pubDate>Sun, 20 Jul 2008 08:43:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8757555</guid><dc:creator>mswanson</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8757555.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8757555</wfw:commentRss><description>&lt;p&gt;&lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-To-PDC2008--Producing-a-Ginormous-Conference-in-10-Minutes-or-Less/"&gt;&lt;img style="margin: 4px 10px" src="http://www.mikeswanson.com/blog/images/Countdown to PDC2008.jpg" align="left" border="0" /&gt;&lt;/a&gt;Jennifer Ritzinger and I have started a new show called &lt;em&gt;Countdown to PDC2008&lt;/em&gt;, and we just published our &lt;a href="http://channel9.msdn.com/posts/Dan/Countdown-To-PDC2008--Producing-a-Ginormous-Conference-in-10-Minutes-or-Less/"&gt;first episode&lt;/a&gt; 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.&lt;/p&gt;  &lt;p&gt;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.&lt;/p&gt;  &lt;p&gt;Okay…I’m just rambling now. Enjoy!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8757555" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>PDC2008: A Day in the Life #2</title><link>http://blogs.msdn.com/mswanson/archive/2008/06/22/pdc2008-a-day-in-the-life-2.aspx</link><pubDate>Mon, 23 Jun 2008 03:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8640476</guid><dc:creator>mswanson</dc:creator><slash:comments>18</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8640476.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8640476</wfw:commentRss><description>&lt;P mce_keep="true"&gt;&lt;STRONG&gt;[You can skip to the last two paragraphs if you’d like to offer suggestions]&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Here we are…one month later with the second post in a series about the PDC2008 Content Owner role. If you don’t know what a Content Owner does, I’d recommend reading &lt;A href="http://blogs.msdn.com/mswanson/archive/2008/05/19/pdc2008-a-day-in-the-life-1.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2008/05/19/pdc2008-a-day-in-the-life-1.aspx"&gt;PDC2008: A Day in the Life #1&lt;/A&gt; for context. As mentioned in the prior post, one of my responsibilities is to coordinate and drive two meetings each week with many representatives from across Microsoft. The members of this team are critical thinkers who help define, create, and shape the content we’ll present at &lt;A href="http://www.microsoftpdc.com/" mce_href="http://www.microsoftpdc.com/"&gt;PDC2008 in October&lt;/A&gt;. But how do we select our content? How do we know which sessions make sense and which ones don’t?&lt;/P&gt;
&lt;P&gt;It probably won’t surprise you to learn that many Microsoft employees have an engineering mind-set, and we tend to want everything defined in terms of an algorithm (yes, &lt;A href="http://blogs.msdn.com/mswanson/archive/2008/05/03/pdc-2008-conference-scheduling-using-a-genetic-algorithm.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2008/05/03/pdc-2008-conference-scheduling-using-a-genetic-algorithm.aspx"&gt;I’m guilty too&lt;/A&gt;). But when it comes to content, though we do have many measures and metrics, a bunch of smart people talking and arguing about what makes the most sense provides the secret ingredient. And that’s okay! That’s why we spend so much time in meetings. Embrace the power of the human brain, I say!&lt;/P&gt;
&lt;P&gt;For a big event like PDC, a lot of our product teams want to present sessions on their latest technology. As a matter of fact, I receive e-mail almost daily asking how to integrate “these 10 sessions,” or asking “how do we get our own track?” If we accepted every suggestion, we’d probably end up with over 500 sessions, and we have neither the space nor the time to deliver that many (not to mention the feedback we receive from attendees that tells us to keep the session count reasonable).&lt;/P&gt;
&lt;P&gt;Here are some of the filters we use to vet our topics:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Does the topic relate to the overall theme of the event? &lt;BR&gt;&lt;/STRONG&gt;If not, it likely won’t help us tell a strategic and coherent story, and it may even be confusing. According to our surveys, attendees use the PDC to help set the future direction of their own products and technologies, and as a result, we owe it to you to stay on-theme.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Does the topic provide guidance?&lt;/STRONG&gt; &lt;BR&gt;If the content of a session is simply a tour of an API without any guidance, we’ll weed it out. Likewise, if the content could be found in the documentation or in a SDK, it doesn’t make sense at the conference. Many times, the only place to get PDC content is actually at the event or by watching one of the session recordings.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Is the topic germane to leading-edge developers and architects? &lt;BR&gt;&lt;/STRONG&gt;PDC is the &lt;EM&gt;Professional Developers&lt;/EM&gt; Conference, after all, and the content must be useful to our primary audiences. Otherwise, we delete it.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;When does the topic’s related technology release? &lt;BR&gt;&lt;/STRONG&gt;Because we’re a strategic conference, we optimize for the future. As a result, we don’t spend as much time on shipping products or technologies. When we do, it’s a deep dive (like &lt;EM&gt;Silverlight Graphics Pipelines&lt;/EM&gt;) or an all-day &lt;A href="http://www.microsoftpdc.com/Agenda/Preconference.aspx" mce_href="http://www.microsoftpdc.com/Agenda/Preconference.aspx"&gt;pre-conference session&lt;/A&gt;. We like to say that we deliver this kind of content &lt;EM&gt;PDC Style&lt;/EM&gt;.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;How deeply can we cover the topic? &lt;BR&gt;&lt;/STRONG&gt;PDC is known for its deep content, and we have many sessions that can only be delivered by the actual Microsoft architects or developers. Other than keynotes and a handful of 200-level sessions to set context, we prefer 300-level, scenario-focused sessions and select 400-level deep dives.&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Does the topic make more sense at another event? &lt;BR&gt;&lt;/STRONG&gt;Or in other words, does it only make sense at PDC? If a session could be presented more effectively at another event like MIX or Tech·Ed, we won’t include it at PDC.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;There are other filters, but these are the most important. Also, PDC is frequently used to announce new products and technologies, and for those topics, we tend to allocate more sessions simply because the content is brand new.&lt;/P&gt;
&lt;P&gt;As you can imagine, with a “budget” that limits the total sessions we can deliver, this really becomes an exercise in weeding out inappropriate content, prioritizing the best content, and often times combining two or more sessions into one. This last tactic has a desirable outcome, because it generally forces multiple topics or technologies to come together and provide clear guidance, rationalization, or differentiation.&lt;/P&gt;
&lt;P&gt;Okay…here’s where you come in. While we could easily fill all of our session slots with topics suggested by internal teams, I’d like to ask which specific topics you’d like us to cover. To set expectations appropriately, I can’t promise that just because a topic is suggested here that it will be represented at PDC2008, but I can promise that every suggestion that is added to feedback will be reviewed and considered by someone on our content team. While we’re at it, are there any Microsoft speakers you’d really like to hear from? If you have other colleagues or friends who may have input, please send them our way.&lt;/P&gt;
&lt;P&gt;Thanks in advance for your participation!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8640476" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item><item><title>PDC 2008 Conference Scheduling Using a Genetic Algorithm</title><link>http://blogs.msdn.com/mswanson/archive/2008/05/03/pdc-2008-conference-scheduling-using-a-genetic-algorithm.aspx</link><pubDate>Sun, 04 May 2008 06:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8457395</guid><dc:creator>mswanson</dc:creator><slash:comments>12</slash:comments><comments>http://blogs.msdn.com/mswanson/comments/8457395.aspx</comments><wfw:commentRss>http://blogs.msdn.com/mswanson/commentrss.aspx?PostID=8457395</wfw:commentRss><description>&lt;P&gt;If you read my &lt;A href="http://blogs.msdn.com/mswanson/archive/2008/01/20/what-do-i-do-top-sites-mix08-and-pdc08.aspx" mce_href="http://blogs.msdn.com/mswanson/archive/2008/01/20/what-do-i-do-top-sites-mix08-and-pdc08.aspx"&gt;What Do I Do&lt;/A&gt; post, you'll know that I'm the Content Owner for this year's PDC 2008 in Los Angeles. MIX08 is behind us, and I've just recently transitioned away from my Web GO role. This means that I can now focus 100% of my time and attention on our October event. It's going to be fantastic!&lt;/P&gt;
&lt;P&gt;One of the many responsibilities I have as Content Owner is to create the master schedule for the event. This is the schedule that tells you which session is in which room and at what time. For PDC 2005, we delivered over 200 sessions at the conference, not including repeats (we run repeats of popular sessions that are filled to capacity).&lt;/P&gt;
&lt;P&gt;Because PDC is where we talk about the future of Microsoft's platform, all of the content relates in some way to our overall strategy (which is typically delivered during big keynotes and general sessions). This means that some sessions need to be scheduled ahead of others to provide foundational and prerequisite knowledge. For example, a 200-level (intermediate) session covering a specific topic should precede a 300-level (advanced) or 400-level deep-dive. The following diagram is a simplification, but it illustrates my point.&lt;/P&gt;
&lt;P&gt;&lt;IMG style="MARGIN: 10px" src="http://www.mikeswanson.com/blog/images/PDC%20Session%20Hierarchy.gif"&gt; &lt;/P&gt;
&lt;P&gt;Here are some additional constraints that must be considered when creating a master schedule:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Only one session can be presented per room during any given time slot.&lt;/LI&gt;
&lt;LI&gt;A speaker can only present one session during any given time slot (i.e. can't be in two places at the same time).&lt;/LI&gt;
&lt;LI&gt;A speaker may only be available on specific days.&lt;/LI&gt;
&lt;LI&gt;A session may require audio/video equipment that is only present in specific rooms.&lt;/LI&gt;
&lt;LI&gt;Popular sessions should be scheduled in larger rooms.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;To tackle the scheduling problem, sessions are typically grouped into &lt;EM&gt;tracks&lt;/EM&gt;. These tracks are then scheduled in parallel, almost like mini-conferences running alongside each other. While this can be effective, many studies show that conference attendees don't attend tracks; they attend sessions. In other words, it's relatively rare for someone to sit through all of the sessions in a single track. An attendee is much more likely to hop from track to track to attend the sessions they're interested in.&lt;/P&gt;
&lt;P&gt;Because of this track-hopping behavior, post-event surveys often reflect the inability of people to attend all of their favorite sessions. This is almost always due to a conflict where two or more desired sessions share the same time slot, and an attendee is forced to pick only one. For our MIX07 and MIX08 events, we tried to mitigate this undesirable outcome by publishing the &lt;A href="http://sessions.visitmix.com/" mce_href="http://sessions.visitmix.com/"&gt;session recordings&lt;/A&gt; within 24 hours of their completion (we actually averaged under 12 hours in both cases). This helps, but it's not a panacea.&lt;/P&gt;
&lt;P&gt;In an ideal world, conference participants would be able to attend all of their favorite sessions. We almost always do a pre-event survey asking people to pick the sessions they'd like to attend, and we use that data to extrapolate expected room capacities for scheduling. For PDC, where we announce many brand new technologies, we have the additional challenge of making educated guesses about how many people will want to attend sessions that aren't revealed until the first day of the conference. It's an inexact science, to be sure.&lt;/P&gt;
&lt;P&gt;For PDC 2008, we're going to try something brand new. In my spare time, I've been working on a &lt;A href="http://en.wikipedia.org/wiki/Genetic_algorithm" mce_href="http://en.wikipedia.org/wiki/Genetic_algorithm"&gt;genetic algorithm&lt;/A&gt; (you may want to review this article to understand some upcoming terms) that takes all of the above factors into account, including a couple more:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The total walking distance required for a participant to attend all of their favorite sessions. This distance can be significant in the Los Angeles Convention Center. The algorithm prefers shorter routes.&lt;/LI&gt;
&lt;LI&gt;The degree to which room capacities are "balanced." This means that—on average—the algorithm prefers schedules that leave relatively equal space in each room. Otherwise, one room may be near 100% capacity while another is only at 25%.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In my version of the algorithm, each solution in the population represents a conference schedule. The fitness function takes all of the aforementioned factors into account, and penalizes solutions with undesirable attributes. At the end of each generation, an elite group of solutions is retained, and the remainder are subject to both crossover and mutation. Generally speaking, optimal solutions are discovered in under 500 total generations.&lt;/P&gt;
&lt;P&gt;The end result is that &lt;STRONG&gt;most &lt;/STRONG&gt;conference attendees should be able to attend &lt;STRONG&gt;most &lt;/STRONG&gt;of their desired sessions, all without a rigid track structure.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Update: Channel 9 has published a &lt;A class="" href="http://channel9.msdn.com/showpost.aspx?postid=405619" mce_href="http://channel9.msdn.com/showpost.aspx?postid=405619"&gt;32-minute video interview&lt;/A&gt; of me discussing this technique.&lt;/STRONG&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8457395" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/mswanson/archive/tags/Development/default.aspx">Development</category><category domain="http://blogs.msdn.com/mswanson/archive/tags/PDC/default.aspx">PDC</category></item></channel></rss>