<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.stevenharman.net/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.stevenharman.net/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>StevenHarman.net</title>
        <link>http://stevenharman.net/blog/Default.aspx</link>
        <description>Geek. And proud of it.</description>
        <language>en-US</language>
        <copyright>Steven Harman</copyright>
        <managingEditor>steven@stevenharman.net</managingEditor>
        <generator>Subtext Version 2.0.0.16</generator>
        <image><link>http://creativecommons.org/licenses/by/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image>
        <creativeCommons:license>http://creativecommons.org/licenses/by/2.0/</creativeCommons:license><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.stevenharman.net/stevenharman" type="application/rss+xml" /><feedburner:emailServiceId>829602</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.rojo.com/add-subscription?resource=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://blog.rojo.com/RojoWideRed.gif">Subscribe with Rojo</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.stevenharman.net/stevenharman" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://my.feedlounge.com/external/subscribe?url=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://static.feedlounge.com/buttons/subscribe_0.gif">Subscribe with FeedLounge</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.stevenharman.net%2Fstevenharman" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><item>
            <title>Entity Framework Vote of No Confidence</title>
            <category>Me, On Software.</category>
            <link>http://stevenharman.net/blog/archive/2008/06/23/entity-framework-vote-of-no-confidence.aspx</link>
            <description>&lt;p&gt;&lt;a title="Sign the letter" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/EntityFrameworkVoteofNoConfidence_A48A/petition_4.jpg" rel="lightbox"&gt;&lt;img class="right" height="187" alt="Sign the letter" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/EntityFrameworkVoteofNoConfidence_A48A/petition_thumb_1.jpg" width="175" /&gt;&lt;/a&gt;Looking across blogs, Twitter, and the community in general there has been a lot of discussion around Microsoft's forthcoming Entity Framework.&lt;/p&gt;  &lt;p&gt;In the midst of the discussion many valid criticisms have been drown out or lost in the noise of the cheerleading, trolling, and marketecture generated by community &lt;a title="Community Antipattern: Gloryhound" href="http://www.google.com/search?hl=en&amp;amp;q=%22Scott%2BBellware%22+Gloryhounds" rel="external"&gt;&lt;em&gt;Gloryhounds&lt;/em&gt;&lt;/a&gt;, Redmond, and any number of other super-pro-Microsoft groups/identities. Even the &lt;a title="ALT.NET" href="http://altdotnet.org"&gt;alt.net&lt;/a&gt; community has been guilty of adding to the noise and confusion.&lt;/p&gt;  &lt;p&gt;The noise has gotten so loud that the message itself has been lost.&lt;/p&gt;  &lt;h3&gt;Voice your concern&lt;/h3&gt;  &lt;p&gt;But through that noise it looks like a voice may finally be heard, or at least serve as a unifying call for others to follow, in the form of an open letter.&lt;/p&gt;  &lt;blockquote title="Entity Framework Vote of No Confidence" cite="http://tech.groups.yahoo.com/group/altdotnet/message/10564"&gt;   &lt;p&gt;A number of people have worked on &lt;a title="ADO .NET Entity Framework Vote of No Confidence" href="http://efvote.wufoo.com/forms/ado-net-entity-framework-vote-of-no-confidence/" rel="external"&gt;an open letter to Microsoft and the Entity Framework team&lt;/a&gt;. It outlines the various deficiencies in the EF specifically related to concepts a lot of us value as solid working practice. Every effort has been made to balance honesty with diplomacy and cooperation.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I would urge anyone who believes in the deficiencies outlined in the letter to &lt;a title="Entity Framework Vote of No Confidence Signatories" href="http://efvote.wufoo.com/reports/entity-framework-vote-of-no-confidence-signatories/" rel="external"&gt;sign the letter&lt;/a&gt; and then support the message. Blog it, &lt;a title="@sbellware: Entity Framework Vote of No Confidence" href="http://twitter.com/sbellware/statuses/841723380" rel="external"&gt;Twitter it&lt;/a&gt;, &lt;a title="alt.net Mailing List: Entity Framework Vote of No Confidence" href="http://tech.groups.yahoo.com/group/altdotnet/message/10564" rel="external"&gt;discuss it&lt;/a&gt;, print it out and leave copies laying around your team room.&lt;/p&gt;  &lt;p&gt;Remember, the goal of the letter is not to pull the plug on the Entity Framework, its to raise awareness among Microsoft customers as to the risks involved with adopting it.&lt;/p&gt;  &lt;p&gt;Educate. Spread the message.&lt;/p&gt;  &lt;p&gt;&lt;a title="Open Letter: ADO .NET Entity Framework Vote of No Confidence" href="http://efvote.wufoo.com/forms/ado-net-entity-framework-vote-of-no-confidence/" rel="external"&gt;ADO .NET Entity Framework Vote of No Confidence&lt;/a&gt;.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:7e0ccc25-a905-41f6-89ae-40a33f52a688" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/entityframework" rel="tag"&gt;entityframework&lt;/a&gt;, &lt;a href="http://technorati.com/tags/altdotnet" rel="tag"&gt;altdotnet&lt;/a&gt;, &lt;a href="http://technorati.com/tags/community" rel="tag"&gt;community&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12756.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=tVvk0m"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=tVvk0m" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=Qnr6Ai"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=Qnr6Ai" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=l34vZI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=l34vZI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=Rm9cuI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=Rm9cuI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=vVCWui"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=vVCWui" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=U2y1Oi"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=U2y1Oi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/318217633" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/06/23/entity-framework-vote-of-no-confidence.aspx</guid>
            <pubDate>Mon, 23 Jun 2008 16:38:46 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12756.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/06/23/entity-framework-vote-of-no-confidence.aspx#feedback</comments>
            <slash:comments>14</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12756.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12756.aspx</trackback:ping>
        </item>
        <item>
            <title>Rhino.Mocks Beta Bits are Running Turbo-Charged!</title>
            <category>Code &amp;amp; Stuff...</category>
            <link>http://stevenharman.net/blog/archive/2008/06/11/rhino.mocks-beta-bits-are-running-turbo-charged.aspx</link>
            <description>&lt;p&gt;A few weeks ago Oren (known to many as &lt;a title="Ayende Rahien" href="http://ayende.com/blog/" rel="friend met"&gt;Ayende Rahien&lt;/a&gt;) pushed out a Rhino.Mocks beta drop so we could take a look at the new &lt;a title="Rhino Mocks - Arrange, Act, Assert Syntax" href="http://www.ayende.com/Blog/archive/2008/05/16/Rhino-Mocks--Arrange-Act-Assert-Syntax.aspx" rel="external"&gt;Arrange/Act/Assert syntax&lt;/a&gt; being cooked up for the pending 3.5 release. Yesterday I finally upgraded my client project to the 3.5 beta bits and started digging into the new syntax.&lt;/p&gt;  &lt;h3&gt;AAA, FTW!&lt;/h3&gt;  &lt;p&gt;After using Arrange/Act/Assert for just a day or two I’m already hooked. It feels like a much more natural fit for &lt;abbr title="Behaviour Driven Development/Design"&gt;bdd&lt;/abbr&gt;-style tests.&lt;/p&gt;  &lt;p&gt;The whole &lt;em&gt;Given, Expect, When, Then, go-back-and-verify-expectations&lt;/em&gt; flow always felt clumsy and counterintuitive, and &lt;abbr title="Arrange, Act, Assert"&gt;AAA&lt;/abbr&gt; allows for a more natural &lt;em&gt;Given, When, Then, Verify Expectations&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;If that doesn’t make a whole lot of sense, don’t worry… I’m planning a follow-up post to dive a bit deeper and hopefully illustrate the point. For now though, I’d encourage you to go take a look at the &lt;a title="Rhino.Mocks - Recording Tests" href="https://rhino-tools.svn.sourceforge.net/svnroot/rhino-tools/trunk/rhino-mocks/Rhino.Mocks.Tests/RecordingMocks.cs" rel="external"&gt;Rhino.Mocks tests&lt;/a&gt; to get a feel for what you can do with the AAA syntax.&lt;/p&gt;  &lt;h3&gt;Faster is better…&lt;/h3&gt;  &lt;p&gt;&lt;a title="Aaron Jensen - Mock Framework Benchmarks" href="http://codebetter.com/blogs/aaron.jensen/archive/2008/05/08/mock-framework-benchmarks.aspx" rel="friend met"&gt;Aaron Jensen&lt;/a&gt; did some digging and was able to speed up performance by a pretty noticeable amount – nearly 50% according to his measurements.&lt;/p&gt;  &lt;p&gt;And not that I don’t trust Aaron’s measuring abilities or something, but I decided to do some measuring of my own. I upgraded a current client project and I can confirm, these Rhinos are turbo-charged!&lt;/p&gt;  &lt;p&gt;&lt;a title="These Rhinos are cookin'!" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/e5febd050c67_14442/rhino-mocks-timings_3.png" rel="lightbox"&gt;&lt;img class="left" title="These Rhinos are cookin'!" height="105" alt="These Rhinos are cookin'!" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/e5febd050c67_14442/rhino-mocks-timings_thumb.png" width="240" border="0" /&gt;&lt;/a&gt;I ran our &lt;code&gt;UnitTests&lt;/code&gt; project, which at the time had 1566 tests with none of hitting a database, external resource, etc…, but a majority of them do rely pretty heavily on mocks.&lt;/p&gt;  &lt;p&gt;I wasn’t nearly as scientific as Aaron. In fact I was straight-up lazy, running the test project using the most handy mechanism at my disposal - &lt;a title="TestDriven.net - Zero Friction unit testing" href="http://www.testdriven.net/" rel="external"&gt;TestDriven.net&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;I did a few runs using Rhino.Mocks 3.4 &lt;em&gt;(test runs #1 and 2 in the above picture)&lt;/em&gt; and then a couple more with 3.5 &lt;em&gt;(runs #3 and 4)&lt;/em&gt;. And &lt;strong&gt;my totally unscientific results showed… &lt;em&gt;drum roll please…&lt;/em&gt; the new bits to be about 50% faster&lt;/strong&gt;. &lt;em&gt;Sweet!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f06%2f11%2frhino.mocks-beta-bits-are-running-turbo-charged.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f06%2f11%2frhino.mocks-beta-bits-are-running-turbo-charged.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c0ce1368-920a-4b37-8284-af48a70700c4" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/rhino.mocks" rel="tag"&gt;rhino.mocks&lt;/a&gt;, &lt;a href="http://technorati.com/tags/unittesting" rel="tag"&gt;unittesting&lt;/a&gt;, &lt;a href="http://technorati.com/tags/bdd" rel="tag"&gt;bdd&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12755.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=K6Vdhu"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=K6Vdhu" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=xjFIqi"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=xjFIqi" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=mhVGUI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=mhVGUI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=HoAdpI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=HoAdpI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=3zx5hi"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=3zx5hi" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=SJToIi"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=SJToIi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/309333404" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/06/11/rhino.mocks-beta-bits-are-running-turbo-charged.aspx</guid>
            <pubDate>Wed, 11 Jun 2008 04:07:07 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12755.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/06/11/rhino.mocks-beta-bits-are-running-turbo-charged.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12755.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12755.aspx</trackback:ping>
        </item>
        <item>
            <title>Save Your Fingers, Use a BDD AutoHotKey Script!</title>
            <category>Tips &amp;amp; Tricks.</category>
            <link>http://stevenharman.net/blog/archive/2008/06/07/save-your-fingers-use-a-bdd-autohotkey-script.aspx</link>
            <description>&lt;p&gt;Tired of typing all those underscores_while_writing_your_BDD_specifications? Yeah, I wasn’t really either. However I’ve &lt;strike&gt;heard&lt;/strike&gt; read complaints from some folks that typing the underscore so many times was getting annoying, so they had opted for PascalCasing instead.&lt;/p&gt;  &lt;h3&gt;Just deal with it&lt;/h3&gt;  &lt;p&gt;Maybe its because of my exposure to Ruby and the joy that is RSpec, but I don’t think such minor annoyance is enough of a reason to top using a more readable style. &lt;em&gt;Repetitive Stress Injury, be damned!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Or maybe not! The other day while cleaning out my &lt;abbr title="Realy Simple Syndication"&gt;RSS&lt;/abbr&gt; reader I &lt;a title="BDD AutoHotKey Script" href="http://www.jpboodhoo.com/blog/BDDAutoHotKeyScriptUpdateTake2.aspx" rel="external"&gt;came across AutoHotKey&lt;/a&gt; &lt;em&gt;(thanks JP)&lt;/em&gt;, a utility that allows you to launch custom scripts, macros, etc… via keyboard shortcuts. &lt;/p&gt;  &lt;h3&gt;No more &lt;code&gt;Ctrl + -&lt;/code&gt;&lt;/h3&gt;  &lt;p&gt;&lt;a title="AutoHotKey in action" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/f37cd64790e8_1412E/AutoHotKey-in-action_2.gif" rel="lightbox[ahk]"&gt;&lt;img class="right" title="AutoHotKey in action" height="84" alt="AutoHotKey in action" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/f37cd64790e8_1412E/AutoHotKey-in-action_thumb.gif" width="240" /&gt;&lt;/a&gt;Thanks to some great work by JP, &lt;a title="Aaron Jensen" href="http://codebetter.com/blogs/aaron.jensen/" rel="met"&gt;Aaron Jensen&lt;/a&gt;, and &lt;a title="BDD test naming with AutoHotKey" href="http://davesquared.blogspot.com/2008/05/bdd-test-naming-with-autohotkey.html" rel="external"&gt;David Tchepak&lt;/a&gt; we have an AutoHotKey script that can automagically replace any space characters with an underscore, as you type, in real time.&lt;/p&gt;  &lt;p&gt;You can toggle the script on and off using the &lt;code&gt;Ctrl + Shift + U&lt;/code&gt; hot key, a.k.a – keyboard shortcut. The script is also smart enough to turn itself off when you hit either &lt;code&gt;Enter&lt;/code&gt; or &lt;code&gt;Escape&lt;/code&gt; keys. And Aaron even has a version of the script that is only active when Visual Studio is active. However, being that I use &lt;a title="The Poer of Textmate on Windows" href="http://www.e-texteditor.com/" rel="external"&gt;e-Text Editor&lt;/a&gt; as my Ruby &lt;abbr title="Integrated Development Environment"&gt;IDE&lt;/abbr&gt;, I like having the script available everywhere in the &lt;abbr title="Operating System"&gt;OS&lt;/abbr&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a title="AutoHotKey custom icon" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/f37cd64790e8_1412E/autohotkey-custom-icon_2.png" rel="lightbox[ahk]"&gt;&lt;img class="right" title="AutoHotKey custom icon" height="120" alt="AutoHotKey custom icon" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/f37cd64790e8_1412E/autohotkey-custom-icon_thumb.png" width="227" /&gt;&lt;/a&gt;Dave added a little more sugar by tweaking the script so it shows a custom icon in the Windows task tray when the script is running, or not. A nice touch to really round out the experience.&lt;/p&gt;  &lt;h3 class="clear"&gt;Get yourself some AHK!&lt;/h3&gt;  &lt;p&gt;The one thing I found a little confusing was how exactly to get the script up and running, with the icons. Luckily, you won’t have to struggle… I’ll lay it out for ya’. :)&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;strong&gt;Get AutoHotKey&lt;/strong&gt; – &lt;a title="AutoHotKey" href="http://www.autohotkey.com/" rel="external"&gt;download&lt;/a&gt; and install it. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Grab &lt;/strong&gt;&lt;a title="BDD AutoHotKey Script Update - Take 2" href="http://www.jpboodhoo.com/blog/BDDAutoHotKeyScriptUpdateTake2.aspx" rel="external"&gt;&lt;strong&gt;JP’s script&lt;/strong&gt;&lt;/a&gt; – or &lt;a title="BDD AutoHotKey - Visual Studio Only" href="http://www.jpboodhoo.com/blog/CommentView,guid,e8d02850-60a2-4c81-8061-bc72291b12de.aspx#commentstart" rel="external"&gt;Aaron’s modified one&lt;/a&gt; if want. Save the script as &lt;code&gt;some-name-here.ahk&lt;/code&gt;, wherever you want, I have mine in my Documents directory. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Pull down &lt;/strong&gt;&lt;a title="BDD AutoHotKey - Custom Icons" href="http://davesquared.blogspot.com/2008/05/bdd-test-naming-with-autohotkey.html" rel="external"&gt;&lt;strong&gt;Dave’s icons&lt;/strong&gt;&lt;/a&gt; – copy the two icon files to the same directory as your .ahk script from step 2. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Launch your script!&lt;/strong&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f06%2f07%2fsave-your-fingers-use-a-bdd-autohotkey-script.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f06%2f07%2fsave-your-fingers-use-a-bdd-autohotkey-script.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:315549b1-f905-461e-9344-846758bd2666" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/bdd" rel="tag"&gt;bdd&lt;/a&gt;, &lt;a href="http://technorati.com/tags/visualstudio" rel="tag"&gt;visualstudio&lt;/a&gt;, &lt;a href="http://technorati.com/tags/productivity" rel="tag"&gt;productivity&lt;/a&gt;, &lt;a href="http://technorati.com/tags/autohotkey" rel="tag"&gt;autohotkey&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12754.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=cMnccZ"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=cMnccZ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=jVP0Ki"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=jVP0Ki" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=KjU4VI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=KjU4VI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=MHxiyI"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=MHxiyI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=H2fJ5i"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=H2fJ5i" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=5R66ri"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=5R66ri" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/307139856" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/06/07/save-your-fingers-use-a-bdd-autohotkey-script.aspx</guid>
            <pubDate>Sun, 08 Jun 2008 03:59:29 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12754.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/06/07/save-your-fingers-use-a-bdd-autohotkey-script.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12754.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12754.aspx</trackback:ping>
        </item>
        <item>
            <title>Visual Studio Usability Tip: Highlight Current Line</title>
            <category>Tips &amp;amp; Tricks.</category>
            <link>http://stevenharman.net/blog/archive/2008/05/16/visual-studio-usability-tip-highlight-current-line.aspx</link>
            <description>&lt;p&gt;This may seem like a completely obvious tip to some, and like a complete waste of time to others. But you know what? Its something that I've found extremely useful so I'm going to share it anyhow. &lt;/p&gt;  &lt;p&gt;&lt;em&gt;Hey, this is my blog and I can do what I want!&lt;/em&gt; :)&lt;/p&gt;  &lt;blockquote class="exclamation"&gt;   &lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; I forgot to explain how to enable Highlight Current Line in the original post. I've now added instructions.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Highlight Current Line&lt;/h3&gt;  &lt;p&gt;This feature is not available in vanilla Visual Studio - its part of my &lt;a title="ReSharper - a .net developer's best friend!" href="http://stevenharman.net/blog/Tags/resharper/"&gt;favorite zero-friction productivity enhancer&lt;/a&gt;, ReSharper. I'm sure other productivity add-ins like &lt;a title="DevExpress Visual Studio Tools" href="http://www.devexpress.com/Products/NET/IDETools/" rel="external"&gt;CodeRush/Refactor!&lt;/a&gt; have something similar, but I don't know for sure. Maybe one of my friends can confirm... &lt;em&gt;looking in your direction &lt;/em&gt;&lt;a title="Dustin Campbell" href="http://diditwith.net" rel="friend met"&gt;&lt;em&gt;Dustin&lt;/em&gt;&lt;/a&gt;&lt;em&gt; and/or &lt;/em&gt;&lt;a title="Jay Wren" href="http://jrwren.wrenfam.com/blog/" rel="friend met"&gt;&lt;em&gt;Jay&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a title="ReSharper - Highlight Current Line" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/VisualStudioUsabilityTipHighlightCurrent_94D0/resharper-highlight-current-line_2.png" rel="lightbox[resharper-highlight-current-line]"&gt;&lt;img class="right" height="91" alt="ReSharper - Highlight Current Line" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/VisualStudioUsabilityTipHighlightCurrent_94D0/resharper-highlight-current-line_thumb.png" width="240" /&gt;&lt;/a&gt;Anyhow, you can see it in action in the screen shot to the right.&lt;/p&gt;  &lt;p&gt;Notice the slight variation in contrast between the standard background color and that of line #27. That's the highlighted current line.&lt;/p&gt;  &lt;p&gt;The key for me not getting too much contrast between your standard background and the highlight color.&lt;/p&gt;  &lt;p&gt;For a dark background you'll want a highlight that is just a few shades lighter, and for a light background you need a shade that is just a bit darker. The highlight should be obvious, but subtle. The point is not to distract your eye, but just to give it a visual cue.&lt;/p&gt;  &lt;h3&gt;OK... so?&lt;/h3&gt;  &lt;p&gt;So why exactly is this important, helpful, or even relevant? For two reasons:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;strong&gt;It makes finding your cursor extremely easy&lt;/strong&gt; when navigating through your code base, which is really important when moving at the lightning fast speeds made possible by ReSharper and keyboard shortcut-fu. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;I like shiny things&lt;/strong&gt;... and eye candy. And that's exactly what this is. :) &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;So how do I enable it?&lt;/h3&gt;  &lt;p&gt;First you need to turn the option on, and to do that you'll need ReSharper. So:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Install ReSharper, FTW! &lt;/li&gt;    &lt;li&gt;In Visual Studio, open the ReSharper -&amp;gt; Options dialog. &lt;/li&gt;    &lt;li&gt;Open the Editor section. &lt;/li&gt;    &lt;li&gt;Check the "Highlight current line" option. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Next you need to set a custom highlight color, which you'll probably want to do because the default one is pretty ugly... and doesn't work well with dark themes. To do that:&lt;a title="ReSharper Highlight Color Settings" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/VisualStudioUsabilityTipHighlightCurrent_94D0/color-and-font-settings_2.png" rel="lightbox[resharper-highlight-current-line]"&gt;&lt;img class="right" height="91" alt="ReSharper Highlight Color Settings" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/VisualStudioUsabilityTipHighlightCurrent_94D0/color-and-font-settings_thumb.png" width="159" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;In Visual Studio, open the Tools -&amp;gt; Options dialog. &lt;/li&gt;    &lt;li&gt;Open the Environment -&amp;gt; Fonts and Colors section. &lt;/li&gt;    &lt;li&gt;In the Display items list, find the &lt;strong&gt;ReSharper Current Line&lt;/strong&gt; and set your custom color. &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;Or the easy way...&lt;/h3&gt;  &lt;p&gt;If you're interested, you can grab the color scheme seen above (a variation on VibrantInk) from the &lt;a title="The CodeIncubator" href="http://codeincubator.com" rel="external"&gt;CodeIncubator&lt;/a&gt; project's code repository. You'll find it in the &lt;a title="VisualStudio IDE Settings" href="http://code.google.com/p/codeincubator/source/browse/IDE-Settings/VisualStudio/" rel="external"&gt;IDE-Settings directory under VisualStudio&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Well, there you have it. Another possibly pointless usability/productivity tip from my &lt;abbr title="Integrated Development Environment"&gt;IDE&lt;/abbr&gt; to yours. &lt;strong&gt;Enjoy!&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f05%2f16%2fvisual-studio-usability-tip-highlight-current-line.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f05%2f16%2fvisual-studio-usability-tip-highlight-current-line.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1121e01b-a7b5-4179-aea7-f605a1e83e6b" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/resharper" rel="tag"&gt;resharper&lt;/a&gt;, &lt;a href="http://technorati.com/tags/productivity" rel="tag"&gt;productivity&lt;/a&gt;, &lt;a href="http://technorati.com/tags/visualstudio" rel="tag"&gt;visualstudio&lt;/a&gt;, &lt;a href="http://technorati.com/tags/tip/trick" rel="tag"&gt;tip/trick&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12753.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=xR1qpA"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=xR1qpA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=PIsggh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=PIsggh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=OoVv5H"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=OoVv5H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=yewKDH"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=yewKDH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=KTYS5h"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=KTYS5h" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=ENfE3h"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=ENfE3h" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/291700447" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/05/16/visual-studio-usability-tip-highlight-current-line.aspx</guid>
            <pubDate>Fri, 16 May 2008 15:06:21 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12753.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/05/16/visual-studio-usability-tip-highlight-current-line.aspx#feedback</comments>
            <slash:comments>13</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12753.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12753.aspx</trackback:ping>
        </item>
        <item>
            <title>The Easy Way to TDD</title>
            <category>Me, On Software.</category>
            <category>Rants &amp;amp; the Lighter Side.</category>
            <link>http://stevenharman.net/blog/archive/2008/05/14/the-easy-way-to-tdd.aspx</link>
            <description>&lt;p&gt;Interested in getting started with Test-Driven Development but not sure where to start? Fear not!&lt;/p&gt;  &lt;p&gt;&lt;a title="TDD Available at Front Desk" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/TheEasyWaytoTDD_14C58/tdd-at-front-desk_2.png" rel="lightbox"&gt;&lt;img height="236" alt="TDD Available at Front Desk" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/TheEasyWaytoTDD_14C58/tdd-at-front-desk_thumb.png" width="400" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3 class="clear"&gt;Get you some!&lt;/h3&gt;  &lt;p&gt;That's right, you can now get your &lt;abbr title="Test-Driven Development"&gt;TDD&lt;/abbr&gt; at the front desk of your local Crowne Plaza.&lt;/p&gt;  &lt;p&gt;Wait... what do you mean its not &lt;em&gt;that&lt;/em&gt; kind of TDD? I saw this sign in the hotel lobby during my recent trip to the &lt;a title="WMDoDN" href="http://www.wmdotnet.org/dodn08/" rel="external"&gt;West Michigan Day of .Net&lt;/a&gt;, I swear!&lt;/p&gt;  &lt;p&gt;&lt;a title="Winging It" href="http://blog.timwingfield.com/" rel="friend met co-worker"&gt;Tim&lt;/a&gt; and &lt;a href="http://jamescbender.com" rel="friend met co-worker"&gt;James&lt;/a&gt; saw it too, just ask 'em!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f05%2f14%2fthe-easy-way-to-tdd.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f05%2f14%2fthe-easy-way-to-tdd.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:006c7147-18c9-4b23-89c2-bc2447b949af" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/tdd" rel="tag"&gt;tdd&lt;/a&gt;, &lt;a href="http://technorati.com/tags/dayofdotnet" rel="tag"&gt;dayofdotnet&lt;/a&gt;, &lt;a href="http://technorati.com/tags/funny" rel="tag"&gt;funny&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12752.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=JcbVX3"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=JcbVX3" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=CrwnSh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=CrwnSh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=bvwV4H"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=bvwV4H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=eRrVkH"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=eRrVkH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=gk1NCh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=gk1NCh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=rtFRCh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=rtFRCh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/289908890" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/05/14/the-easy-way-to-tdd.aspx</guid>
            <pubDate>Wed, 14 May 2008 04:01:28 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12752.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/05/14/the-easy-way-to-tdd.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12752.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12752.aspx</trackback:ping>
        </item>
        <item>
            <title>ALT.DayOf.Net?</title>
            <category>Me, On Software.</category>
            <link>http://stevenharman.net/blog/archive/2008/05/13/alt.dayof.net.aspx</link>
            <description>&lt;p&gt;The recent series of &lt;a title="Day of .Net" href="http://www.dayofdotnet.org/" rel="external"&gt;Day of .Net events&lt;/a&gt; have been a bit &lt;em&gt;atypical&lt;/em&gt; of most other Microsoft related conferences/events - at least historically speaking.&lt;/p&gt;  &lt;p&gt;The biggest difference I've seen? The decreasing number of &lt;em&gt;"Hurray for the latest golden hammer handed down by our Redmond overlords"&lt;/em&gt; sessions.&lt;/p&gt;  &lt;p&gt;Instead, most sessions have focused on practices, principles, and tooling decidedly &lt;em&gt;not&lt;/em&gt; driven nor delivered by Microsoft. They come from a more organic source - a community of developers seeking to continuously improve ourselves and our craft.&lt;/p&gt;  &lt;h3&gt;What community?&lt;/h3&gt;  &lt;p&gt;Some members of the community might gather under the &lt;a title="ALT.NET" href="http://altdotnet.org/" rel="external"&gt;ALT.NET&lt;/a&gt; banner, others might not, but we are all part of the same evolving community.&lt;/p&gt;  &lt;p&gt;We as a larger development community are not where we need to be, we can always do better. Heck, that's the entire premise of continuous improvement and one reason &lt;a title="The Developer Exchange Program" href="http://stevenharman.net/blog/archive/2008/04/20/the-developer-exchange-program.aspx"&gt;The Developer Exchange Program&lt;/a&gt; makes so much sense. But we are making progress.&lt;/p&gt;  &lt;h3&gt;Spreading the goodness&lt;/h3&gt;  &lt;p&gt;And its not just the big events like the recent &lt;a title="ALT.NET - Seattle" href="http://altdotnet.org/events/seattle" rel="external"&gt;ALT.NET Open Spaces event in Seattle&lt;/a&gt; that are helping to educate and push us forward. Many similar conversations are happening across the community - the Day of .Net events are a great example of that.&lt;/p&gt;  &lt;p&gt;&lt;img class="left" height="175" alt="Day of .Net" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/TheEasyWaytoTDD_13907/dayOfDotNetLogo3d_Small_3.png" width="178" /&gt; If you've never been to one before I'd encourage you to hit the next one in your area.&lt;/p&gt;  &lt;p&gt;Not one coming to a town near you...? &lt;a title="Organizing a Day of .Net Conference" href="http://www.dayofdotnet.org/OrganizingAConference.aspx" rel="external"&gt;Organize one&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;What if you've been out to an event or two? Why stop now? And next time bring a co-worker or friend and share the love.&lt;/p&gt;  &lt;p&gt;To have any chance of educating and pushing this &lt;em&gt;thing&lt;/em&gt; out of our echo chamber and into the mainstream we need to get folks involved. Bring someone along and maybe suggest a few sessions they could attend - ideally somewhere outside their comfort zone. Who knows, maybe something will stick!&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b5e4f3ee-367e-49fb-a8ed-c9bf1008057c" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/.net" rel="tag"&gt;.net&lt;/a&gt;, &lt;a href="http://technorati.com/tags/community" rel="tag"&gt;community&lt;/a&gt;, &lt;a href="http://technorati.com/tags/altdotnet" rel="tag"&gt;altdotnet&lt;/a&gt;, &lt;a href="http://technorati.com/tags/dayofdotnet" rel="tag"&gt;dayofdotnet&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12751.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=JaU0yY"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=JaU0yY" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=a9Jdnh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=a9Jdnh" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=juFG6H"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=juFG6H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=sq9MKH"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=sq9MKH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=11PVth"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=11PVth" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=U010Qh"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=U010Qh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/289893766" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/05/13/alt.dayof.net.aspx</guid>
            <pubDate>Wed, 14 May 2008 03:34:44 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12751.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/05/13/alt.dayof.net.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12751.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12751.aspx</trackback:ping>
        </item>
        <item>
            <title>Hacking Visual Studio to Use More Than 2Gigabytes of Memory</title>
            <category>Tips &amp;amp; Tricks.</category>
            <link>http://stevenharman.net/blog/archive/2008/04/29/hacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx</link>
            <description>&lt;p&gt;Visual Studio can be a tremendous resource hog, especially if you have a large solution and you're using a productivity add-in or two.&lt;/p&gt;  &lt;p&gt;On my current project we're running &lt;abbr title="Visual Studio"&gt;VS&lt;/abbr&gt; 2008, we've got just under 20 projects in the solution, and several of us are &lt;a title="ReSharper 4.0 EAP Nightly Builds are Now Available!" href="http://stevenharman.net/blog/archive/2008/02/15/resharper-4.0-eap-nightly-builds-are-now-available.aspx" rel="external"&gt;using the ReSharper 4.0 EAP nightly builds&lt;/a&gt; to enhance our dev-fu. And you know what... we're restarting VS at least a half dozen times a day to work around a nasty exception we regularly encounter while trying to compile:&lt;/p&gt;  &lt;blockquote class="stop"&gt;   &lt;p&gt;Not enough storage is available to complete this operation.&lt;/p&gt; &lt;/blockquote&gt;  &lt;h3&gt;Not enough storage...?&lt;/h3&gt;  &lt;p&gt;Yep - storage. But you should read &lt;em&gt;storage&lt;/em&gt; to mean &lt;em&gt;memory&lt;/em&gt;... &lt;abbr title="Random Access Memory"&gt;RAM&lt;/abbr&gt; that is.&lt;/p&gt;  &lt;p&gt;After running for a while the Visual Studio process (found under devenv.exe in process explorer) maxes out its available memory and the above exception is thrown. The only way to reclaim the memory and successfully compile the solution is to restart the process. &lt;em&gt;Bummer!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Maybe we should just upgrade our hardware, right?&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;I mean, with cost of processor cycles and RAM falling as fast as gas prices are rising, why not just spend a few bucks and make sure we're all running multi-core boxes with 4+ Gigabytes of memory and storage space to burn. Well guess what... we are.&lt;/p&gt;  &lt;p&gt;All of the developers are running nice beefy machines with lots of RAM, super-fast processors, and we even have nice 21" wide screen &lt;abbr title="Digital Visual Interface"&gt;DVI&lt;/abbr&gt; monitors. So this ain't no hardware problem.&lt;/p&gt;  &lt;h3&gt;Its a software problem.&lt;/h3&gt;  &lt;p&gt;I will admit, we are running a mix of 32-bit operating systems - mostly Vista with a handful of XP machines mixed in for the devs that roll that way. And Jeff Atwood has covered the &lt;a title="Dude, Where's my 4 Gigabytes of RAM" href="http://www.codinghorror.com/blog/archives/000811.html" rel="external"&gt;missing RAM&lt;/a&gt; problem before, but even switching to a 64-bit &lt;abbr title="Operating System"&gt;OS&lt;/abbr&gt; wouldn't solve our problem. At least not entirely.&lt;/p&gt;  &lt;p&gt;The problem is with Visual Studio. Being a 32-bit application its limited to just 2GB of virtual memory, even if its running in a 64-bit OS. At least, its limited to 2GB by default... but we can &lt;strike&gt;hack around&lt;/strike&gt; change that.&lt;/p&gt;  &lt;h3&gt;The hack... err, solution.&lt;/h3&gt;  &lt;p&gt;&lt;a title="Gimme 3GB!" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/HackingVisualStudiotoUseMoreThan2GBofMem_12763/bcdedit-command_2.png" rel="lightbox[hackingVS]"&gt;&lt;img class="right" height="143" alt="Gimme 3GB!" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/HackingVisualStudiotoUseMoreThan2GBofMem_12763/bcdedit-command_thumb.png" width="240" /&gt;&lt;/a&gt;The first thing to do is tell the OS to increase the amount user-mode memory from 2GB to 3GB. &lt;em&gt;If you're running a 64-bit you can skip this step.&lt;/em&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;for &lt;strong&gt;Windows XP&lt;/strong&gt;: Backup the &lt;code&gt;boot.ini&lt;/code&gt; file and then put the /3GB switch in your &lt;code&gt;boot.ini&lt;/code&gt;. (&lt;a title="Memory Support and Windows Operating Systems" href="http://www.microsoft.com/whdc/system/platform/server/PAE/PAEmem.mspx" rel="external"&gt;more information&lt;/a&gt; on the /3GB option) &lt;/li&gt;    &lt;li&gt;for &lt;strong&gt;Vista&lt;/strong&gt;: run the following from the Visual Studio command prompt (&lt;a title="Hey where did /3GB go in Longhorn and Vista?" href="http://blogs.technet.com/brad_rutkowski/archive/2006/10/03/Hey-where-did-_2F00_3GB-go-in-Longhorn-and-Vista_3F00_.aspx" rel="external"&gt;Brad Rutkowski&lt;/a&gt; has the full scoop):       &lt;div class="csharpcode"&gt;       &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;BCDEDIT /Set IncreaseUserVa 3072&lt;/pre&gt;
    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then we have make Visual Studio large address aware.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Be sure to backup &lt;code&gt;devenv.exe&lt;/code&gt; &lt;/li&gt;

  &lt;li&gt;Using the Visual Studio command prompt, navigate to &lt;code&gt;C:\Program Files\Microsoft Visual Studio 9\Common7\IDE\&lt;/code&gt; &lt;/li&gt;

  &lt;li&gt;execute the following command: 
    &lt;div class="csharpcode"&gt;
      &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;editbin /LARGEADDRESSAWARE devenv.exe&lt;/pre&gt;
    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Finally we'll use the old Microsoft-fix-all - reboot the machine. &lt;em&gt;Bounce that box!&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;Look at all that memory!&lt;/h3&gt;

