<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" media="screen" href="http://feeds.brokenwire.net/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:idx="urn:atom-extension:indexing" xmlns:media="http://search.yahoo.com/mrss/" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" idx:index="no" gr:dir="ltr"><!--
Content-type: Preventing XSRF in IE.

--><generator uri="http://www.google.com/reader">Google Reader</generator><id>tag:google.com,2005:reader/user/04007619721429006535/state/com.google/broadcast</id><title type="text">Brokenwire.NET :: Stuff to read</title><gr:continuation>CJ_-1ZnH458C</gr:continuation><author><name>thijs</name></author><updated>2010-03-09T09:19:25Z</updated><feedburner:info uri="brokenwire-reading" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><subtitle type="html">Here you find a collection of stuff I think is worth reading.</subtitle><logo>http://feeds.brokenwire.net/~fc/brokenwire-reading?bg=99CCFF&amp;amp;fg=444444&amp;amp;anim=0</logo><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="feeds.brokenwire.net/brokenwire-reading" /><feedburner:browserFriendly>This feed contains articles that I think are worth reading.</feedburner:browserFriendly><entry gr:crawl-timestamp-msec="1268126365378"><id gr:original-id="e2247bbd-a8ea-45d7-b15f-e334232e9347:16358">tag:google.com,2005:reader/item/8de99eaae29ba831</id><title type="html">BizTalk 2006 R2 SP1</title><published>2010-03-03T15:28:40Z</published><updated>2010-03-03T15:28:40Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/szS9tbqejmw/biztalk-2006-r2-sp1.aspx" type="text/html" /><author><name>Robert</name></author><source gr:stream-id="feed/http://blogs.blackmarble.co.uk/blogs/MainFeed.aspx?GroupID=2&amp;Type=AllBlogs"><id>tag:google.com,2005:reader/feed/http://blogs.blackmarble.co.uk/blogs/MainFeed.aspx?GroupID=2&amp;Type=AllBlogs</id><title type="html">Black Marble Blog Server</title><link rel="alternate" href="http://blogs.blackmarble.co.uk/blogs/default.aspx?GroupID=2" type="text/html" /></source><content type="html">&lt;p&gt;Microsoft has released Service Pack 1 for BizTalk 2006R2, it includes a rollup of all of the hotfixes issued so far as well as&lt;/p&gt;  &lt;p&gt;Get it &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=1768f7a3-d843-4f5b-aba7-b3d72892c16f&amp;amp;utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+MicrosoftDownloadCenter+%28Microsoft+Download+Center%29#tm"&gt;Here&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;b.&lt;/p&gt;&lt;img src="http://blogs.blackmarble.co.uk/aggbug.aspx?PostID=16358" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zS0as2-PzqgeKLpTvhW4wmtVcUo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zS0as2-PzqgeKLpTvhW4wmtVcUo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zS0as2-PzqgeKLpTvhW4wmtVcUo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zS0as2-PzqgeKLpTvhW4wmtVcUo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=szS9tbqejmw:OiZhK7CMnh4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/szS9tbqejmw" height="1" width="1"/&gt;</content><feedburner:origLink>http://blogs.blackmarble.co.uk/blogs/boss/archive/2010/03/03/biztalk-2006-r2-sp1.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267989273691"><id gr:original-id="http://www.globalnerdy.com/?p=5533">tag:google.com,2005:reader/item/8c1fd88c07aae758</id><category term="Programming" /><category term="Software and Services" /><category term="Counting Down to Seven" /><category term="Exploring XNA" /><category term="game development" /><category term="Windows Phone" /><category term="XNA" /><title type="html">Counting Down to Seven: Exploring XNA</title><published>2010-03-05T16:52:00Z</published><updated>2010-03-05T16:52:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/Hkqu3lT58-o/" type="text/html" /><content xml:base="http://www.globalnerdy.com/" type="html">&lt;p&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;a href="http://www.globalnerdy.com/tag/exploring-xna/"&gt;&lt;img style="border-right-width:0px;margin:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="exploring xna large" border="0" alt="exploring xna large" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/exploringxnalarge.jpg" width="200" height="368"&gt;&lt;/a&gt;&lt;a href="http://www.globalnerdy.com/tag/counting-down-to-seven/"&gt;&lt;img style="border-bottom:0px;border-left:0px;border-top:0px;border-right:0px" border="0" alt="Counting Down to Seven (Mar 15th at MIX 10): A series about ideas for mobile apps" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/countingdowntoseven.jpg"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Welcome to another article in the &lt;em&gt;&lt;a href="http://www.globalnerdy.com/tag/counting-down-to-seven/"&gt;Counting Down to Seven&lt;/a&gt;&lt;/em&gt; series and the first article in the &lt;em&gt;&lt;a href="http://www.globalnerdy.com/tag/exploring-xna/"&gt;Exploring XNA&lt;/a&gt;&lt;/em&gt; series — it’s like the chocolate and peanut butter of mobile development!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://blogs.msdn.com/ckindel/archive/2010/03/04/different-means-better-with-the-new-windows-phone-developer-experience.aspx"&gt;If you haven’t read Windows Phone team member Charlie Kindel’s latest blog entry yet, do so now.&lt;/a&gt;&lt;/strong&gt; In explaining what’s different in Windows Phone 7, he also lists some technologies that form it basis:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;.NET &lt;/li&gt;
&lt;li&gt;Silverlight &lt;/li&gt;
&lt;li&gt;XNA &lt;/li&gt;
&lt;li&gt;Web 2.0 standards &lt;/li&gt;
&lt;li&gt;Microsoft’s developer tools &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;That’s right: along with Silverlight, one of the core elements of Windows Phone 7 is &lt;a href="http://creators.xna.com/"&gt;XNA&lt;/a&gt;,&lt;/strong&gt; the toolset that makes it quite easy to build games for the PC, Xbox 360 and Zune. Kudos to those of you who &lt;a href="http://www.thefreedictionary.com/ratiocinate"&gt;ratiocinated&lt;/a&gt; that Silverlight and XNA would figure into Windows Phone: both are proven user interface technologies that have also shown that they’re capable of living on different platforms.&lt;/p&gt;
&lt;p&gt;I’ll cover each of the core elements of Windows Phone 7 in the fullness of time, but for now, why don’t we start with what I consider to be the &lt;em&gt;really &lt;/em&gt;fun one – XNA?&lt;/p&gt;
&lt;p&gt;(It’s not only fun – it’s the gateway to customers: according to &lt;em&gt;eMarketer&lt;/em&gt;, the number of people who play games on their phone has more than doubled in the past couple of years, from 155 million in 2007 to a predicted 340 million by the end of 2010.)&lt;/p&gt;
&lt;h3&gt;XNA: A Quick Overview&lt;/h3&gt;
&lt;p&gt;In the venerable geek tradition of using recursive acronyms to name things, XNA is short for “XNA’s Not Acronymed”. In the Microsoft-y tradition of using one name to represent a smorgasbord of things, XNA is a framework, toolset and runtime that makes it easier to build and deploy games.&lt;/p&gt;
&lt;p&gt;XNA provides a great skeleton for building 2-D and 3-D games with a set of game-centric class libraries and a straightforward programming model. Its design frees you from a lot of the &lt;a href="http://en.wiktionary.org/wiki/yak_shaving"&gt;“yak shaving”&lt;/a&gt; and related drudgery involved in game development, letting you spend more time on programming the gameplay instead. Its “simple but not stupid” quality recently allowed me to walk a workshop of Humber College students from an initial “let’s draw a static sprite on the screen” project to a pretty decent “run around the game field, dodging the flying spinning blades” game, complete with animated sprites, sound effects and soundtrack and scoring, all in about three hours. Better still, we had fun doing it.&lt;/p&gt;
&lt;h3&gt;Required and Optional Tools for XNA Development&lt;/h3&gt;
&lt;p&gt;Here’s what you need (and some nice-to-haves) to get started with XNA development:&lt;/p&gt;
&lt;h4&gt;Required&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Windows 7, Vista or XP,&lt;/strong&gt; with the latest service packs installed. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Visual Studio 2008,&lt;/strong&gt; which costs money, or &lt;strong&gt;&lt;a href="http://www.microsoft.com/express/Downloads/#2008-Visual-CS"&gt;Visual C# 2008 Express Edition&lt;/a&gt;&lt;/strong&gt;, which is free-as-in-beer. Don’t let its being free throw you off; it’s a complete IDE and more than enough for developing games. As of this writing, the 2010 editions of Visual Studio, which have not yet hit the “Release to Manufacturing” stage, don’t support XNA game development yet. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=80782277-D584-42D2-8024-893FCD9D3E82&amp;amp;displaylang=en"&gt;XNA Game Studio 3.1.&lt;/a&gt;&lt;/strong&gt; This is a set of Visual Studio add-ons and tools for developing games for Windows, Xbox 360 and Zune using XNA. This is also free-as-in-beer. &lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Optional&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A PC-compatible Xbox 360 controller&lt;/strong&gt;. This can be:
&lt;ul&gt;
&lt;li&gt;A &lt;a href="http://www.microsoft.com/canada/hardware/gaming/productdetails.aspx?pid=091"&gt;wired Xbox 360 controller&lt;/a&gt;, which plugs directly into your PC’s USB ports. &lt;/li&gt;
&lt;li&gt;A &lt;a href="http://www.xbox.com/en-CA/Hardware/x/xbox360wirelesscontroller/"&gt;wireless Xbox 360 controller&lt;/a&gt; with the &lt;a href="http://www.xbox.com/en-CA/hardware/x/xbox360wirelessgamingreceiver/"&gt;Xbox 360 Wireless Gaming Receiver&lt;/a&gt; plugged into your PC’s USB port. &lt;/li&gt;
&lt;li&gt;A &lt;a href="http://www.microsoft.com/canada/hardware/gaming/productdetails.aspx?pid=090"&gt;wireless Xbox 360 controller for Windows&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;An &lt;a href="http://www.xbox.com/en-CA/"&gt;Xbox 360&lt;/a&gt;,&lt;/strong&gt; if you want to build console games, for which you’ll need a &lt;a href="http://creators.xna.com/en-ca/membership"&gt;Premium membership with XNA Creators Club Online&lt;/a&gt; (CDN$119 per year, or CDN$59.00 for 4 months). &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A &lt;a href="http://zune.net/en-CA/"&gt;Zune&lt;/a&gt;,&lt;/strong&gt; if you want to build Zune games. You can deploy to the Zune for free. &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Platformer: XNA’s “Right Out of the Box” Game&lt;/h3&gt;
&lt;p&gt;If you’re the sort who wants to play a game before doing some game development, you’re in luck. XNA provides &lt;em&gt;Platformer&lt;/em&gt;, a fully-functional “platform jumper” game as one of its project templates. You can simply treat is as a game, but that would be a waste – its true value is that in its source code are a lot of lessons in building 2-D games with XNA. I’m going to show you how to build a &lt;em&gt;Platformer&lt;/em&gt; project.&lt;/p&gt;
&lt;p&gt;(In the screenshots below, I opted to use free Visual C# 2008 Express. If you have one of the full version of Visual Studio, the experience will be similar.)&lt;/p&gt;
&lt;p&gt;Start up Visual C# 2008 Express or Visual Studio. From the &lt;strong&gt;File&lt;/strong&gt; menu, select &lt;strong&gt;New Project…&lt;/strong&gt; You should see a dialog box like the one shown below appear.&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image31.png" width="600" height="404"&gt;&lt;/p&gt;
&lt;p&gt;In the &lt;strong&gt;Project types:&lt;/strong&gt; list on the left-hand side of the dialog box, select &lt;strong&gt;Visual C#&lt;/strong&gt; and the select &lt;strong&gt;XNA Game Studio 3.1&lt;/strong&gt; from its sub-menu. In the &lt;strong&gt;Templates &lt;/strong&gt;list on the right-hand side of the dialog box, you should see a number of game application templates. Select &lt;strong&gt;Platformer Starter Kit&lt;/strong&gt;. Fell free to the edit the contents of the &lt;strong&gt;Name:&lt;/strong&gt; textbox if you want to give your project a different from the default and click the &lt;strong&gt;OK&lt;/strong&gt; button.&lt;/p&gt;
&lt;p&gt;Visual Studio will generate a new project. You’ll know because the &lt;strong&gt;Solution Explorer&lt;/strong&gt; pane will be filled with projects and their files:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image32.png" width="600" height="412"&gt;&lt;/p&gt;
&lt;p&gt;Press &lt;strong&gt;F5&lt;/strong&gt; to run the game. In moments, you’ll be greeted by the screen below:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image33.png" width="600" height="349"&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Platformer &lt;/em&gt;looks like an homage to both platform games as well as &lt;em&gt;Raiders of the Lost Ark&lt;/em&gt;. You’re represented by an Indiana Jones-esque sprite and must reach the “Exit” sign before time runs out. You have the option of collecting gems to increase your score.&lt;/p&gt;
&lt;p&gt;You move to the next level if your reach the exit sign before time runs out:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image34.png" width="600" height="349"&gt;&lt;/p&gt;
&lt;p&gt;Here’s level two, which features more platforms, more gems and a shambling mummy who can kill you with a touch:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image35.png" width="600" height="349"&gt;&lt;/p&gt;
&lt;p&gt;Here’s level three, which is filled with platforms that you can jump through:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image36.png" width="600" height="349"&gt;&lt;/p&gt;
&lt;p&gt;Make sure you check out the code for &lt;em&gt;Platformer&lt;/em&gt;. Reading it is a great way to learn XNA game development techniques and tricks.&lt;/p&gt;
&lt;h3&gt;Hello, XNA!&lt;/h3&gt;
&lt;p&gt;Once you’re done playing &lt;em&gt;Platformer&lt;/em&gt;, you might want to try your hand at XNA development. I’m not going to show you how to write anything resembling a game in this article (I’ll do that over the next few articles in this series), but I thought I’d quickly show you how to get the world’s simplest XNA application – in the best “Hello, World!” tradition – up and running.&lt;/p&gt;
&lt;p&gt;Just as you did with &lt;em&gt;Platformer&lt;/em&gt;, click on the &lt;strong&gt;File&lt;/strong&gt; menu, select &lt;strong&gt;New Project…&lt;/strong&gt; This time, when the &lt;strong&gt;New Project&lt;/strong&gt; dialog box appears, select &lt;strong&gt;Windows Game (3.1)&lt;/strong&gt;, give the project a name in the Name text box (I chose &lt;strong&gt;HelloXNA&lt;/strong&gt;) and click &lt;strong&gt;OK&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image37.png" width="600" height="427"&gt;&lt;/p&gt;
&lt;p&gt;Visual Studio (or Visual C# Express) will then generate your game project.&lt;/p&gt;
&lt;p&gt;A newly-created XNA game project has all its code living in a single class, which is given the name Game1, which in turn is stored in the file Game1.cs. I want to rename that class to &lt;strong&gt;HelloXNA&lt;/strong&gt;. That’s easily done by moving the cursor over &lt;strong&gt;Game1&lt;/strong&gt; at the start of the class declaration, right-clicking on it, selecting &lt;strong&gt;Refactor&lt;/strong&gt; from the menu that appears, and then &lt;strong&gt;Rename…&lt;/strong&gt; from the submenu:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image38.png" width="474" height="371"&gt;&lt;/p&gt;
&lt;p&gt;I could use good ol’ search-and-replace, but it blindly taking the search term and changing it into the replacement term, no matter where it is. &lt;strong&gt;Refactor –&amp;gt; Rename…&lt;/strong&gt; is smarter; it does a true renaming of the identifier without mangling other identifiers that happen to contain the search term. It also allows you to specify whether you want to do the renaming in comments and string literals, which old-school search-and-replace doesn’t do.&lt;/p&gt;
&lt;p&gt;When the &lt;strong&gt;Rename&lt;/strong&gt; dialog box appears, enter the new name for the Game1 class, &lt;strong&gt;HelloXNA&lt;/strong&gt;, into the &lt;strong&gt;New name:&lt;/strong&gt; text box. Make sure that the &lt;strong&gt;Preview reference changes&lt;/strong&gt; checkbox is checked before clicking &lt;strong&gt;OK&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image39.png" width="511" height="301"&gt;&lt;/p&gt;
&lt;p&gt;If you checked the &lt;strong&gt;Preview reference changes&lt;/strong&gt; checkbox in the previous dialog box, you’ll see a preview of the changes that will result if you apply &lt;strong&gt;Refactor –&amp;gt; Rename…&lt;/strong&gt;. Click &lt;strong&gt;Apply&lt;/strong&gt; to finalize the renaming:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image40.png" width="562" height="451"&gt;&lt;/p&gt;
&lt;p&gt;You’ll see that the &lt;strong&gt;Game1&lt;/strong&gt; class and any references to it in the code have been changed to &lt;strong&gt;HelloXNA&lt;/strong&gt;. For consistency’s sake, we’ll rename the &lt;strong&gt;Game1.cs&lt;/strong&gt; file in which the class formerly known as &lt;strong&gt;Game1&lt;/strong&gt; to &lt;strong&gt;HelloXNA.cs&lt;/strong&gt; in the Solution Explorer:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image41.png" width="224" height="218"&gt;&lt;/p&gt;
&lt;p&gt;By default, a brand-new XNA game project without any code added to it does a very simple thing: it draws a blank screen with a cornflower blue background. If you hit &lt;strong&gt;F5&lt;/strong&gt; to run the application right now, you’ll see this:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image42.png" width="600" height="467"&gt;&lt;/p&gt;
&lt;p&gt;Now “all you have to do” is write some game code! I’ll walk you through that process over the next few articles in this series.&lt;/p&gt;
&lt;h3&gt;Next Steps&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://oreilly.com/catalog/9780596521950/"&gt;&lt;img style="margin:0px auto 10px;display:block;float:none" title="Cover of O&amp;#39;Reilly&amp;#39;s book &amp;quot;Learning XNA 3.0&amp;quot;" border="0" alt="Cover of O&amp;#39;Reilly&amp;#39;s book &amp;quot;Learning XNA 3.0&amp;quot;" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2008/12/oreilly-learning-xna-30.gif" width="180" height="236"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You &lt;em&gt;could&lt;/em&gt; wait for the next article in this series, but if you’re rarin’ to learn how to develop games with XNA, let me recommend &lt;strong&gt;&lt;em&gt;&lt;a href="http://oreilly.com/catalog/9780596521950/"&gt;Learning XNA 3.0&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;, written by Aaron Reed and published by O’Reilly. It has a 4.5-star rating at Amazon.com, which it’s earned – it’s a great introduction to XNA development. The first half of the book is devoted to 2-D game development, starting with drawing a sprite on the screen and finishing with a pretty complete game. The second half of the book adds the third dimension and works towards building a 3-D game.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://creators.xna.com/"&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/03/image8.png" width="600" height="385"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You should also get a look at &lt;strong&gt;&lt;a href="http://creators.xna.com/"&gt;XNA Creators Club&lt;/a&gt;&lt;/strong&gt;, the online community for XNA developers. It features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Links to all the downloads you need to get started developing games with XNA &lt;/li&gt;
&lt;li&gt;Starter kinds for various game genres – you get &lt;em&gt;Platformer&lt;/em&gt; with XNA; you can download &lt;a href="http://creators.xna.com/en-CA/education/starterkits/"&gt;starter kits&lt;/a&gt; for other game genres, including:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/starterkit/marblets"&gt;Marblets:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; a marble colour-matching puzzle game. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/starterkit/spacewar"&gt;Spacewar:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; the classic “spaceship vs. spaceship” game that comes in two flavours – retro and evolved. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/en-CA/starterkit/roleplayinggame"&gt;Role-Playing Game:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; A tile-based RPG engine with support for character classes, multiple party members, items and quests. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/starterkit/racinggame"&gt;Racing Game:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; A 3-D auto racing game featuring advanced graphics, audio and input processing, where you race against the ghost car for the best time. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/starterkit/shipgame"&gt;Ship Game:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; 3-D spaceship combat in a tunnel system with advanced lighting and textures, a full GPU particle system and an advanced physics engine. &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://creators.xna.com/starterkit/netrumble"&gt;Net Rumble:&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt; A 2-D shooter showcasing XNA’s new multiplayer features in an arena with asteroids, power-ups and up to 16 players. &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Forums to discuss ideas and ask questions with your fellow XNA game developers &lt;/li&gt;
&lt;li&gt;A catalog of games created by members of the XNA game developer community. You can try out their games, submit games and vote for games to be included in the Xbox Indie Games catalog, whose games can be purchased through Xbox Live. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you want to be a rock star on Windows Phone 7, you’re going to want to sharpen your XNA chops. Get a head start and take it out for a spin!&lt;/p&gt;
&lt;p&gt;This article also appears in Canadian Developer Connection.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KLukBZHG5mVU4g36eJXjF3cAy4I/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KLukBZHG5mVU4g36eJXjF3cAy4I/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KLukBZHG5mVU4g36eJXjF3cAy4I/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KLukBZHG5mVU4g36eJXjF3cAy4I/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=Hkqu3lT58-o:BriT8seKT9Q:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/Hkqu3lT58-o" height="1" width="1"/&gt;</content><author><name>Joey deVilla</name></author><source gr:stream-id="feed/http://feeds2.feedburner.com/GlobalNerdy"><id>tag:google.com,2005:reader/feed/http://feeds2.feedburner.com/GlobalNerdy</id><title type="html">Global Nerdy</title><link rel="alternate" href="http://www.globalnerdy.com" type="text/html" /></source><feedburner:origLink>http://www.globalnerdy.com/2010/03/05/counting-down-to-seven-exploring-xna/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267989251216"><id gr:original-id="http://www.globalnerdy.com/2010/03/07/counting-down-to-seven-platformer-running-on-windows-phone-7/">tag:google.com,2005:reader/item/9d73e654e41feb4a</id><category term="Hardware and Gadgets" /><category term="Programming" /><category term="Software and Services" /><category term="Counting Down to Seven" /><category term="Windows Phone" /><category term="XNA" /><title type="html">Counting Down to Seven: “Platformer” Running on Windows Phone 7</title><published>2010-03-07T05:00:00Z</published><updated>2010-03-07T05:00:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/Zu5cIeviXwk/" type="text/html" /><content xml:base="http://www.globalnerdy.com/" type="html">&lt;p&gt;&lt;/p&gt;&lt;p&gt;Welcome to another installment of &lt;a href="http://www.globalnerdy.com/tag/counting-down-to-seven/"&gt;&lt;em&gt;&lt;strong&gt;Counting Down to Seven&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;, a series of articles about mobile app development that I’m writing as we count down the days to &lt;a href="http://live.visitmix.com/"&gt;MIX10&lt;/a&gt;, when we reveal more about the up-and-coming &lt;a href="http://www.windowsphone7series.com/"&gt;Windows Phone 7 Series&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.globalnerdy.com/2010/03/05/counting-down-to-seven-exploring-xna/"&gt;In my last article in the &lt;em&gt;Counting Down to Seven&lt;/em&gt; series&lt;/a&gt;, I showed you &lt;em&gt;Platformer&lt;/em&gt;,&lt;/strong&gt; the game starter kit that comes with &lt;a href="http://creators.xna.com/en-CA/"&gt;XNA&lt;/a&gt;, the toolset/framework for developing games for Windows, XBox and Zune:&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/image33.png"&gt;&lt;/p&gt;
&lt;p&gt;Let me now show you this – &lt;strong&gt;&lt;a href="http://www.engadget.com/2010/03/06/microsoft-shows-off-single-game-running-on-windows-windows-phon/"&gt;&lt;em&gt;Platformer&lt;/em&gt; running on Windows Phone 7:&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p align="center"&gt;&lt;embed src="http://www.youtube.com/v/LQv_3fwopo8&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" allowScriptAccess="never" allowFullScreen="true" width="560" height="340" wmode="transparent" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.globalnerdy.com/tag/counting-down-to-seven/"&gt;&lt;img style="border-right-width:0px;margin:0px 0px 10px 15px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" border="0" alt="" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/02/countingdowntosevensmall1.jpg"&gt;&lt;/a&gt;That’s Microsoft’s &lt;strong&gt;&lt;a href="http://www.microsoft.com/presspass/exec/ericr/default.aspx"&gt;Eric Rudder&lt;/a&gt;&lt;/strong&gt;, Senior VP Technical Strategy demoing &lt;em&gt;Platformer&lt;/em&gt; at the TechEd Middle East conference. Not only does &lt;em&gt;Platformer&lt;/em&gt; play on Windows Phone, Windows, XBox and Zune, but he also demoed saving the game state on the phone and resuming it from the saved state on an Xbox 360.&lt;/p&gt;
&lt;p&gt;Eric also showed that even though &lt;em&gt;Platformer&lt;/em&gt; runs on a number of platforms, it’s based on a single codebase with slight platform-specific tweaks for the platforms it targets. This isn’t new: XNA has been about targeting Windows and Xbox 360 from the very beginning, and with version 3.0, the Zune was added to the set of target platforms.&lt;/p&gt;
&lt;p&gt;Take a look at this screenshot of the Solution Explorer from Visual Studio 2008 with XNA 3.1 with a &lt;em&gt;Platformer&lt;/em&gt; solution loaded. Note how the solution has three projects, one each for targeting Windows. Xbox 360 and Zune:&lt;/p&gt;
&lt;p&gt;&lt;img style="border-right-width:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto" title="image" border="0" alt="image" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/03/image11.png" width="246" height="310"&gt; &lt;/p&gt;
&lt;p&gt;All three games share the same sounds, but the Windows and Xbox 360 versions use a set of higher-resolution graphics while the Zune version uses a lower-resolution set.&lt;/p&gt;
&lt;p&gt;XNA also makes use of compiler directives to handle the differences between platforms. For example, here’s a code snippet from &lt;em&gt;Platformer&lt;/em&gt; from the Player class, which manages the player’s character in the game:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#if ZUNE
        // Constants for controling horizontal movement
        private const float MoveAcceleration = 7000.0f;
        private const float MaxMoveSpeed = 1000.0f;
        private const float GroundDragFactor = 0.38f;
        private const float AirDragFactor = 0.48f;

...

#else
        // Constants for controling horizontal movement
        private const float MoveAcceleration = 14000.0f;
        private const float MaxMoveSpeed = 2000.0f;
        private const float GroundDragFactor = 0.58f;
        private const float AirDragFactor = 0.65f;

...

#endif&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Note how the Zune version has scaled-down values of those used in the Windows and Xbox 360 versions. That’s to account for the Zune’s smaller screen.&lt;/p&gt;
&lt;p&gt;XNA on Windows Phone 7, with the ability to save game state on one platform and resume playing on another opens up a world of “ubiquitous gaming” possibilities. I hope that this will bring about some interesting mobile games and bring some attention to the XNA, which I always felt was underappreciated.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cdndevs/archive/2010/03/07/counting-down-to-seven-platformer-running-on-windows-phone-7.aspx"&gt;This article also appears in &lt;em&gt;Canadian Developer Connection&lt;/em&gt;.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/niYPcHt0cArsUPlAtm-3XvG66VQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/niYPcHt0cArsUPlAtm-3XvG66VQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/niYPcHt0cArsUPlAtm-3XvG66VQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/niYPcHt0cArsUPlAtm-3XvG66VQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=Zu5cIeviXwk:xDgXf_1wswE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/Zu5cIeviXwk" height="1" width="1"/&gt;</content><author><name>Joey deVilla</name></author><source gr:stream-id="feed/http://feeds2.feedburner.com/GlobalNerdy"><id>tag:google.com,2005:reader/feed/http://feeds2.feedburner.com/GlobalNerdy</id><title type="html">Global Nerdy</title><link rel="alternate" href="http://www.globalnerdy.com" type="text/html" /></source><feedburner:origLink>http://www.globalnerdy.com/2010/03/07/counting-down-to-seven-platformer-running-on-windows-phone-7/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267988297161"><id gr:original-id="">tag:google.com,2005:reader/item/09a0c0a2cbb33415</id><title type="html">137 years of Popular Science online free</title><published>2010-03-07T18:58:17Z</published><updated>2010-03-07T18:58:17Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/SfCoF70kLBQ/" type="text/html" /><link rel="related" href="http://hackaday.com" title="Hack a Day" /><content xml:base="http://hackaday.com/2010/03/07/137-years-of-popular-science-online-free/" type="html">&lt;blockquote&gt;Shared by  thijs 
&lt;br&gt;
Nice :)&lt;/blockquote&gt;
&lt;p&gt;&lt;img title="popsci" src="http://hackadaycom.files.wordpress.com/2010/03/popsci.jpg?w=470&amp;amp;h=233" alt="" width="470" height="233"&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.popsci.com/archives"&gt;137 years of the magazine Popular Science&lt;/a&gt; are now being hosted online by Google. You can peruse at your leisure, though you’ll have to search by keyword. We don’t see a date or issue browsing option. The cover art alone is worth your time, even if you’re not a fan of the articles. Many of us have fond memories of our childhood being influenced by the contents of these pages.&lt;/p&gt;
&lt;p&gt;[via &lt;a href="http://www.boingboing.net/2010/03/06/popular-science-arch.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed:+boingboing/iBag+%28Boing+Boing%29"&gt;BoingBoing&lt;/a&gt;]&lt;/p&gt;
&lt;br&gt;  &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/22211/"&gt;&lt;img alt="" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/22211/" border="0"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/22211/"&gt;&lt;img alt="" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/22211/" border="0"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/22211/"&gt;&lt;img alt="" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/22211/" border="0"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/22211/"&gt;&lt;img alt="" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/22211/" border="0"&gt;&lt;/a&gt; &lt;a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/22211/"&gt;&lt;img alt="" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/22211/" border="0"&gt;&lt;/a&gt; &lt;img alt="" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;amp;blog=4779443&amp;amp;post=22211&amp;amp;subd=hackadaycom&amp;amp;ref=&amp;amp;feed=1" border="0"&gt;

&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0g3CeimUYy3iwrQw0AI8bJHImYM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0g3CeimUYy3iwrQw0AI8bJHImYM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0g3CeimUYy3iwrQw0AI8bJHImYM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0g3CeimUYy3iwrQw0AI8bJHImYM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=SfCoF70kLBQ:MEH3O71ONps:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/SfCoF70kLBQ" height="1" width="1"/&gt;</content><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:annotation><content type="html">Nice :)</content><author gr:user-id="04007619721429006535" gr:profile-id="112173149201087887871"><name>thijs</name></author></gr:annotation><source gr:stream-id="user/04007619721429006535/source/com.google/link"><id>tag:google.com,2005:reader/user/04007619721429006535/source/com.google/link</id><title type="html">Hack a Day</title><link rel="alternate" href="http://hackaday.com" type="text/html" /></source><feedburner:origLink>http://hackaday.com/2010/03/07/137-years-of-popular-science-online-free/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267891743111"><id gr:original-id="91d46819-8472-40ad-a661-2c78acb4018c:9969878">tag:google.com,2005:reader/item/92cff6951690da20</id><category term="Installation" scheme="http://blogs.msdn.com/heaths/archive/tags/Installation/default.aspx" /><category term="Diagnosing" scheme="http://blogs.msdn.com/heaths/archive/tags/Diagnosing/default.aspx" /><category term="Serviceability" scheme="http://blogs.msdn.com/heaths/archive/tags/Serviceability/default.aspx" /><title type="html">Testing for components that install under TARGETDIR</title><published>2010-02-26T12:11:00Z</published><updated>2010-02-26T12:11:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/EvZ_83pyDU0/testing-for-components-that-install-under-targetdir.aspx" type="text/html" /><link rel="enclosure" href="http://blogs.msdn.com/heaths/attachment/9969878.ashx" type="application/x-zip-compressed" length="21044" /><author><name>Heath Stewart</name></author><source gr:stream-id="feed/http://blogs.msdn.com/heaths/rss.xml"><id>tag:google.com,2005:reader/feed/http://blogs.msdn.com/heaths/rss.xml</id><title type="html">Heath Stewart&amp;#39;s Blog</title><link rel="alternate" href="http://blogs.msdn.com/heaths/default.aspx" type="text/html" /></source><content type="html">&lt;p&gt;A while back &lt;a href="http://blogs.msdn.com/heaths/archive/2007/07/12/installing-to-targetdir.aspx"&gt;I explained&lt;/a&gt; how Windows Installer sets the &lt;a href="http://msdn.microsoft.com/en-us/library/aa372064(VS.85).aspx"&gt;TARGETDIR&lt;/a&gt; property to the root of the fixed drive with the most free space available. The problem is that even an attached USB external drive can appear as a fixed drive, and these may be later detached. If components are installed to that drive and the drive is detached, repairing, patching, or even uninstalling the product may fail because the components are not available and cannot be updated or removed. This is also one potential reason Windows Installer may trigger a repair after a &lt;a href="http://blogs.msdn.com/heaths/archive/2009/07/31/trouble-installing-other-products-after-visual-studio.aspx"&gt;failed resiliency check&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The problem is that this can be difficult to test in an automated testing environment. Attaching and detaching USB disks or even adding additional hard disk to a bank of test machines may be prohibitive. Adding disks must also survive a reboot, or you may run into a race condition where the drive isn’t ready before it is expected to be available. Fortunately, Windows 7 and Windows Server 2008 R2 lets us &lt;a href="http://blogs.msdn.com/heaths/archive/2009/10/13/booting-windows-to-a-differencing-virtual-hard-disk.aspx"&gt;attach virtual disks&lt;/a&gt; that are indistinguishable from physical hard disks to Windows Installer.&lt;/p&gt;
&lt;p&gt;With Windows 7 or Windows Server 2008 R2 installed you can use diskpart.exe to create, format, and attach a virtual disk. Diskpart.exe can also be run in scripting mode so it can easily be automated. The idea is that you will create a dynamic virtual disk, create a volume in it, format it, then attach it. It’s important that you also assign a drive letter because Windows Installer will only enumerate drives letters.&lt;/p&gt;
&lt;p&gt;A script for diskpart.exe may look like the following.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;create vdisk file=c:\test.vhd maximum=1048576 type=expandable &lt;br&gt;select vdisk file=c:\test.vhd &lt;br&gt;attach vdisk &lt;br&gt;create partition primary &lt;br&gt;format fs=ntfs label=test quick &lt;br&gt;assign letter=v&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;If you were to put this into a file named, for example, “attach.txt”, you could run it using the following command in an elevated process. On a fairly average machine, this only took about 13 seconds to execute.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;diskpart.exe /s attach.txt&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;You should adjust the maximum property setting (in &lt;a href="http://en.wikipedia.org/wiki/Mebibyte"&gt;MiB&lt;/a&gt;) to be larger than any other disk. The actual VHD before being formatted will be very small – less than 100 KB. Even when formatted, it’s still only a few MBs large. As long as you do not consume more space than remaining on the host disk or attempt to use differencing disks that parent this dynamic disk, you will not exhaust disk space.&lt;/p&gt;
&lt;p&gt;After this step is complete, simply install your product packages and check the attached virtual disk partition (V: in this example) for unexpected directories or files. This is a good indication that files are installing under TARGETDIR without being redirected using either standard Windows Installer directories like &lt;a href="http://msdn.microsoft.com/en-us/library/aa370881(VS.85).aspx"&gt;ProgramFilesFolder&lt;/a&gt; or &lt;a href="http://msdn.microsoft.com/en-us/library/aa367852(VS.85).aspx"&gt;custom actions to set directories&lt;/a&gt;, though it’s best to &lt;a href="http://blogs.msdn.com/heaths/archive/2006/06/14/be-careful-or-even-avoid-using-type-35-custom-actions.aspx"&gt;avoid type 35 custom actions&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This is also evident in a verbose installation log, as you can see below.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;MSI (c) (7C:FC) [03:01:02:363]: PROPERTY CHANGE: Adding ROOTDRIVE property. Its value is 'V:\'. &lt;br&gt;... &lt;br&gt;Action start 3:01:02: CostFinalize. &lt;br&gt;... &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding TARGETDIR property. Its value is 'V:\'. &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding PFiles property. Its value is 'V:\Program Files\'. &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding ManufacturerDir property. Its value is 'V:\Program Files\Heath Stewart\'. &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding InstallDir property. Its value is 'V:\Program Files\Heath Stewart\Bad Product\'. &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding ManufacturerFolder property. Its value is 'C:\Program Files (x86)\Heath Stewart\'. &lt;br&gt;MSI (c) (7C:FC) [03:01:02:394]: PROPERTY CHANGE: Adding INSTALLDIR property. Its value is 'C:\Program Files (x86)\Heath Stewart\Bad Product\'. &lt;br&gt;... &lt;br&gt;Action ended 3:01:02: CostFinalize. Return value 1.&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;If you find that errant files exist on the larger virtual disk, check the installation source for common problems like creating a directory named “Program Files” with a non-standard identifier like “PFiles”. If no custom actions otherwise set this directory, also check that it is a secure public property and set by default in the package. Even if you expect to pass in the directory, you should always author a default directory just in case. Users may attempt to install your package directly, or advertised installs may not be passed this directory property if triggered automatically for features and components being installed.&lt;/p&gt;
&lt;p&gt;Attached is sample authoring and a package used to generate the log above, along with the full installation log. The package contains an example of a component that installs under ProgramFilesFolder, as well as a directory mistakenly authored as “Program Files” without actually targeting the real Program Files folder (which may not even be named “Program Files”).&lt;/p&gt;
&lt;p&gt;Before recycling the machine, be sure to detach the virtual disk which can also be scripted through diskpart.exe containing the following example commands.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;select vdisk file=c:\test.vhd &lt;br&gt;detach vdisk&lt;/code&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9969878" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8h_-MoZov9-cet3_xAzO_YYhNwM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8h_-MoZov9-cet3_xAzO_YYhNwM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8h_-MoZov9-cet3_xAzO_YYhNwM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8h_-MoZov9-cet3_xAzO_YYhNwM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=EvZ_83pyDU0:p34xXWyfLzQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/EvZ_83pyDU0" height="1" width="1"/&gt;</content><feedburner:origLink>http://blogs.msdn.com/heaths/archive/2010/02/26/testing-for-components-that-install-under-targetdir.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267607820811"><id gr:original-id="http://www.istartedsomething.com/?p=4036">tag:google.com,2005:reader/item/7cb409de8215e2e2</id><category term="blog" /><title type="html">Geosense for Windows: location, location, location</title><published>2010-03-01T06:38:18Z</published><updated>2010-03-01T06:38:18Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/WsX4sqF6Vl4/" type="text/html" /><content xml:base="http://www.istartedsomething.com/" type="html">&lt;p style="text-align:center"&gt;&lt;img src="http://www.istartedsomething.com/wp-content/uploads/2010/03/geosense.jpg" alt="" title="geosense"&gt;&lt;/p&gt;
&lt;p&gt;Unless you’ve been living under a rock without any GPS reception, you might have heard of &lt;a href="http://gigaom.com/2009/04/27/iphone-is-boosting-demand-for-location-based-services/"&gt;location-based applications&lt;/a&gt;. From the fun to the useful, letting software know where you are in the world is a powerful way to make information more relevant, but why should smartphones have all the fun?&lt;/p&gt;
&lt;p&gt;Half a year ago, &lt;a href="http://www.mozilla.com/en-US/firefox/geolocation/"&gt;Firefox 3.5 introduced support for geolocation&lt;/a&gt;, a feature allowed the browser to pinpoint the location of the computer using WiFi triangulation. After personally witnessing how well it worked (it located my home, in fact, my room in the house where I use the computer), I started bugging my partner in crime, &lt;a href="http://www.withinwindows.com/"&gt;Rafael Rivera&lt;/a&gt;, to port this feature to the platform-level, where it belongs.&lt;/p&gt;
&lt;p&gt;As a matter of fact, Windows 7, like most other current generation OSes, has a &lt;a href="http://msdn.microsoft.com/en-us/library/dd318936%28VS.85%29.aspx"&gt;built-in location platform and API&lt;/a&gt; that allow third-party developers to build native application that are location-aware. However unlike other OSes, specifically OS X, Microsoft made the fatal flaw of not &lt;a href="http://cocoawithlove.com/2009/09/whereismymac-snow-leopard-corelocation.html"&gt;integrating a default geolocation provider&lt;/a&gt;, thus developers could not take advantage of this until Windows 7 PCs started shipping with GPS sensors, which hasn’t happened yet. &lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.istartedsomething.com/wp-content/uploads/2010/03/geosenselogo.jpg" alt="" title="geosenselogo" style="float:right;margin-left:15px"&gt;Instead of waiting for OEMs to pick up the ball, Rafael and I are offering an alternative.&lt;/p&gt;
&lt;p&gt;Over the past several weeks, we (&lt;a href="http://www.withinwindows.com/2010/03/01/geosense-the-first-really-really-cool-windows-sensor/"&gt;Rafael did most of the work&lt;/a&gt;, I shouted at him) built &lt;a href="http://www.geosenseforwindows.com/"&gt;Geosense for Windows&lt;/a&gt;, a Windows 7 sensor driver that connects the location platform with geolocation service providers who include but is not limited to Google Location Services. These geolocation providers work by matching and triangulating known cell towers and wireless access points in its database to estimate a latitude and longitude, with remarkable accuracy and scope.&lt;/p&gt;
&lt;p&gt;Today we are releasing Geosense for Windows for free. We believe by offering this tool for free will help enable the most possible Windows 7 PCs to be location-aware, and in turn add incentive for third-party developers to take advantage of the Windows 7 location APIs and make their applications stand out.&lt;/p&gt;
&lt;p&gt;That’s enough talk from me, &lt;a href="http://www.geosenseforwindows.com/"&gt;now go get the bits&lt;/a&gt;.&lt;/p&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?i=enUl3Ly64Lw:m0dneoeAN3w:D7DqB2pKExk" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?i=enUl3Ly64Lw:m0dneoeAN3w:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?i=enUl3Ly64Lw:m0dneoeAN3w:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?d=qj6IDK7rITs" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?i=enUl3Ly64Lw:m0dneoeAN3w:gIN9vFwOqvQ" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/istartedsomething?a=enUl3Ly64Lw:m0dneoeAN3w:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/istartedsomething?d=cGdyc7Q-1BI" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/istartedsomething/~4/enUl3Ly64Lw" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Ors7faT2IqIpTHA6IOrJ70zW1N0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ors7faT2IqIpTHA6IOrJ70zW1N0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Ors7faT2IqIpTHA6IOrJ70zW1N0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ors7faT2IqIpTHA6IOrJ70zW1N0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=WsX4sqF6Vl4:d2kjv8ey5AQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/WsX4sqF6Vl4" height="1" width="1"/&gt;</content><author><name>Long Zheng</name></author><gr:likingUser>18158899507117698729</gr:likingUser><gr:likingUser>03003240924520908167</gr:likingUser><gr:likingUser>01247944911293604451</gr:likingUser><gr:likingUser>17778994045031379143</gr:likingUser><gr:likingUser>05190409614834223973</gr:likingUser><gr:likingUser>00710783358278984694</gr:likingUser><gr:likingUser>01037698019272001165</gr:likingUser><gr:likingUser>05329390960098930709</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/istartedsomething"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/istartedsomething</id><title type="html">istartedsomething</title><link rel="alternate" href="http://www.istartedsomething.com" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/istartedsomething/~3/enUl3Ly64Lw/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267606643798"><id gr:original-id="http://www.secretGeek.net/sysi_launch.asp">tag:google.com,2005:reader/item/519a5478ef9c25c0</id><title type="html">Sysi: the ultimate administrators toolkit</title><published>2010-03-02T22:30:56Z</published><updated>2010-03-02T22:30:56Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/6W82SehFY4w/sysi_launch.asp" type="text/html" /><author><name>Leon Bambrick</name></author><gr:likingUser>14839672098688235732</gr:likingUser><gr:likingUser>17661191718786571849</gr:likingUser><gr:likingUser>18308872264579086555</gr:likingUser><gr:likingUser>04577018858389173626</gr:likingUser><gr:likingUser>01265686916392049817</gr:likingUser><gr:likingUser>07476732026107928770</gr:likingUser><gr:likingUser>00321597721557820145</gr:likingUser><gr:likingUser>03440358504978440795</gr:likingUser><source gr:stream-id="feed/http://secretgeek.net/rss.asp"><id>tag:google.com,2005:reader/feed/http://secretgeek.net/rss.asp</id><title type="html">secretGeek</title><link rel="alternate" href="http://secretGeek.net/index.asp" type="text/html" /></source><content type="html">&lt;p&gt;I saw a typo in a magazine where someone referred to &lt;a href="http://www.Sysinternals.com"&gt;SysInternals&lt;/a&gt; as '&lt;em&gt;Sysinternal&lt;/em&gt;' (singular... they left the 's' off the end)&lt;/p&gt;
 
&lt;img src="http://secretGeek.net/image/sysinternal.jpg" alt="Take control of Windows with Sysinternal, the ultimate administrators toolkit" style="border:1px solid #CCC;margin:10px"&gt; 
 
&lt;p&gt;And this gave me a random idea: what if &lt;a href="http://www.Sysinternals.com"&gt;SysInternals&lt;/a&gt; provided a &lt;em&gt;single&lt;/em&gt; tool, called '&lt;code&gt;Sysinternal&lt;/code&gt;'.&lt;/p&gt;
 

&lt;img src="http://secretGeek.net/image/richardPryor_supermanIII.jpg" alt="richard pryor" style="border:1px solid #CCC;margin:10px;float:right;clear:right"&gt; 
 &lt;p&gt;And it does everything. Just &lt;em&gt;everything&lt;/em&gt;. Like the computer that Richard Pryor's character builds in Superman III. Got it?&lt;/p&gt;
 
&lt;p&gt;So I told &lt;a href="http://jCooney.net"&gt;JoCo Loco&lt;/a&gt; this idea -- and he'd &lt;a href="http://en.wikipedia.org/wiki/Be_Kind_Rewind"&gt;sweded up&lt;/a&gt; a &lt;strong&gt;Compleat Design &lt;/strong&gt; within seconds:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;SysInternal&lt;/code&gt; is a console app. The first parameter is the name of the specific SysInternals tool you want to use. The remaining parameters are passed to that tool.

&lt;p&gt;You don't need to have all the tools from SysInternals on your machine already. &lt;code&gt;SysInternal&lt;/code&gt; will get what's needed, by downloading from &lt;a href="http://Live.Sysinternals.com"&gt;Live.Sysinternals.com&lt;/a&gt;.&lt;/p&gt;
 &lt;a href="http://secretGeek.net/image/sysi.png"&gt;&lt;img src="http://secretGeek.net/image/sysi_th.png" alt="Sysi.exe: ladies dont know bout my console colors" style="border:1px solid #CCC;margin:10px;float:right"&gt;&lt;/a&gt;

&lt;p&gt;And if you pass the parameter "&lt;code&gt;-?&lt;/code&gt;" (or no parameters) then it will screen-scrape &lt;a href="http://Live.Sysinternals.com"&gt;Live.SysInternals.com&lt;/a&gt; to tell you all the available tools.&lt;/p&gt;

&lt;p&gt;I quickly found that the name '&lt;code&gt;SysInternal.exe&lt;/code&gt;' was too long to type out, so I shortened it to '&lt;code&gt;Sysi.exe&lt;/code&gt;', pronounced &lt;em&gt;Sissy.&lt;/em&gt; Hopefully this also stops me from violating their trademark. (Mark Russinovich is not a Sissy. Chuck Norris wishes he was Mark Russinovich)&lt;/p&gt;
 
&lt;p&gt;I've released the code on CodePlex, at &lt;a href="http://sysi.CodePlex.Com"&gt;sysi.CodePlex.Com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Go get it!&lt;/strong&gt;&lt;/p&gt;

&lt;a href="http://sysi.codeplex.com/releases/view/41371"&gt;
&lt;img src="http://secretGeek.net/image/downloadsysi.png" alt="Download sysi right now" style="border:0px solid #FFF"&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rZuuF9kOWQha_3FcfKWqxOlEx9s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rZuuF9kOWQha_3FcfKWqxOlEx9s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rZuuF9kOWQha_3FcfKWqxOlEx9s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rZuuF9kOWQha_3FcfKWqxOlEx9s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=6W82SehFY4w:l_CfptYTAgg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/6W82SehFY4w" height="1" width="1"/&gt;</content><feedburner:origLink>http://www.secretGeek.net/sysi_launch.asp</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267545163960"><id gr:original-id="http://xkcd.com/705/">tag:google.com,2005:reader/item/28851cecd17d1358</id><title type="html">Devotion to Duty</title><published>2010-02-22T00:00:00Z</published><updated>2010-02-22T00:00:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/tZmHqKdZzUI/" type="text/html" /><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>04518270312579877516</gr:likingUser><gr:likingUser>01771930770957618540</gr:likingUser><gr:likingUser>03053593998517475859</gr:likingUser><gr:likingUser>12200669329553338968</gr:likingUser><gr:likingUser>05146396358911373409</gr:likingUser><gr:likingUser>10097449541123107267</gr:likingUser><gr:likingUser>16924624056677352790</gr:likingUser><gr:likingUser>17540943444822231002</gr:likingUser><gr:likingUser>12048903629668643156</gr:likingUser><gr:likingUser>02229757710438706599</gr:likingUser><gr:likingUser>01610692450773911497</gr:likingUser><gr:likingUser>00549450583712858461</gr:likingUser><gr:likingUser>10813913244897653501</gr:likingUser><gr:likingUser>06232494876399762403</gr:likingUser><gr:likingUser>03695574807879513367</gr:likingUser><gr:likingUser>11579023625843147415</gr:likingUser><gr:likingUser>12407078890550558210</gr:likingUser><gr:likingUser>01654176005517679405</gr:likingUser><gr:likingUser>06897063214309156193</gr:likingUser><gr:likingUser>04890365195356612414</gr:likingUser><gr:likingUser>09879977286868249236</gr:likingUser><gr:likingUser>13970200089567918680</gr:likingUser><gr:likingUser>03699290184511480278</gr:likingUser><gr:likingUser>04193759119984830678</gr:likingUser><gr:likingUser>04603607502933300923</gr:likingUser><gr:likingUser>03883334651421922267</gr:likingUser><gr:likingUser>16762222499418127313</gr:likingUser><gr:likingUser>18012391610902179339</gr:likingUser><gr:likingUser>16980771692204937757</gr:likingUser><gr:likingUser>00720760523285763143</gr:likingUser><gr:likingUser>00615436875482428492</gr:likingUser><gr:likingUser>05917510339366173364</gr:likingUser><gr:likingUser>05449584387752561587</gr:likingUser><gr:likingUser>08545142002587714506</gr:likingUser><gr:likingUser>04221709397503559845</gr:likingUser><gr:likingUser>05851758684375362249</gr:likingUser><gr:likingUser>13154164528133514907</gr:likingUser><gr:likingUser>15287009611748534585</gr:likingUser><gr:likingUser>04932677836190506892</gr:likingUser><gr:likingUser>10109760066793457520</gr:likingUser><gr:likingUser>10465133125952545147</gr:likingUser><gr:likingUser>15625128880607042984</gr:likingUser><gr:likingUser>06902072281597637603</gr:likingUser><gr:likingUser>09853250092821761803</gr:likingUser><gr:likingUser>05855388355200318357</gr:likingUser><gr:likingUser>17505597593895003222</gr:likingUser><gr:likingUser>05544696372253174193</gr:likingUser><gr:likingUser>14298926834408922932</gr:likingUser><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>05722756474347514459</gr:likingUser><gr:likingUser>06294111919047060995</gr:likingUser><gr:likingUser>14628806662419495879</gr:likingUser><gr:likingUser>10068978682744933023</gr:likingUser><gr:likingUser>11226777490679887005</gr:likingUser><gr:likingUser>17589659183183612112</gr:likingUser><gr:likingUser>12447715471119539850</gr:likingUser><gr:likingUser>10783549500403634095</gr:likingUser><gr:likingUser>08576876709465968323</gr:likingUser><gr:likingUser>08531365088621328236</gr:likingUser><gr:likingUser>16863531421715853419</gr:likingUser><gr:likingUser>07115622657741000284</gr:likingUser><gr:likingUser>11543758731783206248</gr:likingUser><gr:likingUser>15745446205507051623</gr:likingUser><gr:likingUser>05577970665310203295</gr:likingUser><gr:likingUser>00003135519036468353</gr:likingUser><gr:likingUser>00824263458792695219</gr:likingUser><gr:likingUser>11763108107664945945</gr:likingUser><gr:likingUser>04372609172705522422</gr:likingUser><gr:likingUser>03966360659850006803</gr:likingUser><gr:likingUser>10325353216493276950</gr:likingUser><gr:likingUser>12424461353523277535</gr:likingUser><gr:likingUser>02983828073182778386</gr:likingUser><gr:likingUser>08575116120295621502</gr:likingUser><gr:likingUser>11538742173626556905</gr:likingUser><gr:likingUser>05876104222024720665</gr:likingUser><gr:likingUser>09751905383927103537</gr:likingUser><gr:likingUser>06979079520620016938</gr:likingUser><gr:likingUser>08528938506188857316</gr:likingUser><gr:likingUser>01277714912539793288</gr:likingUser><gr:likingUser>05511520161485541254</gr:likingUser><gr:likingUser>09644707953329393318</gr:likingUser><gr:likingUser>15781531552000235384</gr:likingUser><gr:likingUser>06424346730389475485</gr:likingUser><gr:likingUser>17899023586888669665</gr:likingUser><gr:likingUser>08051080175095310821</gr:likingUser><gr:likingUser>18081381663266194029</gr:likingUser><gr:likingUser>09634862829305122919</gr:likingUser><gr:likingUser>09658201965936813393</gr:likingUser><gr:likingUser>15763336303548159413</gr:likingUser><gr:likingUser>05722082718764574517</gr:likingUser><gr:likingUser>09225792983377770702</gr:likingUser><gr:likingUser>12424180753280023234</gr:likingUser><gr:likingUser>13833541379917089398</gr:likingUser><gr:likingUser>01774648822852375257</gr:likingUser><gr:likingUser>02104226744151406075</gr:likingUser><gr:likingUser>04034693958115222640</gr:likingUser><gr:likingUser>10707737520518081770</gr:likingUser><gr:likingUser>11048784484386332815</gr:likingUser><gr:likingUser>14501525858460455182</gr:likingUser><gr:likingUser>15828000183987126275</gr:likingUser><source gr:stream-id="feed/http://xkcd.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://xkcd.com/atom.xml</id><title type="html">xkcd.com</title><link rel="alternate" href="http://xkcd.com/" type="text/html" /></source><content type="html">&lt;img src="http://imgs.xkcd.com/comics/devotion_to_duty.png" title="The weird sense of duty really good sysadmins have can border on the sociopathic, but it&amp;#39;s nice to know that it stands between the forces of darkness and your cat blog&amp;#39;s servers." alt="The weird sense of duty really good sysadmins have can border on the sociopathic, but it&amp;#39;s nice to know that it stands between the forces of darkness and your cat blog&amp;#39;s servers."&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EEJrSjI6Oayy1VPhCms_7a1L-3w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EEJrSjI6Oayy1VPhCms_7a1L-3w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/EEJrSjI6Oayy1VPhCms_7a1L-3w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EEJrSjI6Oayy1VPhCms_7a1L-3w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=tZmHqKdZzUI:DcpaJ8jTPvM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/tZmHqKdZzUI" height="1" width="1"/&gt;</content><feedburner:origLink>http://xkcd.com/705/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267545026115"><id gr:original-id="http://www.heyokay.com/?p=942">tag:google.com,2005:reader/item/1b8c483186c477ec</id><category term="Uncategorized" scheme="http://www.heyokay.com" /><title type="html">Be honest now…</title><published>2010-03-02T05:38:44Z</published><updated>2010-03-02T05:38:44Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/Y16i0IpqvjE/" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/be-honest-now/#comments" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/be-honest-now/feed/atom/" type="application/atom+xml" /><content xml:base="http://www.heyokay.com/2010/be-honest-now/" xml:lang="en" type="html">&lt;p&gt;&lt;center&gt;&lt;img src="http://www.heyokay.com/images/be%20honest%20now.jpg"&gt;&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xodMY4wZp2WCqhW8DgDxsPPZ74g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xodMY4wZp2WCqhW8DgDxsPPZ74g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xodMY4wZp2WCqhW8DgDxsPPZ74g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xodMY4wZp2WCqhW8DgDxsPPZ74g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=Y16i0IpqvjE:CWlAhejVGqA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/Y16i0IpqvjE" height="1" width="1"/&gt;</content><author><name>Curtis</name></author><source gr:stream-id="feed/http://www.heyokay.com/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.heyokay.com/feed/atom/</id><title type="html">Hey Okay</title><link rel="alternate" href="http://www.heyokay.com/" type="text/html" /></source><feedburner:origLink>http://www.heyokay.com/2010/be-honest-now/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1267544963645"><id gr:original-id="91d46819-8472-40ad-a661-2c78acb4018c:9970370">tag:google.com,2005:reader/item/cf6290376145539e</id><category term="TFS" scheme="http://blogs.msdn.com/granth/archive/tags/TFS/default.aspx" /><category term="VS2010" scheme="http://blogs.msdn.com/granth/archive/tags/VS2010/default.aspx" /><category term="VSTS Administering" scheme="http://blogs.msdn.com/granth/archive/tags/VSTS+Administering/default.aspx" /><category term="PowerShell" scheme="http://blogs.msdn.com/granth/archive/tags/PowerShell/default.aspx" /><title type="html">TFS2010: Create a new Team Project Collection from Powershell</title><published>2010-02-27T18:48:34Z</published><updated>2010-02-27T18:48:34Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/cCD4Cwbs89M/tfs2010-create-a-new-team-project-collection-from-powershell.aspx" type="text/html" /><author><name>grantholliday</name></author><gr:likingUser>07086589106951273591</gr:likingUser><gr:likingUser>17462541471796605784</gr:likingUser><source gr:stream-id="feed/http://blogs.msdn.com/granth/rss.xml"><id>tag:google.com,2005:reader/feed/http://blogs.msdn.com/granth/rss.xml</id><title type="html">Grant Holliday&amp;#39;s Blog</title><link rel="alternate" href="http://blogs.msdn.com/granth/default.aspx" type="text/html" /></source><content type="html">&lt;p&gt;Team Foundation Server 2010 has the great new Administration Console, however one of the shortcomings of it is that you have to run it on the TFS Application Tier itself. The team wants to have a tool that allows remote server administration, however it required more time than we had for this release. Now because I hate logging on to servers, I’ve started seeking out ways to do common tasks remotely.&lt;/p&gt;  &lt;p&gt;Fortunately, the product was architected in a way that you can almost do everything in the admin console via web services and the TFS client &amp;amp; server APIs. &lt;/p&gt;  &lt;p&gt;To &lt;a href="http://msdn.microsoft.com/en-us/library/dd273726(VS.100).aspx"&gt;Create a Team Project Collection&lt;/a&gt;, the normal way is to logon to the server, open the admin console and click through the UI.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/granth/WindowsLiveWriter/TFS2010CreateanewTeamProjectCollectionfr_9801/image_2.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px" title="Create TPC UI" border="0" alt="Create TPC UI" src="http://blogs.msdn.com/blogfiles/granth/WindowsLiveWriter/TFS2010CreateanewTeamProjectCollectionfr_9801/image_thumb.png" width="504" height="303"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Using Powershell&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Fortunately, I found a script from &lt;a href="http://blogs.msdn.com/chrisid/"&gt;Chris Sidi&lt;/a&gt; and all I had to do was &lt;a href="http://blogs.msdn.com/granth/archive/2009/12/07/tfs2010-object-model-api-changes-after-beta-2.aspx"&gt;make it compatible with the changes that we introduced after Beta2&lt;/a&gt;. All you have to do is start Windows PowerShell on your local workstation, replace the highlighted values and run the following script. You can also run this on the server itself, however you will need to start PowerShell using “Run as Administrator”.&lt;/p&gt;  &lt;blockquote&gt;   &lt;pre&gt;# Load client OM assembly.
[Reflection.Assembly]::Load(&amp;quot;Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&amp;quot;);

$instanceBaseUrl = &amp;quot;&lt;font color="#ff0000"&gt;http://tfsserver:8080/tfs/&lt;/font&gt;&amp;quot;;
$tfsServer = new-object Microsoft.TeamFoundation.Client.TfsConfigurationServer $instanceBaseUrl;

$tpcSvc = $tfsServer.GetService([Microsoft.TeamFoundation.Framework.Client.ITeamProjectCollectionService]);
$job = $tpcSvc.QueueCreateCollection(
    &amp;quot;&lt;font color="#ff0000"&gt;MyCollection&lt;/font&gt;&amp;quot;,      # collection name.
    &amp;quot;&amp;quot;,                  # description.
    $false,              # don&amp;#39;t make this the default collection.
    &amp;quot;~/&lt;font color="#ff0000"&gt;MyCollection&lt;/font&gt;/&amp;quot;,   # virtual directory.
    &amp;quot;Started&amp;quot;,           # State after creation.
    $null,               # no tokens.
    &amp;quot;Server=&lt;font color="#ff0000"&gt;SQLSERVER&lt;/font&gt;;Integrated Security=SSPI;&amp;quot;,       # The SQL instance to create the collection on. Specify SERVER\INSTANCE if not using default instance
    $null,               # null because the collection database doesn&amp;#39;t already exist.
    $null)               # null because the collection database doesn&amp;#39;t already exist.

$collection = $tpcSvc.WaitForCollectionServicingToComplete($job)&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Execution of the last line will block until the collection is completed. If the collection cannot be completed for any reason, you’ll receive an exception:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Exception calling &amp;quot;WaitForCollectionServicingToComplete&amp;quot; with &amp;quot;1&amp;quot; argument(s): &amp;quot;The collection servicing job did not succeed.&amp;quot;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If this is the case, then you’ll have to open up the admin console and look through the “Logs” node to see why it failed.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9970370" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Jel6zCubhZ9j9cHB-wZbQXzdHrA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jel6zCubhZ9j9cHB-wZbQXzdHrA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Jel6zCubhZ9j9cHB-wZbQXzdHrA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jel6zCubhZ9j9cHB-wZbQXzdHrA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=cCD4Cwbs89M:JHjQmzkTv-c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/cCD4Cwbs89M" height="1" width="1"/&gt;</content><feedburner:origLink>http://blogs.msdn.com/granth/archive/2010/02/27/tfs2010-create-a-new-team-project-collection-from-powershell.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1266938869576"><id gr:original-id="tag:blogger.com,1999:blog-7744200.post-2410310110339016043">tag:google.com,2005:reader/item/f236f139d15b65f8</id><category term="ParallelComputing" scheme="http://www.blogger.com/atom/ns#" /><category term="GPGPU" scheme="http://www.blogger.com/atom/ns#" /><title type="html">DirectCompute</title><published>2010-02-20T00:00:00Z</published><updated>2010-02-20T00:00:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/J9bgbejO-sc/directcompute.html" type="text/html" /><author><name>noreply@blogger.com (The Moth)</name></author><gr:likingUser>11870941234204551385</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/DanielMoth"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/DanielMoth</id><title type="html">The Moth</title><link rel="alternate" href="http://www.danielmoth.com/Blog/index.htm" type="text/html" /></source><content type="html">In my previous blog post I introduced the concept of &lt;a href="http://www.danielmoth.com/Blog/2010/02/gpgpu.html"&gt;GPGPU&lt;/a&gt; ending with:&lt;br&gt;&lt;blockquote&gt;&lt;em&gt;On Windows, there is already a cross-GPU-vendor way of programming GPUs and that is the Direct X API. Specifically, on Windows Vista and Windows 7, the DirectX 11 API offers a dedicated subset of the API for GPGPU programming: DirectCompute. You use this API on the CPU side, to set up and execute the kernels on the GPU. The kernels are written in a language called HLSL (High Level Shader Language). You can use DirectCompute with HLSL to write a "compute shader", which is the term DirectX uses for what I've been referring to in this post as "kernel".&lt;/em&gt;&lt;/blockquote&gt;In this post I want to share some links to get you started with DirectCompute and HLSL.&lt;br&gt;&lt;br&gt;&lt;strong&gt;1.&lt;/strong&gt; Watch the recording of the PDC 09 session: &lt;a href="http://microsoftpdc.com/Sessions/P09-16"&gt;DirectX11 DirectCompute&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;strong&gt;2.&lt;/strong&gt; If session recordings is your thing there are two more on DirectCompute from nvidia's GTC09 conference &lt;a href="http://nvidia.fullviewmedia.com/GPU2009/1001-crystal-1015.html"&gt;1015&lt;/a&gt; (&lt;a href="http://www.nvidia.com/content/GTC/documents/1015_GTC09.pdf"&gt;pdf&lt;/a&gt;, &lt;a href="http://www.nvidia.com/content/GTC/videos/GTC09-1015.mp4"&gt;mp4&lt;/a&gt;) and &lt;a href="http://nvidia.fullviewmedia.com/GPU2009/0930-california-1411.html"&gt;1411&lt;/a&gt; (&lt;a href="http://www.nvidia.com/content/GTC/videos/GTC09-1411.mp4"&gt;mp4&lt;/a&gt; plus the presenter's &lt;a href="http://openvidia.sourceforge.net/index.php/DirectCompute"&gt;written version of the session&lt;/a&gt;).&lt;br&gt;&lt;br&gt;&lt;strong&gt;3.&lt;/strong&gt; Over at gamedev there is an old &lt;a href="http://www.gamedev.net/community/forums/topic.asp?topic_id=516043"&gt;Compute Shader tutorial&lt;/a&gt;. At the same site, there is a 3-part blog post on Compute Shader: &lt;a href="http://www.gamedev.net/community/forums/mod/journal/journal.asp?jn=363003&amp;amp;reply_id=3508695"&gt;Introduction&lt;/a&gt;, &lt;a href="http://www.gamedev.net/community/forums/mod/journal/journal.asp?jn=363003&amp;amp;reply_id=3513466"&gt;Resources&lt;/a&gt; and &lt;a href="http://www.gamedev.net/community/forums/mod/journal/journal.asp?jn=363003&amp;amp;reply_id=3517087"&gt;Addressing&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;strong&gt;4.&lt;/strong&gt; From PDC, you can also download the &lt;a href="http://code.msdn.microsoft.com/directcomputehol/Release/ProjectReleases.aspx?ReleaseId=3662"&gt;DirectCompute Hands On Lab&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;strong&gt;5.&lt;/strong&gt; When you are ready to get your hands even dirtier, download the latest &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2c7da5fb-ffbb-4af6-8c66-651cbd28ca15"&gt;Windows DirectX SDK&lt;/a&gt; (at the time of writing the latest is dated Feb 2010).&lt;br&gt;&lt;br&gt;&lt;strong&gt;6.&lt;/strong&gt; Within the SDK you'll find a &lt;a href="http://msdn.microsoft.com/en-us/library/ee417833(VS.85).aspx"&gt;Compute Shader Overview&lt;/a&gt; and samples such as: &lt;a href="http://msdn.microsoft.com/en-us/library/ee416557(VS.85).aspx"&gt;Basic&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416561(VS.85).aspx"&gt;Sort&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416572(VS.85).aspx"&gt;OIT&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416571(VS.85).aspx"&gt;NBodyGravity&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416569(VS.85).aspx"&gt;HDR Tone Mapping&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;strong&gt;7.&lt;/strong&gt; Talking of DX11/DirectCompute samples, there are also a &lt;a href="http://users.skynet.be/fquake/"&gt;couple of good ones on this URL&lt;/a&gt;.&lt;br&gt;&lt;br&gt;&lt;strong&gt;8.&lt;/strong&gt; The documentation of the various APIs is available online. Here are just some good (but far from complete) taster entry points into that: &lt;a href="http://msdn.microsoft.com/en-us/library/ee422317(VS.85).aspx"&gt;numthreads&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee422447(VS.85).aspx"&gt;SV_DispatchThreadID&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee422451(VS.85).aspx"&gt;SV_GroupThreadID&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee422449(VS.85).aspx"&gt;SV_GroupID&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee422450(VS.85).aspx"&gt;SV_GroupIndex&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416031(VS.85).aspx"&gt;D3D11CreateDevice&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416856(VS.85).aspx"&gt;D3DX11CompileFromFile&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee419785(VS.85).aspx"&gt;CreateComputeShader&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee419587(VS.85).aspx"&gt;Dispatch&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee416041(VS.85).aspx"&gt;D3D11_BIND_FLAG&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ee419655(VS.85).aspx"&gt;GSSetShader&lt;/a&gt;.&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/7744200-2410310110339016043?l=www.danielmoth.com%2FBlog%2Findex.htm" alt=""&gt;&lt;/div&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/DanielMoth?a=Xp5JjOASvNY:oI9aXg01bvs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DanielMoth?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/DanielMoth?a=Xp5JjOASvNY:oI9aXg01bvs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DanielMoth?d=qj6IDK7rITs" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/DanielMoth?a=Xp5JjOASvNY:oI9aXg01bvs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DanielMoth?i=Xp5JjOASvNY:oI9aXg01bvs:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/DanielMoth?a=Xp5JjOASvNY:oI9aXg01bvs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DanielMoth?i=Xp5JjOASvNY:oI9aXg01bvs:gIN9vFwOqvQ" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/DanielMoth?a=Xp5JjOASvNY:oI9aXg01bvs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/DanielMoth?i=Xp5JjOASvNY:oI9aXg01bvs:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/DanielMoth/~4/Xp5JjOASvNY" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xg1ylThhe6KEQhJ_TIpdMpmDFWY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xg1ylThhe6KEQhJ_TIpdMpmDFWY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xg1ylThhe6KEQhJ_TIpdMpmDFWY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xg1ylThhe6KEQhJ_TIpdMpmDFWY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=J9bgbejO-sc:v1XYnGtr5JA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/J9bgbejO-sc" height="1" width="1"/&gt;</content><feedburner:origLink>http://feedproxy.google.com/~r/DanielMoth/~3/Xp5JjOASvNY/directcompute.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1266937625966"><id gr:original-id="http://elegantcode.com/2010/02/18/shut-up-bob/">tag:google.com,2005:reader/item/22cd57d07da56e25</id><category term="Agile" /><title type="html">Shut Up, Bob</title><published>2010-02-18T17:45:00Z</published><updated>2010-02-18T17:45:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/LlCcUmJLWWc/" type="text/html" /><content xml:base="http://elegantcode.com/" type="html">&lt;p&gt;Some of us are hurting our profession with the casual way we treat language. In the following examples, that guy is Bob.
&lt;/p&gt;
&lt;h2&gt;Scenario 1&lt;br&gt;
&lt;/h2&gt;
&lt;p&gt;Bob: “Hey, where should we go to lunch?”
&lt;/p&gt;
&lt;p&gt;Joe: “I dunno, get in the car and we’ll decide later.”
&lt;/p&gt;
&lt;p&gt;Bob: “Yeah, we’ll just be agile about it.”
&lt;/p&gt;
&lt;p&gt;Giggle, giggle. Tee hee hee.
&lt;/p&gt;
&lt;h2&gt;Scenario 2&lt;br&gt;
&lt;/h2&gt;
&lt;p&gt;Bob: “Hey, what are you working on?”
&lt;/p&gt;
&lt;p&gt;Joe: “I’m not sure what to do, Manager X told me to … and Manager Y told me to …”
&lt;/p&gt;
&lt;p&gt;Bob: “Ah, so you are being agile then?”
&lt;/p&gt;
&lt;p&gt;Gales of laughter, followed by a knowing wink.
&lt;/p&gt;
&lt;h1&gt;Shut Up, Bob&lt;br&gt;
&lt;/h1&gt;
&lt;p&gt;Bob, you are causing harm. You are the reason agile has been coopted. You are undermining the efforts of your peers who are actually trying to better our profession. They are doing this for you, Bob.
&lt;/p&gt;
&lt;p&gt;Your cheap joke mocks a body of knowledge and professionals who are trying improve the life of your teammates. The fact that you will spend the next 20 minutes hanging out at the water cooler and planning lunch instead of driving positive change in your team lets me know where you are coming from.
&lt;/p&gt;
&lt;p&gt;When your CTO passed by and heard your little joke, it confirmed his suspicion he needs to keep the current command-and-control mechanisms in place. This also influenced his ideas of what agile really means, because all he had before is the contents of a 3 year old InfoQ article.
&lt;/p&gt;
&lt;p&gt;Bob, shut up. You aren’t just hurting yourself. You are undermining all of us.&lt;/p&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ElegantCode?a=LlCcUmJLWWc:jLy2vHKXRlw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ElegantCode?i=LlCcUmJLWWc:jLy2vHKXRlw:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ElegantCode?a=LlCcUmJLWWc:jLy2vHKXRlw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ElegantCode?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ElegantCode?a=LlCcUmJLWWc:jLy2vHKXRlw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ElegantCode?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ElegantCode?a=LlCcUmJLWWc:jLy2vHKXRlw:XAVGb8Xj5zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ElegantCode?d=XAVGb8Xj5zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ElegantCode?a=LlCcUmJLWWc:jLy2vHKXRlw:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ElegantCode?d=G79ilh31hkQ" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ElegantCode/~4/LlCcUmJLWWc" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZZ8Qkt7QwEij6GJwNHiULs4mX2E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZZ8Qkt7QwEij6GJwNHiULs4mX2E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZZ8Qkt7QwEij6GJwNHiULs4mX2E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZZ8Qkt7QwEij6GJwNHiULs4mX2E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=LlCcUmJLWWc:1QHMn46Q0NE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/LlCcUmJLWWc" height="1" width="1"/&gt;</content><author><name>David Starr</name></author><gr:likingUser>00917967490124578166</gr:likingUser><gr:likingUser>15134919104558663693</gr:likingUser><gr:likingUser>16028388002331971179</gr:likingUser><gr:likingUser>15217774922118815663</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ElegantCode"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ElegantCode</id><title type="html">Elegant Code</title><link rel="alternate" href="http://elegantcode.com" type="text/html" /></source><feedburner:origLink>http://elegantcode.com/2010/02/18/shut-up-bob/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1266403425882"><id gr:original-id="12392 at http://www.bright.nl">tag:google.com,2005:reader/item/c9403344c14a42f0</id><category term="content" scheme="http://www.bright.nl/content" /><title type="html">Domme Googelaars kunnen Facebook niet vinden</title><published>2010-02-16T15:14:40Z</published><updated>2010-02-16T15:14:40Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/UCtVeWroQz0/domme-googelaars-kunnen-facebook-niet-vinden" type="text/html" /><author><name>Maarten Reijnders</name></author><gr:likingUser>15436428151118537417</gr:likingUser><gr:likingUser>09881470217610278394</gr:likingUser><gr:likingUser>15189718127602914341</gr:likingUser><source gr:stream-id="feed/http://www.bright.nl/node/feed"><id>tag:google.com,2005:reader/feed/http://www.bright.nl/node/feed</id><title type="html">B R I G H T</title><link rel="alternate" href="http://www.bright.nl" type="text/html" /></source><content type="html">&lt;a href="http://www.bright.nl/domme-googelaars-kunnen-facebook-niet-vinden"&gt;&lt;img src="http://www.bright.nl/files/100214-younoob-kl.jpg" width="112" height="112"&gt;&lt;/a&gt;&lt;p&gt;&lt;p&gt;&lt;strong&gt;ReadWriteWeb wordt sinds vorige week overspoeld door gebruikers die denken dat ze op Facebook zijn beland.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Je kent ze vast wel (of misschien ben je er zelf wel één): mensen die vinden dat je eigenlijk alleen online zou mogen met een internetrijbewijs. Want oh, oh, oh, wat zijn sommige internetgebruikers toch dom. Van die figuren die alles maar aanklikken en vervolgens verbaasd zijn dat ze besmet raken met een computervirus. &lt;em&gt;Noobs&lt;/em&gt; die bij Google www.nu.nl intypen. Nou ja, we weten allemaal over wie we het hebben.&lt;/p&gt;
&lt;p&gt;Dat er nogal wat mensen online zijn die de meeste elementaire beginselen van de interwebs nog niet helemaal door hebben, is vorige week weer eens onomstotelijk aangetoond met een &lt;a href="http://www.readwriteweb.com/archives/facebook_wants_to_be_your_one_true_login.php"&gt;artikel&lt;/a&gt; op ReadWriteWeb. Het stuk handelt over een samenwerking tussen AOL en Facebook, maar dat is verder niet zo boeiend. Wat het artikel interessant maakt, is de eindeloze stroom reacties die eronder staat.&lt;/p&gt;
&lt;p&gt;Omdat de kop van het artikel op ReadWriteWeb de woorden 'Facebook' en 'login' bevatte, kwam het stuk opeens hoog in de Google-resultaten voor de zoekopdracht: 'facebook login'. Met alle &lt;a href="http://www.reghardware.co.uk/2010/02/12/google_de_facto_internet_gateway/"&gt;gevolgen&lt;/a&gt; van dien. Radeloze Facebook-gebruikers meldden zich in de comment-sectie van ReadWriteWeb met de vraag hoe ze moesten inloggen, terwijl anderen te kennen gaven dat ze de nieuwe vormgeving van de netwerksite maar niets vonden. &amp;#39;The new facebook sucks&amp;gt; NOW LET ME IN.&amp;#39;&lt;/p&gt;
&lt;p&gt;ReadWriteWeb moest uiteindelijk een extra (dikgedrukte) alinea aan het artikel toevoegen om de verontwaardigde bezoekers duidelijk te maken dat ze voor Facebook toch echt ergens anders moesten zijn. 'In de toekomst kun je het beste 'facebook.com' in je adresbalk intypen', adviseert ReadWriteWeb. 'We raden je aan om Facebook vervolgens te bookmarken.'&lt;/p&gt;
&lt;p&gt;Zelf ben ik er overigens zwaar op tegen dat mensen verplicht een rijbewijs moeten halen voor ze online mogen. Dit is veel te leuk!&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.bright.nl/domme-googelaars-kunnen-facebook-niet-vinden#comments"&gt;26 reacties&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/brightmagazine/~4/vPamDeb7q2U" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vvgIZe8giq8KL489V2-8qU1dUvg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vvgIZe8giq8KL489V2-8qU1dUvg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vvgIZe8giq8KL489V2-8qU1dUvg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vvgIZe8giq8KL489V2-8qU1dUvg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=UCtVeWroQz0:hmoy-RBjKMA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/UCtVeWroQz0" height="1" width="1"/&gt;</content><feedburner:origLink>http://feeds.bright.nl/~r/brightmagazine/~3/vPamDeb7q2U/domme-googelaars-kunnen-facebook-niet-vinden</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1266309127953"><id gr:original-id="http://www.heyokay.com/?p=924">tag:google.com,2005:reader/item/bd73abdc7c6af9fd</id><category term="Uncategorized" scheme="http://www.heyokay.com" /><title type="html">Hey buddy, where ya headed?</title><published>2010-02-15T17:50:49Z</published><updated>2010-02-15T17:50:49Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/j5q1x0RpfnY/" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/hey-buddy-where-ya-headed/#comments" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/hey-buddy-where-ya-headed/feed/atom/" type="application/atom+xml" /><content xml:base="http://www.heyokay.com/2010/hey-buddy-where-ya-headed/" xml:lang="en" type="html">&lt;p&gt;&lt;center&gt;&lt;img src="http://www.heyokay.com/images/hey%20buddy,%20where%20ya%20headed.jpg"&gt;&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0om-UtAwjfaW-VaQIPxKE2u0GSM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0om-UtAwjfaW-VaQIPxKE2u0GSM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0om-UtAwjfaW-VaQIPxKE2u0GSM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0om-UtAwjfaW-VaQIPxKE2u0GSM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=j5q1x0RpfnY:4jsKptKzWqM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/j5q1x0RpfnY" height="1" width="1"/&gt;</content><author><name>Curtis</name></author><source gr:stream-id="feed/http://www.heyokay.com/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.heyokay.com/feed/atom/</id><title type="html">Hey Okay</title><link rel="alternate" href="http://www.heyokay.com/" type="text/html" /></source><feedburner:origLink>http://www.heyokay.com/2010/hey-buddy-where-ya-headed/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265882824694"><id gr:original-id="http://www.heyokay.com/?p=917">tag:google.com,2005:reader/item/884dab9581ba092c</id><category term="Uncategorized" scheme="http://www.heyokay.com" /><title type="html">sıuuǝʇ uɐılɐɹʇsnɐ</title><published>2010-02-09T22:25:18Z</published><updated>2010-02-09T22:25:18Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/_EBO8xLnPgA/" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/australian-tennis/#comments" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/australian-tennis/feed/atom/" type="application/atom+xml" /><content xml:base="http://www.heyokay.com/2010/australian-tennis/" xml:lang="en" type="html">&lt;p&gt;&lt;center&gt;&lt;img src="http://www.heyokay.com/images/s%C4%B1uu%C9%99%CA%87%20u%C9%90%C4%B1l%C9%90%C9%B9%CA%87sn%C9%90.jpg"&gt;&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jctl-h-hebyieU5NodY6LvvsYqA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jctl-h-hebyieU5NodY6LvvsYqA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/jctl-h-hebyieU5NodY6LvvsYqA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jctl-h-hebyieU5NodY6LvvsYqA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=_EBO8xLnPgA:a7iaT-7UPPk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/_EBO8xLnPgA" height="1" width="1"/&gt;</content><author><name>Curtis</name></author><gr:likingUser>02063144736652345950</gr:likingUser><gr:likingUser>16289526741875463089</gr:likingUser><gr:likingUser>07688393593954447040</gr:likingUser><source gr:stream-id="feed/http://www.heyokay.com/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.heyokay.com/feed/atom/</id><title type="html">Hey Okay</title><link rel="alternate" href="http://www.heyokay.com/" type="text/html" /></source><feedburner:origLink>http://www.heyokay.com/2010/australian-tennis/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265722624405"><id gr:original-id="http://www.heyokay.com/?p=915">tag:google.com,2005:reader/item/ed4284fd8d83f930</id><category term="Uncategorized" scheme="http://www.heyokay.com" /><title type="html">BREAKING NEWS</title><published>2010-02-09T04:59:10Z</published><updated>2010-02-09T04:59:10Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/HiTsqKkp9Do/" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/breaking-news/#comments" type="text/html" /><link rel="replies" href="http://www.heyokay.com/2010/breaking-news/feed/atom/" type="application/atom+xml" /><content xml:base="http://www.heyokay.com/2010/breaking-news/" xml:lang="en" type="html">&lt;p&gt;&lt;center&gt;&lt;img src="http://www.heyokay.com/images/BREAKING%20NEWS.jpg"&gt;&lt;/center&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/arEoir8Ty3DPtqyR1-uJZTsyyQI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/arEoir8Ty3DPtqyR1-uJZTsyyQI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/arEoir8Ty3DPtqyR1-uJZTsyyQI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/arEoir8Ty3DPtqyR1-uJZTsyyQI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=HiTsqKkp9Do:nTBd7Ww8VJQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/HiTsqKkp9Do" height="1" width="1"/&gt;</content><author><name>Curtis</name></author><source gr:stream-id="feed/http://www.heyokay.com/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.heyokay.com/feed/atom/</id><title type="html">Hey Okay</title><link rel="alternate" href="http://www.heyokay.com/" type="text/html" /></source><feedburner:origLink>http://www.heyokay.com/2010/breaking-news/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265722599182"><id gr:original-id="91d46819-8472-40ad-a661-2c78acb4018c:9960221">tag:google.com,2005:reader/item/013488376af3077c</id><title type="html">How to investigate and report Visual Studio issues</title><published>2010-02-09T06:48:00Z</published><updated>2010-02-09T06:48:00Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/twR7XMxyjhM/how-to-investigate-and-report-visual-studio-issues.aspx" type="text/html" /><author><name>Kirill Osenkov</name></author><gr:likingUser>10778062246119996899</gr:likingUser><gr:likingUser>07724212787183470760</gr:likingUser><gr:likingUser>07458333694624125345</gr:likingUser><gr:likingUser>00030820939234073803</gr:likingUser><gr:likingUser>17315637546317302294</gr:likingUser><gr:likingUser>07823105392889619697</gr:likingUser><gr:likingUser>16935322041668034773</gr:likingUser><gr:likingUser>11975231144869129195</gr:likingUser><source gr:stream-id="feed/http://blogs.msdn.com/kirillosenkov/rss.xml"><id>tag:google.com,2005:reader/feed/http://blogs.msdn.com/kirillosenkov/rss.xml</id><title type="html">Kirill Osenkov</title><link rel="alternate" href="http://blogs.msdn.com/kirillosenkov/default.aspx" type="text/html" /></source><content type="html">&lt;p&gt;With the Visual Studio 2010 RC released, here are some tips to help you help us find and fix the remaining issues.&lt;/p&gt;  &lt;p&gt;We want Visual Studio to have no bugs. If you want the same and are willing to help us a little, read on! And thanks so much for trying it out!&lt;/p&gt;  &lt;h3&gt;Help –&amp;gt; Customer Feedback Options&lt;/h3&gt;  &lt;p&gt;First off, enabling the Customer Experience Improvement Program is a very helpful step!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image_thumb.png" width="259" height="216"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image_3.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image_thumb_3.png" width="575" height="611"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This will enable sending detailed error reports when Visual Studio crashes or hangs that GREATLY help us to identify the root cause of a problem.&lt;/p&gt;  &lt;h3&gt;Send Error Report&lt;/h3&gt;  &lt;p&gt;When Visual Studio crashes or hangs, you will be presented with the so-called &amp;quot;Watson dialog&amp;quot; – a choice to &amp;quot;Send Error Report&amp;quot; or &amp;quot;Do Not Send&amp;quot;:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image_4.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px" title="image" border="0" alt="image" src="http://guilabs.de/images/LiveWriter/HowtoinvestigateandreportVisualStudioiss_13414/image_thumb_4.png" width="602" height="311"&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;By clicking &amp;quot;Send Error Report&amp;quot; you greatly contribute to making Visual Studio better – this is the one most important thing that will help us the most.&lt;/p&gt;  &lt;h3&gt;Watson Bucket ID&lt;/h3&gt;  &lt;p&gt;After the crash has been submitted, two error entries are created in the Application Event Log in Control Panel –&amp;gt; Administrative Tools –&amp;gt; Event Viewer:&lt;/p&gt;  &lt;p&gt;Event 1000 and Event 1001 (may also be others, like Event 1023).&lt;/p&gt;  &lt;p&gt;The most interesting one is Event 1001, because it will contain the Watson Bucket ID:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Bucket &lt;span style="background-color:#ffff00"&gt;1040873707&lt;/span&gt;, bucket table 1, faulting application devenv.exe, version 10.0.30128.1, stamp 488f2b50, faulting module cslangsvc.dll, version 10.0.30128.1, stamp 488f2dea, debug? 0, fault address 0x000ceedd.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Knowing this bucket, Microsoft employees who are helping you with the problem can find the information you submitted in our tracking system. This is helpful during investigations.&lt;/p&gt;  &lt;h3&gt;ActivityLog.xml&lt;/h3&gt;  &lt;p&gt;If the error you're seeing reproduces consistently, you can usually get more information by starting Visual Studio with the &lt;a href="http://msdn.microsoft.com/en-us/library/ms241272.aspx"&gt;/log&lt;/a&gt; switch like this: devenv.exe /log&lt;/p&gt;  &lt;p&gt;This MSDN page contains a nice description of the Visual Studio activity log: &lt;a title="http://msdn.microsoft.com/en-us/library/ms241272.aspx" href="http://msdn.microsoft.com/en-us/library/ms241272.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms241272.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can find the log file in %APPDATA%\Microsoft\VisualStudio\10.0\ActivityLog.xml&lt;/p&gt;  &lt;p&gt;This log is especially useful if the error you're seeing happens at Visual Studio startup when it's loading packages.&lt;/p&gt;  &lt;h3&gt;Search for the error text&lt;/h3&gt;  &lt;p&gt;If you're getting an error message, try using your favorite search engine to search the internet for it – maybe someone has already encountered it before?&lt;/p&gt;  &lt;h3&gt;Log a Connect bug&lt;/h3&gt;  &lt;p&gt;To actually let us know that you've found a bug, the central location to do this is the Microsoft Connect website: &lt;a title="https://connect.microsoft.com/visualstudio/feedback" href="https://connect.microsoft.com/visualstudio/feedback"&gt;https://connect.microsoft.com/visualstudio/feedback&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;By opening a bug there it gets directly inside our bug tracking system.&lt;/p&gt;  &lt;h3&gt;You Can Do More: minidump and call stack&lt;/h3&gt;  &lt;p&gt;A while ago I wrote an article called &lt;a href="http://blogs.msdn.com/kirillosenkov/archive/2008/12/07/how-to-debug-crashes-and-hangs.aspx"&gt;How to debug crashes and hangs&lt;/a&gt;. This article explains in great detail what steps you need to do to create a minidump with heap of Visual Studio when it has crashed or is hanging.&lt;/p&gt;  &lt;p&gt;The simple way is, if you're running Windows Vista or later, just open Task Manager, click Processes, find the Visual Studio process (devenv.exe), right-click and select Create Dump File.&lt;/p&gt;  &lt;p&gt;That's it! It will create the large minidump file in your Temp directory and show a message box with the path where it saved the file.&lt;/p&gt;  &lt;p&gt;The original article can help if you're running Windows XP or in a more advanced case, when you also want to get the call stack, load symbols and so on. But usually a minidump file (.dmp) should be sufficient.&lt;/p&gt;  &lt;h3&gt;How to send us the minidump&lt;/h3&gt;  &lt;p&gt;The minidump file is usually huge (hundreds of megabytes), because it contains the exact snapshot of the full process memory of devenv.exe. To send us the minidump, open a bug on Connect and mention that you have a dump file. The MS employee who looks at the bug should give you a path to the temporary FTP website where you can upload the dump using FTP. If they don't give you this site or you have any other problems, just let me know.&lt;/p&gt;  &lt;h3&gt;Debugging errors that are not crashes using First Chance Exceptions&lt;/h3&gt;  &lt;p&gt;You might encounter an error which does not fully crash Visual Studio, and does not show the Watson dialog. In this case, there is still a good chance of finding what's going on and providing us with useful information about the error.&lt;/p&gt;  &lt;p&gt;For this you'll need to attach a debugger to the Visual Studio process (usually open another Visual Studio side by side). Again, a detailed tutorial is &lt;a href="http://blogs.msdn.com/kirillosenkov/archive/2008/12/07/how-to-debug-crashes-and-hangs.aspx"&gt;here&lt;/a&gt;. Just before the error is about to happen, break into debugger, and enable first chance exceptions (check everything in Debug –&amp;gt; Exceptions). Then resume debugging and let the error happen. Chances are that the exception will be thrown, but it will be subsequently suppressed. Enabling first-chance exceptions helps you to preview that exception before it gets swallowed. Once the exception happens, copy the Call Stack from the debugger Callstack toolwindow (Ctrl+A) and paste it into notepad. Sending us this call stack will be invaluable. Also, you can go to Debug –&amp;gt; Save Dump As and create a minidump with heap file (.dmp) from the current debuggee process state. Again, sending us this dump file and the call stack should really help a lot.&lt;/p&gt;  &lt;p&gt;One warning here is that there might be &amp;quot;red herrings&amp;quot; along the way – false first-chance exceptions which are normal and do not lead to an error. If you can&amp;#39;t tell whether the first-chance exception you&amp;#39;re seeing is normal or is the actual root cause of the error, send us the call stack for this and we&amp;#39;ll be able to help further.&lt;/p&gt;  &lt;h3&gt;devenv.exe /ResetSettings&lt;/h3&gt;  &lt;p&gt;If you believe that you've gotten Visual Studio into a weird state with weird settings, one last resort is trying to start Visual Studio with the /ResetSettings switch:&lt;/p&gt;  &lt;p&gt;devenv.exe &lt;a href="http://msdn.microsoft.com/en-us/library/ms241273(VS.80).aspx"&gt;/ResetSettings&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This will reset the Visual Studio settings to the defaults and maybe help you solve the problem.&lt;/p&gt;  &lt;h3&gt;devenv.exe /ResetSkipPkgs&lt;/h3&gt;  &lt;p&gt;If you've had a Package Load Failure, running devenv.exe with the &lt;a href="http://msdn.microsoft.com/en-us/library/ms241276(VS.80).aspx"&gt;/ResetSkipPkgs&lt;/a&gt; flag will re-enable those failed packages and will try loading them again.&lt;/p&gt;  &lt;h3&gt;devenv.exe /ResetUserData&lt;/h3&gt;  &lt;p&gt;As a last resort, you can also try &lt;a href="http://blogs.msdn.com/ejarvi/archive/2005/07/14/438898.aspx"&gt;/ResetUserData&lt;/a&gt;.&lt;/p&gt;  &lt;h3&gt;devenv.exe /SafeMode&lt;/h3&gt;  &lt;p&gt;Or &lt;a href="http://msdn.microsoft.com/en-us/library/ms241278.aspx"&gt;/SafeMode&lt;/a&gt;.&lt;/p&gt;  &lt;h3&gt;devenv.exe Command Line Switches&lt;/h3&gt;  &lt;p&gt;Here are other Visual Studio command line switches: &lt;a title="http://msdn.microsoft.com/en-us/library/xee0c8y7.aspx" href="http://msdn.microsoft.com/en-us/library/xee0c8y7.aspx"&gt;http://msdn.microsoft.com/en-us/library/xee0c8y7.aspx&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;&lt;font color="#ff0000"&gt;New: &lt;/font&gt;Visual Studio Setup Log Collection Utility&lt;/h3&gt;  &lt;p&gt;Check out the instructions here on how to use collect.exe to collect the logs: &lt;a title="http://blogs.msdn.com/heaths/archive/2008/05/09/visual-studio-and-net-log-collection-utility.aspx" href="http://blogs.msdn.com/heaths/archive/2008/05/09/visual-studio-and-net-log-collection-utility.aspx"&gt;http://blogs.msdn.com/heaths/archive/2008/05/09/visual-studio-and-net-log-collection-utility.aspx&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Thanks!&lt;/h3&gt;  &lt;p&gt;Thanks again for making Visual Studio a better product!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9960221" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4CYJ6QLMbQtPbM_EwlV0flyxtbI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4CYJ6QLMbQtPbM_EwlV0flyxtbI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4CYJ6QLMbQtPbM_EwlV0flyxtbI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4CYJ6QLMbQtPbM_EwlV0flyxtbI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=twR7XMxyjhM:In8iEPef8ik:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/twR7XMxyjhM" height="1" width="1"/&gt;</content><feedburner:origLink>http://blogs.msdn.com/kirillosenkov/archive/2010/02/08/how-to-investigate-and-report-visual-studio-issues.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265722516635"><id gr:original-id="c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7340044">tag:google.com,2005:reader/item/122e216f053f09ac</id><category term="Visual Studio" scheme="http://weblogs.asp.net/scottgu/archive/tags/Visual+Studio/default.aspx" /><category term=".NET" scheme="http://weblogs.asp.net/scottgu/archive/tags/.NET/default.aspx" /><category term="Community News" scheme="http://weblogs.asp.net/scottgu/archive/tags/Community+News/default.aspx" /><title type="html">VS 2010 / .NET 4 Release Candidate</title><published>2010-02-09T07:39:56Z</published><updated>2010-02-09T07:39:56Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/sbC7gvc2tks/vs-2010-net-4-release-candidate.aspx" type="text/html" /><author><name>ScottGu</name></author><gr:likingUser>18083363957138460811</gr:likingUser><gr:likingUser>10230285892582750243</gr:likingUser><gr:likingUser>16226366522791707997</gr:likingUser><gr:likingUser>11870941234204551385</gr:likingUser><source gr:stream-id="feed/http://weblogs.asp.net/scottgu/Rss.aspx"><id>tag:google.com,2005:reader/feed/http://weblogs.asp.net/scottgu/Rss.aspx</id><title type="html">ScottGu&amp;#39;s Blog</title><link rel="alternate" href="http://weblogs.asp.net/scottgu/default.aspx" type="text/html" /></source><content type="html">&lt;font size="2" face="arial"&gt;   &lt;p&gt;&lt;em&gt;[In addition to blogging, I am also now using Twitter for quick updates and to share links. Follow me at: &lt;/em&gt;&lt;a href="http://www.twitter.com/scottgu"&gt;twitter.com/scottgu&lt;/a&gt;&lt;em&gt;&lt;/em&gt;&lt;em&gt;]&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;This afternoon we made available the VS 2010 and .NET 4 release candidates.  You can find download links &lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;    &lt;p&gt;Right now the downloads are available only to MSDN subscribers.  Starting Wednesday (Feb 10th) everyone will be able to download them (regardless of whether you are a MSDN subscriber or not).&lt;/p&gt;    &lt;h3&gt;&lt;u&gt;Background on the Release Candidate&lt;/u&gt;&lt;/h3&gt;    &lt;p&gt;I blogged about us &lt;a href="http://weblogs.asp.net/scottgu/archive/2009/12/17/visual-studio-2010-and-net-4-0-update.aspx"&gt;deciding to ship a public VS 2010 release candidate&lt;/a&gt; last December.  The primary motivation behind releasing a public RC was to ensure that we could get broad testing and feedback on the performance and stability work we’ve been doing since the last public VS 2010 Beta 2 release.&lt;/p&gt;    &lt;p&gt;Over the last few months we’ve been releasing interim builds to a small set of folks who have been helping us validate fixes and measure very large projects and solutions.  The feedback from them has been extremely positive the last few weeks – which is why we are now opening up today’s build to a much wider set of people to people to try out.&lt;/p&gt;    &lt;p&gt;The RC has only been out a few hours so far – but the feedback so far on Twitter has been nice to see:&lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;&lt;a href="http://twitter.com/DanWahlin/status/8842617580"&gt;@DanWahlin&lt;/a&gt;: The performance improvements with Visual Studio 2010 RC compared to previous builds are huge. Really happy with what I'm seeing so far. &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/peterbromberg/status/8836131446"&gt;@peterbromberg&lt;/a&gt;: VS2010 RC: I must admit, I am impressed. Major speed and performance improvements. They are obvious immediately! &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/Nick_Craver/status/8840972807"&gt;@Nick_Craver&lt;/a&gt;: RC performance is ridiculously faster, can't wait to switch over full time! &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/Rlz2cool/status/8839592745"&gt;@Rlz2cool&lt;/a&gt;: Just tried VS2010 RC. One word incredible. Super fast, great build with things I saw in earlier releases fixed. So awesome. &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/ddotterer/status/8840597293"&gt;@ddotterer&lt;/a&gt;: Trying out VS2010 RC: Snappier UI, much faster intellisense, significant build time reduction, etc. Overall: AWESOME JOB &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/tomkirbygreen/status/8842454767"&gt;@tomkirbygreen&lt;/a&gt;: Oh my goodness, VS2010 RC is much, much faster. Kudos to the VS perf team and everyone else. Uninstalling Visual Studio 2008 :-) &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/JoshODBrown/statuses/8845152434"&gt;@JoshODBrown&lt;/a&gt; The developers on the Visual Studio 2010 RC must have had their usual beverages replaced with unicorn tears or something. &lt;a href="http://twitter.com/search?q=%23VS2010"&gt;#&lt;b&gt;VS2010&lt;/b&gt;&lt;/a&gt; &lt;a href="http://twitter.com/search?q=%23awesome"&gt;#awesome&lt;/a&gt; &lt;/li&gt;      &lt;li&gt;&lt;a href="http://twitter.com/jbristowe/status/8843544204"&gt;@jbristowe&lt;/a&gt;: Holy Butterball! VS 2010 RC is crazy fast. It makes me feel like this: &lt;a href="http://bit.ly/cPaOvE"&gt;http://bit.ly/cPaOvE&lt;/a&gt; &lt;/li&gt;   &lt;/ul&gt;    &lt;h3&gt;&lt;u&gt;Reporting Issues&lt;/u&gt;&lt;/h3&gt;    &lt;p&gt;Our goal with releasing the public RC build today is to get a lot of eyes on the product helping to find and report the remaining bugs we need to fix.  If you do find an issue, please submit a bug report via the &lt;a href="https://connect.microsoft.com/VisualStudio?wa=wsignin1.0"&gt;Visual Studio Connect site&lt;/a&gt; and also please send me an email directly (&lt;a href="mailto:scottgu@microsoft.com"&gt;scottgu@microsoft.com&lt;/a&gt;) with details about it.  I can then route your email to someone to investigate and follow-up directly (which can help expedite the investigation).&lt;/p&gt;    &lt;p&gt;If you do install and use the VS 2010 RC we’d also really appreciate if you would fill out &lt;a href="https://mscuillume.smdisp.net/Collector/Survey.ashx?Name=VS2010-RC"&gt;this survey&lt;/a&gt; about your experiences.&lt;/p&gt;    &lt;h3&gt;&lt;u&gt;Answers to a few questions and known issues&lt;/u&gt;&lt;/h3&gt;    &lt;p&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;    &lt;p&gt;Here are a few answers to some questions/known issues:&lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;If you have previously installed VS 2010 Beta 2 on your computer you should use Add/Remove Programs (within Windows Control Panel) to remove VS 2010 Beta2 and .NET 4 Beta2 before installing the VS 2010 RC.  Note that VS 2010 RC can be installed on the same machine side-by-side with VS 2008 and VS 2005.&lt;/li&gt;      &lt;li&gt;Silverlight 3 projects are supported with today’s VS 2010 RC build – however Silverlight 4 projects are not yet supported.  We will be adding VS 2010 RC support for SL4 with the next public Silverlight 4 drop. If you are doing active Silverlight 4 development today we recommend staying with the VS10 Beta 2 build for now. &lt;/li&gt;      &lt;li&gt;We recently identified a crashing bug that can impact systems that have multi-touch and some screen-readers enabled.  We are working on a patch for people who are impacted by it. &lt;/li&gt;      &lt;li&gt;We recently found an issue where project upgrades from VS 2008 can take a long time to complete if the project has .xsd files within them.  If you think VS is taking a long time on a project upgrade give it a few more minutes to complete before assuming it has hung – you might be running into this slow upgrade issue.  Note that once the project is upgraded the performance should return to normal. We are working to fix this with the final release.&lt;/li&gt;   &lt;/ul&gt;    &lt;p&gt;Hope this helps,&lt;/p&gt;    &lt;p&gt;Scott&lt;/p&gt; &lt;/font&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7340044" width="1" height="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TlSW1HoVtVyWDhd6VSijv5EuGb8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TlSW1HoVtVyWDhd6VSijv5EuGb8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TlSW1HoVtVyWDhd6VSijv5EuGb8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TlSW1HoVtVyWDhd6VSijv5EuGb8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=sbC7gvc2tks:r2kA44Jziq0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/sbC7gvc2tks" height="1" width="1"/&gt;</content><feedburner:origLink>http://weblogs.asp.net/scottgu/archive/2010/02/08/vs-2010-net-4-release-candidate.aspx</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265702478213"><id gr:original-id="http://www.joyofsetup.com/2010/02/08/visual-studio-2010-rc-now-available/">tag:google.com,2005:reader/item/60447743f1f73c98</id><category term="Etc" scheme="http://www.joyofsetup.com" /><title type="html">Visual Studio 2010 RC now available</title><published>2010-02-09T02:16:41Z</published><updated>2010-02-09T02:16:41Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/v3JsbfA3BR8/" type="text/html" /><link rel="replies" href="http://www.joyofsetup.com/2010/02/08/visual-studio-2010-rc-now-available/#comments" type="text/html" /><link rel="replies" href="http://www.joyofsetup.com/2010/02/08/visual-studio-2010-rc-now-available/feed/atom/" type="application/atom+xml" /><content xml:base="http://www.joyofsetup.com/2010/02/08/visual-studio-2010-rc-now-available/" xml:lang="en" type="html">&lt;p&gt;If you’re an MSDN subscriber, go get it from &lt;a href="https://msdn.microsoft.com/en-us/subscriptions/securedownloads/default.aspx"&gt;MSDN Downloads&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zRGSbhIX2if1l-KTdnZ3eDKE5-o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zRGSbhIX2if1l-KTdnZ3eDKE5-o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zRGSbhIX2if1l-KTdnZ3eDKE5-o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zRGSbhIX2if1l-KTdnZ3eDKE5-o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=v3JsbfA3BR8:sjmK6Qpups4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/v3JsbfA3BR8" height="1" width="1"/&gt;</content><author><name>Bob Arnson</name></author><source gr:stream-id="feed/http://www.joyofsetup.com/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.joyofsetup.com/feed/atom/</id><title type="html">Joy of Setup</title><link rel="alternate" href="http://www.joyofsetup.com/" type="text/html" /></source><feedburner:origLink>http://www.joyofsetup.com/2010/02/08/visual-studio-2010-rc-now-available/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1265660296527"><id gr:original-id="tag:typepad.com,2003:post-6a00e54ff8b9c188340120a8676016970b">tag:google.com,2005:reader/item/ac2d133b84dd0dfb</id><category term="Trash &amp; Garbage" scheme="http://www.sixapart.com/ns/types#category" /><title type="html">In Defense of Scrum (Please Stop Pissing on It)</title><published>2010-02-08T15:01:52Z</published><updated>2010-02-07T21:37:23Z</updated><link rel="alternate" href="http://feeds.brokenwire.net/~r/brokenwire-reading/~3/h5hg9-L9gDo/in-defense-of-scrum-please-stop-pissing-on-it.html" type="text/html" /><link rel="replies" href="http://www.noop.nl/2010/02/in-defense-of-scrum-please-stop-pissing-on-it.html" type="text/html" /><content xml:base="http://www.noop.nl/" xml:lang="en-US" type="html">&lt;div&gt;&lt;p&gt;&lt;a href="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340120a8676a81970b-popup" style="float:right"&gt;&lt;img alt="Manneken_pis" src="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340120a8676a81970b-150wi" style="margin:0px 0px 5px 5px;width:150px"&gt;&lt;/a&gt; Last week &lt;a href="http://twitter.com/unclebobmartin"&gt;Uncle Bob Martin&lt;/a&gt; wrote about &lt;a href="http://groups.yahoo.com/group/scrumdevelopment/message/44851"&gt;seven “serious flaws” in Scrum&lt;/a&gt;. I usually agree with Bob, but not this time. Actually, I might even feel a bit sad about all the &amp;lt;method&amp;gt;-bashing I see happening in the Agile world, where all too often &amp;lt;method&amp;gt; = Scrum and the bashing comes from either the XP side or the Kanban side.&lt;/p&gt; &lt;p&gt;Here’s my take on the matter…&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“Scrum has no technical practices” &lt;br&gt;&lt;/strong&gt;The lack of technical practices in Scrum is a &lt;strong&gt;strength&lt;/strong&gt;, not a flaw. It means Scrum can be (and has been) applied successfully not only in software development, but also in design, marketing, and several other creative domains. As far as I know Scrum has always been presented as a &lt;strong&gt;framework&lt;/strong&gt;, meaning that it &lt;em&gt;must &lt;/em&gt;be augmented with domain-specific practices. True, some software teams forget about the technical practices, and they are idiots! But is it a “flaw” of the script writer when the director forgets to use stunt doubles when filming the dangerous scenes? Or is that a failure of the craftsman who apparently doesn’t know how to do his job? If you call it a “flaw” that Scrum has no technical practices, then you can only conclude that Lean and Kanban are seriously flawed as well! Obviously this is a bit silly. To me this flawed reasoning seems like a bad case of tunnel vision. There’s more happening in the world than TDD, Continuous Integration, and Pair Programming. Really! (BTW, it is interesting to see &lt;a href="http://twitter.com/alshalloway/status/8678707601"&gt;praise on the Lean side for Bob's criticism of Scrum&lt;/a&gt;, while Lean and Kanban have no technical practices whatsoever! The few described in Lean books are simply copied from XP…)&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“The Scrum Master arrogates project management powers” &lt;br&gt;&lt;/strong&gt;Maybe, but it’s a risk worth taking. A &lt;em&gt;much bigger&lt;/em&gt; problem I see with teams &lt;em&gt;without&lt;/em&gt; a Scrum Master is that they are usually an undisciplined bunch of mandrills. XP requires and &lt;em&gt;assumes&lt;/em&gt; that teams consist of &lt;strong&gt;self-disciplined&lt;/strong&gt;, &lt;strong&gt;competent&lt;/strong&gt;, and &lt;strong&gt;communicative&lt;/strong&gt; people. Unfortunately, &lt;strong&gt;many software developers don’t fit this description&lt;/strong&gt;. Scrum at least acknowledges that most teams need some &lt;em&gt;help &lt;/em&gt;and assistance in getting their processes and communication in order. I find it particularly strange that &lt;a href="http://www.infoq.com/presentations/craftmanship-ethics"&gt;people who call for craftsmanship on the technical side&lt;/a&gt; should point out the dangers of positioning a master on the process side! Honestly, I would rather run the risk of a Scrum Master taking up PM powers than a dev team completely ignoring their responsibilities. What is worse? (And yes, the sooner a team can do without a Scrum Master, the better. I don’t have one in my own team right now. For us there's no need.)&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“Scrum provides insufficient guidance regarding the backlog” &lt;br&gt;&lt;/strong&gt;See the first issue above. A backlog for graphic designers probably looks quite different from a backlog for developers. And marketers print their backlog horizontally and call it a road map. What’s wrong with keeping all the options open? Scrum is a framework, not a by-the-minute recipe!&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“Scrum carries an anti-management undercurrent” &lt;br&gt;&lt;/strong&gt;I don’t get it. How is that different from XP? Management has &lt;em&gt;always &lt;/em&gt;been underrated in the Agile world. True, management has done badly before Agile. And we should be glad for the Agile movement and its self-organizing teams. But self-organization without governance is anarchy. This is not a flaw in Scrum, it is a flaw that began with the Agile Manifesto itself, which completely disregarded the role of management. And guess &lt;a href="http://www.agilemanifesto.org/"&gt;who co-wrote that&lt;/a&gt;? :-)&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“Scrum doesn’t say anything about multiple teams” &lt;br&gt;&lt;/strong&gt;True, and again: how is that different from XP, or any other agile methods? Allow me to quote John Gall here:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;em&gt;A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over, beginning with a working simple system. – &lt;a href="http://www.amazon.com/gp/product/0961825170?ie=UTF8&amp;amp;tag=noopnl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0961825170"&gt;The Systems Bible&lt;/a&gt;, John Gall&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt; &lt;p&gt;&lt;strong&gt;Scrum is a small system. That’s why it works.&lt;/strong&gt; It is specifically designed &lt;em&gt;not&lt;/em&gt; to cover technical practices, complicated backlogs, multi-team projects, etc. They tried that with RUP, and they failed. Because a complex system designed from scratch won’t work. A big working system has to start as a small working system. This is not a flaw. It is common sense. And now that we know that (small) Scrum can work, we can learn how to make it grow...&lt;/p&gt; &lt;p&gt;And that's what I had to say in defense of Scrum. I &lt;em&gt;really&lt;/em&gt; hope that people would stop pissing on it. No agile method is perfect. But I think &lt;strong&gt;there’s a world of difference between imperfect and "flawed&lt;/strong&gt;".&lt;/p&gt; &lt;p&gt;Please note that I am &lt;em&gt;not&lt;/em&gt; a CSM, and will never be one. I like XP and Kanban just as much as I like Scrum, because I believe no single model or framework is enough when managing complex systems. Anyone who favors one method and pisses on another is just showing off his ignorance of complexity thinking.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;That's it. I hope to have entertained or annoyed you.&lt;/p&gt; &lt;p&gt;I will be speaking at the &lt;a href="http://www.scrumalliance.org/events/105-orlando-scrum-gathering"&gt;Scrum Gathering in Orlando&lt;/a&gt;. Hope to see you there!&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&#xD;
&#xD;
 &lt;p style="font-family:trebuchet ms;font-size:11px"&gt;&lt;img alt="Twitter" border="0" src="http://noop.nl/twitter-32.png" style="vertical-align:middle" title="Twitter"&gt; &lt;strong&gt;&lt;/strong&gt;&lt;a href="http://www.twitter.com/jurgenappelo"&gt;Twitter&lt;/a&gt; - &lt;img alt="Rss" border="0" src="http://noop.nl/rss-32.png" style="vertical-align:middle" title="Rss"&gt; &lt;strong&gt;&lt;/strong&gt;&lt;a href="http://feeds.feedburner.com/noop"&gt;Subscribe&lt;/a&gt; - &lt;img alt="Email" border="0" src="http://noop.nl/email-32.png" style="vertical-align:middle" title="Email"&gt; &lt;a href="http://www.feedburner.com/fb/a/emailverifySubmit?feedId=1685041&amp;amp;loc=en_US"&gt;Newsletter&lt;/a&gt; - &lt;img alt="LinkedIn" border="0" src="http://noop.nl/linkedin-32.png" style="vertical-align:middle" title="LinkedIn"&gt; &lt;a href="http://www.linkedin.com/in/jurgenappelo"&gt;LinkedIn&lt;/a&gt; - &lt;img alt="SlideShare" border="0" src="http://noop.nl/slideshare-32.png" style="vertical-align:middle" title="SlideShare"&gt; &lt;a href="http://www.slideshare.net/jurgenappelo"&gt;SlideShare&lt;/a&gt;&lt;/p&gt; &lt;p&gt; &lt;/p&gt;&lt;table border="0" cellpadding="5"&gt;&lt;tbody&gt; &lt;tr&gt; &lt;td valign="top"&gt;&lt;br&gt;&lt;/td&gt; &lt;td&gt;&lt;strong&gt;Latest, greatest and favoritest posts&lt;/strong&gt;: &lt;br&gt;&lt;a href="http://www.noop.nl/2010/01/protect-people.html"&gt;&lt;/a&gt;&lt;a href="http://www.noop.nl/2010/01/management-30-the-era-of-complexity.html"&gt;Management 3.0: The Era of Complexity&lt;/a&gt; &lt;br&gt;&lt;a href="http://www.noop.nl/2009/12/checklist-for-goals-and-resolutions.html"&gt;&lt;/a&gt;&lt;a href="http://www.noop.nl/2009/12/yes-good-managers-are-manipulators.html"&gt;&lt;/a&gt;&lt;a href="http://www.noop.nl/2009/09/scrumbuts-are-the-best-part-of-scrum.html"&gt;ScrumButs Are the Best Part of Scrum&lt;/a&gt; &lt;br&gt;&lt;a href="http://www.noop.nl/2009/08/please-help-me-with-my-book.html"&gt;&lt;/a&gt;&lt;a href="http://www.noop.nl/2009/03/the-complex-manifesto.html"&gt;The Complex Manifesto for Software Development&lt;/a&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/gkqdc1qv0s8rvbmbs9k2hmu5i8/468/60#http%3A%2F%2Fwww.noop.nl%2F2010%2F02%2Fin-defense-of-scrum-please-stop-pissing-on-it.html" width="100%" height="60" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/noop?a=4RO2uARsUjI:hkwq9GpZvWY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/noop?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/noop?a=4RO2uARsUjI:hkwq9GpZvWY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/noop?d=qj6IDK7rITs" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/noop?a=4RO2uARsUjI:hkwq9GpZvWY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/noop?i=4RO2uARsUjI:hkwq9GpZvWY:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/noop?a=4RO2uARsUjI:hkwq9GpZvWY:I9og5sOYxJI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/noop?d=I9og5sOYxJI" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/noop/~4/4RO2uARsUjI" height="1" width="1"&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ks466cECAbhwLg9lk3MBFdaJ-zg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ks466cECAbhwLg9lk3MBFdaJ-zg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ks466cECAbhwLg9lk3MBFdaJ-zg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ks466cECAbhwLg9lk3MBFdaJ-zg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.brokenwire.net/~ff/brokenwire-reading?a=h5hg9-L9gDo:eWYJ4Yk7-RU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/brokenwire-reading?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/brokenwire-reading/~4/h5hg9-L9gDo" height="1" width="1"/&gt;</content><author><name>Jurgen Appelo</name></author><gr:likingUser>01378362922825043920</gr:likingUser><gr:likingUser>06367690491041917404</gr:likingUser><gr:likingUser>04645681134756949390</gr:likingUser><source gr:stream-id="feed/http://feeds2.feedburner.com/noop"><id>tag:google.com,2005:reader/feed/http://feeds2.feedburner.com/noop</id><title type="html">NOOP.NL</title><link rel="alternate" href="http://www.noop.nl/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/noop/~3/4RO2uARsUjI/in-defense-of-scrum-please-stop-pissing-on-it.html</feedburner:origLink></entry></feed>