&lt;p&gt;&lt;a title="More memory, FTW!" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/HackingVisualStudiotoUseMoreThan2GBofMem_12763/task-manager-devenv_2.png" rel="lightbox[hackingVS]"&gt;&lt;img class="left" height="187" alt="More memory, FTW!" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/HackingVisualStudiotoUseMoreThan2GBofMem_12763/task-manager-devenv_thumb.png" width="240" /&gt;&lt;/a&gt; At this point Visual Studio should be allowed to consume up to 3GB of memory before throwing that ugly &lt;strong&gt;out of memory exception&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Just to show you I'm not lying, I grabbed a screen shot of my process explorer with &lt;code&gt;devenv.exe&lt;/code&gt; process chewing up more than 2.5GB of memory. &lt;em&gt;Sweet!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Note:&lt;/em&gt; even with our large solution and running the early, and memory-hungry, ReSharper bits, Visual Studio typically stays around or just above the 2GB mark. However it can spike up to 2.5+ GB while compiling, as show in this screen shot.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f04%2f29%2fhacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f04%2f29%2fhacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:8e020102-2daa-4e34-9e50-1b63f52b0f41" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/visualstudio" rel="tag"&gt;visualstudio&lt;/a&gt;, &lt;a href="http://technorati.com/tags/resharper" rel="tag"&gt;resharper&lt;/a&gt;, &lt;a href="http://technorati.com/tags/hardware" rel="tag"&gt;hardware&lt;/a&gt;, &lt;a href="http://technorati.com/tags/vista" rel="tag"&gt;vista&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12746.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=AvIBkN"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=AvIBkN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=LdsMZg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=LdsMZg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=xm0jnG"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=xm0jnG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=GLR49G"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=GLR49G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=V96e5g"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=V96e5g" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=fA7Nig"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=fA7Nig" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/280495232" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/04/29/hacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx</guid>
            <pubDate>Wed, 30 Apr 2008 02:54:47 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12746.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/04/29/hacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx#feedback</comments>
            <slash:comments>17</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12746.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12746.aspx</trackback:ping>
        </item>
        <item>
            <title>The Developer Exchange Program</title>
            <category>Me, On Software.</category>
            <link>http://stevenharman.net/blog/archive/2008/04/20/the-developer-exchange-program.aspx</link>
            <description>&lt;p&gt;This week I was having a conversation with some fellow developers at the &lt;a title="The ALT.NET Community" href="http://altdotnet.org/" rel="external"&gt;ALT.NET&lt;/a&gt; Open Spaces conference and an interesting topic came up. We were talking about vast amounts of time, mostly personal time, we spend trying to improve our skills and our craft. We spend time reading and writing blogs, books, mailing list messages, attending and giving talks, contributing to Open Source, and reading and writing code.&lt;/p&gt;  &lt;p&gt;We spend a huge number of hours in the quest for continuous improvement.&lt;/p&gt;  &lt;h3&gt;Self-teaching is good&lt;/h3&gt;  &lt;p&gt;We all agreed that self-teaching is important and we do it because we enjoy it, but man does it take a lot of time. For many of us that means we sacrifice or compromise when it comes to time spent with families, friends, and other parts of our lives.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Why?&lt;/em&gt; Because we're thirsty for knowledge and we know that others are out there doing things differently, and possibly better. We hope that by learning from them we can improve ourselves and our craft in the larger sense.&lt;/p&gt;  &lt;p&gt;After some war stories and one-uppers we realized something. &lt;strong&gt;It be great if we could spend more time working with, and learning from, each other... in person!&lt;/strong&gt; Ideally resulting in less wasted time banging our heads into the keyboard and more time doing other &lt;em&gt;life stuff&lt;/em&gt;.&lt;/p&gt;  &lt;h3&gt;Learning from each other is better&lt;/h3&gt;  &lt;p&gt;What if we could each spend a few days a quarter at another developer's job, pairing with and observing he and his team work. Just being able to experience someone else's take on Scrum/&lt;abbr title="eXtreme Programming"&gt;XP&lt;/abbr&gt;, &lt;abbr title="Behavior-Driven Development (or Design)"&gt;BDD&lt;/abbr&gt;, etc... would be awesome. The potential for cross-pollination and exchange of ideas and practices is almost limitless.&lt;/p&gt;  &lt;p&gt;And &lt;strong&gt;think about how much faster we could learn in person&lt;/strong&gt;. With such an immediate and personal feedback loop we might just find ourselves with enough free time to try to regain some of those things we're giving up now.&lt;/p&gt;  &lt;p&gt;&lt;a title="Scott Bellware doing the BDD thing..." href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/TheDeveloperExchangeProgram_FAD5/PIC-0004_1_2.jpg" rel="lightbox"&gt;&lt;img class="left" height="180" alt="Scott Bellware doing the BDD thing..." src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/TheDeveloperExchangeProgram_FAD5/PIC-0004_1_thumb.jpg" width="240" /&gt;&lt;/a&gt; I have no doubt that going to observe &lt;a title="Scott Bellware on Twitter" href="http://twitter.com/sbellware" rel="external"&gt;Scott Bellware's&lt;/a&gt; team in action for a few days - or even better, an entire iteration - would have resulted in me learning more about &lt;a title="Behavior-Driven Development" href="http://behaviour-driven.org/" rel="external"&gt;BDD&lt;/a&gt; and challenging more of my own, and hopefully some of their, thoughts and understandings than I got six months of going it alone. And that translates to fewer nights with in front of my computer until 3am, and more time for the rest of my life.&lt;/p&gt;  &lt;p&gt;And what about you? Wouldn't you love to go hang with &lt;a title="The Shadetree Developer" href="http://codebetter.com/blogs/jeremy.miller/" rel="external"&gt;Jeremy Miller&lt;/a&gt; and see how he runs his teams and with any luck, have some of his &lt;a title="ReSharper" href="http://www.jetbrains.com/resharper/" rel="external"&gt;ReSharper&lt;/a&gt;-fu rub off on you?&lt;/p&gt;  &lt;p&gt;Or see just why &lt;a title="Aaron Jensen" href="http://codebetter.com/blogs/aaron.jensen/" rel="external"&gt;Aaron Jensen&lt;/a&gt; and &lt;a title="Jacob Lewallen" href="http://codebetter.com/blogs/jacob.lewallen/" rel="external"&gt;Jacob Lewallen&lt;/a&gt; (a.k.a.: &lt;em&gt;the Eleutian guys&lt;/em&gt;) love that AutoMocking Container so much? And believe me, they are stupid-smart guys!&lt;/p&gt;  &lt;p&gt;How much better a developer would you be if you could regularly observe another Agile team in action... in person.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f04%2f20%2fthe-developer-exchange-program.aspx"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fstevenharman.net%2fblog%2farchive%2f2008%2f04%2f20%2fthe-developer-exchange-program.aspx" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:ad26a9a9-1621-4f9c-a8f2-87a0559f24c9" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/agile" rel="tag"&gt;agile&lt;/a&gt;, &lt;a href="http://technorati.com/tags/programming" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://technorati.com/tags/community" rel="tag"&gt;community&lt;/a&gt;, &lt;a href="http://technorati.com/tags/altdotnet" rel="tag"&gt;altdotnet&lt;/a&gt;, &lt;a href="http://technorati.com/tags/developerexchangeprogram" rel="tag"&gt;developerexchangeprogram&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12745.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=xo6qAL"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=xo6qAL" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=mZRV55g"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=mZRV55g" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=Jyxq1cG"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=Jyxq1cG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=sWrh2SG"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=sWrh2SG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=I8iosfg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=I8iosfg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=OcfyvBg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=OcfyvBg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/274413483" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/04/20/the-developer-exchange-program.aspx</guid>
            <pubDate>Mon, 21 Apr 2008 02:52:01 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12745.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/04/20/the-developer-exchange-program.aspx#feedback</comments>
            <slash:comments>17</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12745.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12745.aspx</trackback:ping>
        </item>
        <item>
            <title>There's a Glitch in the System, I'm a Microsoft MVP</title>
            <category>Updates &amp;amp; News.</category>
            <link>http://stevenharman.net/blog/archive/2008/04/02/theres-a-glitch-in-the-system-im-a-microsoft-mvp.aspx</link>
            <description>&lt;p&gt;&lt;img class="left" height="81" alt="ASP/ASP.NET MVP" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/4c82200e07ee_13BC9/mvp-logo-med_3.png" width="200" /&gt; Today I received an email informing me that I've received a &lt;a title="Microsoft MVP Program" href="http://www.microsoft.com/mvp/" rel="external"&gt;Microsoft MVP Award&lt;/a&gt; in the ASP/ASP.NET category. &lt;em&gt;Woot!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Yeah, I realize its a whole day after all of the other MVPs received their renewal notices and all new MVPs got their emails, but hey... &lt;em&gt;better late than never!&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Actually, it seems the joker that originally nominated me messed up my email address and as a result my notification email got lost in the ether. But they eventually fixed the glitch, I received the notification email, and &lt;a title="Rob Conery" href="http://blog.wekeroad.com" rel="friend met"&gt;Rob&lt;/a&gt; is still my homey.&lt;/p&gt;  &lt;p&gt;So what exactly does it mean to be a Microsoft MVP?&lt;/p&gt;  &lt;p&gt;Actually... I'm not really sure yet. But I do know it means I'll be traveling to Redmond in two weeks for the &lt;a title="2008 MVP Global Summit" href="http://www.mvpsummit2008.com" rel="external"&gt;2008 MVP Global Summit&lt;/a&gt;, so that's something! I also get to put that snazzy logo on my blog, and I do loves me some snazzy badges. :)&lt;/p&gt;  &lt;p&gt;Seriously though, I really appreciate the honor and would like to thank Rob Conery for initially nominating me and &lt;a title="Phil Haack" href="http://haacked.com" rel="friend met"&gt;Phil Haack&lt;/a&gt; for submitting a second nomination - likely causing the buffer overflow that resulted in me be awarded the MVP status.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;strong&gt;No takesies backsies!&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:24d7cb2a-e7a1-4575-8a2c-fd089aac08a5" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/community" rel="tag"&gt;community&lt;/a&gt;, &lt;a href="http://technorati.com/tags/mvp" rel="tag"&gt;mvp&lt;/a&gt;, &lt;a href="http://technorati.com/tags/microsoft" rel="tag"&gt;microsoft&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12729.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=sZ7PSX"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=sZ7PSX" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=vj3zYjg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=vj3zYjg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=Y4kAeGG"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=Y4kAeGG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=c0LnYzG"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=c0LnYzG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=vnDfZFg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=vnDfZFg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=huC9Olg"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=huC9Olg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/263051707" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/04/02/theres-a-glitch-in-the-system-im-a-microsoft-mvp.aspx</guid>
            <pubDate>Thu, 03 Apr 2008 02:45:09 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12729.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/04/02/theres-a-glitch-in-the-system-im-a-microsoft-mvp.aspx#feedback</comments>
            <slash:comments>21</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12729.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12729.aspx</trackback:ping>
        </item>
        <item>
            <title>Run your MbUnit Tests from ReSharper 4.0!</title>
            <category>Code &amp;amp; Stuff...</category>
            <link>http://stevenharman.net/blog/archive/2008/03/24/run-your-mbunit-tests-from-resharper-4.0.aspx</link>
            <description>&lt;p&gt;I just saw that &lt;a href="http://der-albert.com/" rel="external"&gt;Albert Weinert&lt;/a&gt; has upgraded the &lt;a title="MbUnit in ReSharper" href="http://code.google.com/p/mbunit-resharper/" rel="external"&gt;MbUnit test runner plugin&lt;/a&gt; to work in ReSharper 4.0, sweet! Since ReSharper 4.0 is still in pre-beta, there is no guarantee that it will work at all, but I'm running the latest &lt;a title="ReSharper 4.0 EAP - Nightly Builds" href="http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+Nightly+Builds" rel="external"&gt;nightly builds&lt;/a&gt; and &lt;abbr title="In My Opinion"&gt;IMO&lt;/abbr&gt; its getting more stable every day.&lt;/p&gt;  &lt;p&gt;&lt;a title="MbUnit ReSharper Test Runner" href="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/RunyourMbUnitTestsfromReSharper4.0_93FE/MbUnit-ReSharper-TestRunner_2.png" rel="lightbox[ReSharper-MbUnit-Beta]"&gt;&lt;img class="left" height="133" alt="MbUnit ReSharper Test Runner" src="http://stevenharman.net/images/stevenharman_net/blog/WindowsLiveWriter/RunyourMbUnitTestsfromReSharper4.0_93FE/MbUnit-ReSharper-TestRunner_thumb.png" width="240" /&gt;&lt;/a&gt; I verified that the &lt;a title="MbUnit - Generative Unit Test Framework" href="http://mbunit.com/" rel="external"&gt;MbUnit&lt;/a&gt; test runner plugin does work by installing it on against ReSharper 4.0 build 758 and opening the &lt;a title="Subtext Project" href="http://subtextproject.com" rel="external"&gt;Subtext&lt;/a&gt; 1.9 Branch source code. The image to the left shows the ReSharper Unit Test Explorer open and displaying the MbUnit tests from Subtext.&lt;/p&gt;  &lt;p&gt;Having such tight integration with ReSharper goes a long way in delivering the kind of frictionless development experience that I'm after. Though to be honest, I'm still a huge fan of &lt;a title="Zero Friction Unit Testing Add-In for Visual Studio" href="http://testdriven.net/" rel="external"&gt;TestDriven.net&lt;/a&gt; - you just can't beat the &lt;strong&gt;Right-click -&amp;gt; Run Test&lt;/strong&gt; slickness that it brings to the table.&lt;/p&gt;  &lt;p&gt;That being said, I know not everyone has TestDriven.net, but a lot of folks are already using ReSharper to increase their productivity and reduce daily development pains. And being able to run MbUnit tests right inside the &lt;abbr title="Integrated Development Environment"&gt;IDE&lt;/abbr&gt;, via ReSharper, will reduce those pains even more... &lt;strong&gt;Low Friction == More Better!&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;And hopefully this plugin will open a few doors for MbUnit - my xUnit test framework of choice - and increase its adoption rate and market share. :)&lt;/p&gt;  &lt;p&gt;So what are you waiting for... go get you some ReSharper + MbUnit love!&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="Resharper 4.0 EAP - Nightly Builds" href="http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.0+Nightly+Builds" rel="external"&gt;ReSharper Nightly Builds&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="MbUnit ReSharper test runner Plugin" href="http://code.google.com/p/mbunit-resharper/" rel="external"&gt;MbUnit + ReSharper plugin&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="Zero Friction Unit Testing Add-In for Visual Studio" href="http://testdriven.net/" rel="external"&gt;TestDriven.net&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d0eb9552-920d-493e-85f4-5956616e18a0" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/resharper" rel="tag"&gt;resharper&lt;/a&gt;, &lt;a href="http://technorati.com/tags/mbunit" rel="tag"&gt;mbunit&lt;/a&gt;, &lt;a href="http://technorati.com/tags/testdriven.net" rel="tag"&gt;testdriven.net&lt;/a&gt;, &lt;a href="http://technorati.com/tags/testing" rel="tag"&gt;testing&lt;/a&gt;, &lt;a href="http://technorati.com/tags/visualstudio" rel="tag"&gt;visualstudio&lt;/a&gt;&lt;/div&gt;&lt;img src="http://stevenharman.net/blog/aggbug/12728.aspx" width="1" height="1" /&gt;
&lt;p&gt;&lt;a href="http://feeds.stevenharman.net/~a/stevenharman?a=Hazakd"&gt;&lt;img src="http://feeds.stevenharman.net/~a/stevenharman?i=Hazakd" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=rtpprxf"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=rtpprxf" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=ZM31iKF"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=ZM31iKF" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=Vx2abMF"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=Vx2abMF" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=w5E08Zf"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=w5E08Zf" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevenharman.net/~f/stevenharman?a=CDQVPaf"&gt;&lt;img src="http://feeds.stevenharman.net/~f/stevenharman?i=CDQVPaf" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.stevenharman.net/~r/stevenharman/~4/257082291" height="1" width="1"/&gt;</description>
            <dc:creator>Steven Harman</dc:creator>
            <guid isPermaLink="false">http://stevenharman.net/blog/archive/2008/03/24/run-your-mbunit-tests-from-resharper-4.0.aspx</guid>
            <pubDate>Mon, 24 Mar 2008 14:58:29 GMT</pubDate>
            <wfw:comment>http://stevenharman.net/blog/comments/12728.aspx</wfw:comment>
            <comments>http://stevenharman.net/blog/archive/2008/03/24/run-your-mbunit-tests-from-resharper-4.0.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://stevenharman.net/blog/comments/commentRss/12728.aspx</wfw:commentRss>
            <trackback:ping>http://stevenharman.net/blog/services/trackbacks/12728.aspx</trackback:ping>
        </item>
    </channel>
</rss>
