<rss version="2.0" 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/">
    <channel>
        <title>.NET</title>
        <link>http://geekswithblogs.net/brians/category/3854.aspx</link>
        <description>.NET</description>
        <language>en-US</language>
        <copyright>Brian Schroer</copyright>
        <managingEditor>brianschroer@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>.NET Rocks! - 423 hours and counting...</title>
            <link>http://geekswithblogs.net/brians/archive/2008/06/12/122827.aspx</link>
            <description>&lt;p&gt;Congratulations to Carl Franklin and Richard Campbell on the upcoming 350th episode of .NET Rocks!&lt;/p&gt;
&lt;p&gt; I can't tell you how many hours of education &amp;amp; enjoyment DNR has provided me over the years.&lt;/p&gt;
&lt;p&gt; ...Well, actually, I can...&lt;/p&gt;
&lt;p&gt; I discovered the show around episode 10 or so, quickly caught up with the previous shows, and haven't missed one since.&lt;/p&gt;
&lt;p&gt; I added up the show runtimes, and the total is approximately 423 hours, or almost 18 days! &lt;/p&gt;
&lt;p&gt; A lot of people listen to DNR on their commute, and there's enough DNR that you could listen to it the entire time on a 27,000 mile road trip from Vancouver BC to New London CT and back by way of San Diego, Miami, New York City, Bangor, Yakima, Reno, Vegas, and St. Louis. &lt;/p&gt;
&lt;p&gt;(Here's the map, if anyone would like to make that trip - Good luck paying for the gas: &lt;a style="FONT-WEIGHT: bold" onclick="return top.js.OpenExtLink(window,event,this)" target="_blank" href="http://shrinkster.com/z6h"&gt;http://shrinkster.com/z6h&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt; &lt;img height="383" width="640" alt="" src="/images/geekswithblogs_net/brians/3864/r_DNRTrip.jpg" /&gt;&lt;/p&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122827"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122827" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/122827.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2008/06/12/122827.aspx</guid>
            <pubDate>Thu, 12 Jun 2008 18:16:19 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/122827.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2008/06/12/122827.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/122827.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/122827.aspx</trackback:ping>
        </item>
        <item>
            <title>Quickly select entire quoted string in Visual Studio</title>
            <link>http://geekswithblogs.net/brians/archive/2008/05/10/122049.aspx</link>
            <description>Here's a tip that will save you about 7 milliseconds over the course of your programming career...&lt;br /&gt;
&lt;br /&gt;
In Visual Studio, if you double-click to the left of the opening quote character (between the quote and the preceding character), the IDE will select the entire string, including the opening and closing quote characters.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122049"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122049" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/122049.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2008/05/10/122049.aspx</guid>
            <pubDate>Sun, 11 May 2008 01:02:45 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/122049.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2008/05/10/122049.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/122049.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/122049.aspx</trackback:ping>
        </item>
        <item>
            <title>Enum.GetValues and Enum.GetNames return arrays sorted by value</title>
            <link>http://geekswithblogs.net/brians/archive/2007/12/18/117799.aspx</link>
            <description>&lt;p&gt;If you ran this code:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;pre&gt;private enum FieldWidths&lt;br /&gt;{&lt;br /&gt;   CustomerNumber = 5,&lt;br /&gt;   OrderNumber = 10,&lt;br /&gt;   City = 30,&lt;br /&gt;   State = 2,&lt;br /&gt;   Zip = 11    &lt;br /&gt;}&lt;/pre&gt;
&lt;pre&gt;. . .&lt;/pre&gt;
&lt;pre&gt;int[] vals = (int[])Enum.GetValues(typeof(FieldWidths));&lt;br /&gt;string[] names = Enum.GetNames(typeof(FieldWidths));&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;...you might expect (I did, anyway) that the resulting arrays would look like this:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;vals: 5, 10, 30, 2, 11&lt;/p&gt;
&lt;p dir="ltr"&gt;names: "CustomerNumber", "OrderNumber", "City", "State", "Zip"&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;What you would get, though, is:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;vals: 2, 5, 10, 11, 30&lt;/p&gt;
&lt;p dir="ltr"&gt;names: "State", "CustomerNumber", "OrderNumber", "Zip", "City"&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;...because the arrays returned by Enum.GetValues and Enum.GetNames are sorted by the values in the enumeration.&lt;/p&gt;
&lt;p dir="ltr"&gt;I "&lt;a href="http://www.aisto.com/roeder/dotnet/"&gt;reflectored&lt;/a&gt;" a bit, and there doesn't seem to be a way to get the values from an enum in the order that they were specified, so I'll stop trying to do that.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=117799"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=117799" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/117799.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2007/12/18/117799.aspx</guid>
            <pubDate>Tue, 18 Dec 2007 14:13:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/117799.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2007/12/18/117799.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/117799.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/117799.aspx</trackback:ping>
        </item>
        <item>
            <title>PowerShell Cheat Sheet</title>
            <link>http://geekswithblogs.net/brians/archive/2007/11/05/116598.aspx</link>
            <description>&lt;p&gt;Inspired by &lt;a href="http://www.agileprogrammer.com/oneagilecoder/"&gt;Brian Button&lt;/a&gt;'s presentation at the &lt;a href="http://www.stlnet.org/"&gt;St. Louis .NET User Group&lt;/a&gt; and &lt;a href="http://www.dnrtv.com/default.aspx?showNum=82"&gt;Scott Hanselman's dnrTV! episode&lt;/a&gt;, I'm starting to look into PowerShell.&lt;/p&gt;
&lt;p&gt;Scott Dorman had a link to a &lt;a href="http://geekswithblogs.net/sdorman/archive/2007/07/28/Windows-PowerShell-e-book.aspx"&gt;free introductory PowerShell e-book&lt;/a&gt; a while ago. &lt;/p&gt;
&lt;p&gt;I haven't actually read the e-book yet, but when I printed it, I noticed a nice PowerShell Cheat Sheet at the end of the book, which looks like it might be very useful.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=116598"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=116598" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/116598.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2007/11/05/116598.aspx</guid>
            <pubDate>Mon, 05 Nov 2007 15:24:44 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/116598.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2007/11/05/116598.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/116598.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/116598.aspx</trackback:ping>
        </item>
        <item>
            <title>Free &amp;quot;Mini-Refactor!&amp;quot; From Developer Express</title>
            <link>http://geekswithblogs.net/brians/archive/2007/07/04/113674.aspx</link>
            <description>&lt;p&gt;When a free download of &lt;a href="http://www.devexpress.com/Products/NET/IDETools/RefactorASP/"&gt;Refactor!™ for ASP.NET 2.2&lt;/a&gt; was announced in May by Developer Express, I bookmarked it for future reference because I wasn't working on an ASP project at the time.&lt;/p&gt;
&lt;p&gt;When I took another look, I realized that the download includes 19 C#/VB code refactorings that work in any project, ASP.NET or not. They work in Visual Studio 2003, VS2005, and "Orcas".&lt;/p&gt;
&lt;p&gt;Included are Refactor! versions (with much nicer user interfaces) of four of the seven built-in VS2005 C# refactorings:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Rename&lt;/strong&gt;  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract Method&lt;/strong&gt;  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Encapsulate Field&lt;/strong&gt;  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Reorder Parameters&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;...plus:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Create Overload&lt;/strong&gt;:&lt;br /&gt;
    Creates an overload to an existing method, with fewer parameters.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract Property&lt;/strong&gt;:&lt;br /&gt;
    Creates a new property from the selected code block. The selection is replaced with appropriate code to reference the newly-declared property.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Flatten Conditional&lt;/strong&gt;:&lt;br /&gt;
    Unindents the If or Else statement for a conditional and applies one of the following refactorings: Replace Nested Conditional with Guard Clause, Remove Redundant Else, or Reverse Conditional followed by Remove Redundant Else.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Inline Temp&lt;/strong&gt;:&lt;br /&gt;
    Replaces all references to a local variable with its initial value.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Introduce Constant&lt;/strong&gt;:&lt;br /&gt;
    Declares a new constant, initialized to the value of the selected string or number.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Introduce Local&lt;/strong&gt;:&lt;br /&gt;
    Creates a new local variable initialized to the selected expression. Replaces the selection with the new variable.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Move Declaration Near Reference&lt;/strong&gt;:&lt;br /&gt;
    Moves the declaration statement for a local variable near its first reference.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Move Initialization to Declaration&lt;/strong&gt;:&lt;br /&gt;
    Combines a local variable's declaration with its first initialization.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Replace Temp with Query&lt;/strong&gt;:&lt;br /&gt;
    Replaces each reference to the active local variable with a call to an extracted method, which returns the initial value assigned to the local.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Reverse Conditional&lt;/strong&gt;:&lt;br /&gt;
    Inverts the logic in a conditional statement and swaps the If and Else blocks.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Safe Rename&lt;/strong&gt;:&lt;br /&gt;
    Safely renames non-private methods and properties by creating a duplicate member to preserve the old signature, calling the renamed member from the old member. The old member is hidden from Intellisense and marked "Obsolete". References to the old member will generate compiler warnings directing developers to the new renamed member.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Simplify Expression&lt;/strong&gt;:&lt;br /&gt;
    Resolves an expression to its simplest form.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Split Initialization from Declaration&lt;/strong&gt;:&lt;br /&gt;
    Breaks an initialized declaration for a local variable into a declaration and a separate initialization statement.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Split Temporary Variable&lt;/strong&gt;:&lt;br /&gt;
    Splits a local variable which has too many assignments, declaring a new local at the first new assignment following the first reference.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;...and the 10 ASP.NET 2.0 refactorings:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;Add Validator&lt;/strong&gt;:&lt;br /&gt;
    Adds one or more selected Validators to the active input control.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract ContentPlaceHolder&lt;/strong&gt;: &lt;br /&gt;
    Moves the selected content from a .master page to a new .aspx file, placing it inside &amp;lt;asp:content&amp;gt; tags, and inserts a new &amp;lt;asp:contentplaceholder&amp;gt; tag at the extraction point inside the master page.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract ContentPlaceHolder (and create master page)&lt;/strong&gt;:&lt;br /&gt;
    Moves the content that is *outside* of the selection (in the active .aspx page) to a new master page, inserting a &amp;lt;asp:contentplaceholder&amp;gt; tag to reference the extracted content, and then wraps the selection in the aspx page with &amp;lt;asp:content&amp;gt; tags and adds a MasterPageFile attribute to link to the new master page.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract Style (Class)&lt;/strong&gt;:&lt;br /&gt;
    Converts an inline style to a named class style.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract Style (id)&lt;/strong&gt;:&lt;br /&gt;
    Converts an inline style to a named id style.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Extract to UserControl&lt;/strong&gt;:&lt;br /&gt;
    Creates a UserControl for the selected block including content and dependent code.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Move Style Attributes to CSS&lt;/strong&gt;:&lt;br /&gt;
    Moves styling attributes from the active control to a new CSS class and applies the class to the control.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Move to Code-behind&lt;/strong&gt;:&lt;br /&gt;
    Moves code located in &amp;lt;script&amp;gt; tags to the code-behind file.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Rename Style&lt;/strong&gt;:&lt;br /&gt;
    Renames the active CSS style and updates all references to that style.  &lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Surround with Update Panel&lt;/strong&gt;:&lt;br /&gt;
    Surrounds a contiguous block of text in the source view with &amp;lt;asp:UpdatePanel …&amp;gt; and &amp;lt;ContentTemplate&amp;gt; tags.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://www.doitwith.net/2007/05/07/PowerfulFreeDownloadRefactor!ForASP.NET2.2.aspx"&gt;Here's a link to a post by Mark Miller&lt;/a&gt;, mad genius of Developer Express, showing examples of all of the refactorings.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113674"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113674" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/113674.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2007/07/04/113674.aspx</guid>
            <pubDate>Wed, 04 Jul 2007 13:51:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/113674.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2007/07/04/113674.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/113674.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/113674.aspx</trackback:ping>
        </item>
        <item>
            <title>CoolCommands for Visual Studio 2005</title>
            <link>http://geekswithblogs.net/brians/archive/2007/03/04/107922.aspx</link>
            <description>&lt;p&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="0767317B-992E-4b12-91E0-4F059A8CECA8:226f236a-7fb7-46ef-9ce5-cefe8a439c4a" contenteditable="false" 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/freetools" rel="tag"&gt;freetools&lt;/a&gt;&lt;/div&gt; &lt;p&gt;While gathering information about Visual Studio add-ins for a potential local user group presentation, I came across &lt;strong&gt;&lt;a href="http://weblogs.asp.net/gmilano/"&gt;&lt;strong&gt;Gaston Milano's "CoolCommands"&lt;/strong&gt;.&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;As far as I can tell, the latest version of the&amp;nbsp;&lt;strong&gt;CoolCommands &lt;/strong&gt;installer can be downloaded here:&lt;br&gt;&lt;a title="http://download.deklarit.com/files/gmilano/coolcommands40.zip" href="http://download.deklarit.com/files/gmilano/coolcommands40.zip"&gt;http://download.deklarit.com/files/gmilano/coolcommands40.zip&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;It adds a lot of useful tools to Visual Studio, but there's no help or "read-me" file documenting them, and I couldn't find a consolidated overview on Gaston's site, so here's my attempt to summarize the &lt;strong&gt;CoolCommands&lt;/strong&gt; tools:&lt;/p&gt; &lt;h3&gt;Collapse All Projects&lt;/h3&gt; &lt;p&gt;Context menu item displayed when a solution name is right-clicked in the Solution Explorer - Simulates clicking the close (minus sign) icon for all expanded projects.&lt;/p&gt; &lt;h3&gt;Open Container Folder&lt;/h3&gt; &lt;p&gt;Context menu item displayed when a project or file name is right-clicked in the Solution Explorer - Displays the project folder in Windows Explorer (and automatically selects the right-clicked file if you launched the menu from a file name rather than the project name).&lt;/p&gt; &lt;h3&gt;Visual Studio Prompt Here&lt;/h3&gt; &lt;p&gt;Context menu item displayed when a project name is right-clicked in the Solution Explorer - Opens the Visual Studio Command Prompt window, initialized to point&amp;nbsp;to the project's folder.&lt;/p&gt; &lt;h3&gt;Demo Font&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in a text editor window - Quickly toggles between an 18-point font size and your preferred (Tools | Options | Environment | Fonts &amp;amp; Colors) font size.&lt;/p&gt; &lt;h3&gt;Wheel Font Sizing&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in a text editor window - I don't have a wheel mouse on this PC, but it looks like this toggles the ability to change the text editor font size via the mouse wheel.&lt;/p&gt; &lt;h3&gt;Send By Mail&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in a text editor window - Launches your email program's "new message" window with the selected code pasted into the body.&lt;/p&gt; &lt;h3&gt;Open File&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in a text editor window - If you right-click on a string literal containing a file name, this option opens the file.&lt;/p&gt; &lt;h3&gt;Copy File&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in the tab at the top of a text editor window (seems&amp;nbsp;to me it should be&amp;nbsp;in the Solution Explorer instead or at least also)&amp;nbsp;- Displays a popup window asking where you want to save a copy of the selected file:&lt;/p&gt;&lt;img alt="Copy File" src="http://geekswithblogs.net/images/geekswithblogs_net/brians/3864/r_CoolCommandsCopyFileDialog.jpg"&gt;  &lt;h3&gt;Locate in Solution Explorer&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in the tab at the top of a text editor window - Highlights the file in the Solution Explorer (expands solution, project &amp;amp; folders if necessary and even shows the Solution Explorer window if it's not visible).&lt;/p&gt; &lt;h3&gt;Copy Reference&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click on a reference displayed in a project's References list in Solution Explorer - Used in conjunction with...&lt;/p&gt; &lt;h3&gt;Paste Reference&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click on&amp;nbsp;or in project's&amp;nbsp;References&amp;nbsp;"folder" in Solution Explorer - Adds&amp;nbsp;a reference copied from another project via the "Copy Reference" tool to the current project's&amp;nbsp;References list.&amp;nbsp;&lt;/p&gt; &lt;h3&gt;Resolve Project References&lt;/h3&gt; &lt;p&gt;If you open a project and it has broken "project" references because you usually open the project as part of a solution, this context menu item displayed in response to a right-click on a project name in Solution Explorer automatically adds the referenced projects to the current solution.&lt;/p&gt; &lt;h3&gt;Reference Manager&lt;/h3&gt;&lt;img alt="Reference Manager" src="http://geekswithblogs.net/images/geekswithblogs_net/brians/3864/r_CoolCommandsReferenceManager.jpg"&gt;  &lt;p&gt;Opened via a context menu item displayed in response to a right-click on a solution or project name in Solution Explorer. &lt;/p&gt; &lt;p&gt;If you enter part of an assembly name in the "Find Reference" box and press the Enter key, the Reference Manager will show you which projects contain a reference to that assembly.&lt;/p&gt; &lt;p&gt;You can use the "Remove" button to quickly remove&amp;nbsp;a reference from multiple projects.&lt;/p&gt; &lt;p&gt;If you click the "Add Reference" button, you'll see the standard Visual Studio "Add Reference" dialog, but you can use the Reference Manager to quickly add references to multiple projects at once.&lt;/p&gt; &lt;h3&gt;Add As String Resource&lt;/h3&gt; &lt;p&gt;Context menu item displayed in response to a right-click in a text editor window -&amp;nbsp;Pops up a dialog&amp;nbsp;to allow you to easily specify&amp;nbsp;a&amp;nbsp;key and value (defaults to the selected text), and a dropdown list of resource files to which you can add&amp;nbsp;the new string resource.&amp;nbsp;&lt;/p&gt; &lt;hr&gt;  &lt;p&gt;There's some great stuff here (especially the reference tools), but it would be nice if &lt;strong&gt;CoolCommands&lt;/strong&gt; were packaged a little better:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Version 3 had an .msi installer, but you have to run a .bat file to install version 4, and I'm not sure how to uninstall it.  &lt;li&gt;Some documentation - even a readme.txt or a web page with a summary - would help a lot.  &lt;li&gt;It would be really great if there were a configuration screen where you could select which tools should be visible - My right-click menus are almost long enough to require scrolling now.&lt;/li&gt;&lt;/ul&gt; &lt;hr&gt;  &lt;p&gt;If you have any questions or complaints about CoolCommands, please address them to &lt;a href="http://weblogs.asp.net/gmilano/"&gt;Gaston&lt;/a&gt;, not to me.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=107922"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=107922" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/107922.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2007/03/04/107922.aspx</guid>
            <pubDate>Sun, 04 Mar 2007 21:12:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/107922.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2007/03/04/107922.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/107922.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/107922.aspx</trackback:ping>
        </item>
        <item>
            <title>Heartland Developers Conference 2006</title>
            <link>http://geekswithblogs.net/brians/archive/2006/10/28/95330.aspx</link>
            <description>&lt;P&gt;I'm back home (to St. Louis, home of the world champion Cardinals!) from the &lt;A href="http://www.heartlanddc.com/"&gt;Heartland Developers Conference&lt;/A&gt;&amp;nbsp;in Omaha. The presentations that were most valuable to me were:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;"&lt;A href="http://www.arcware.net/archive/2006/10/26/Slides-and-Demos-for-My-HDC-Attributes-Talk.aspx"&gt;Power Programming with Attributes&lt;/A&gt;" - &lt;A href="http://www.arcware.net/"&gt;Dave Donaldson&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;"Looking Ahead at C# 3.0" - &lt;A href="http://www.intertechtraining.com/Instructors/Default.aspx?InstructorID=1"&gt;Andrew Troelsen&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;"&lt;A href="http://www.ftponline.com/channels/net/reports/vslivelv/2006/boedigheimer/"&gt;Great Library of Common ASP.NET 2.0 Functions and Techniques&lt;/A&gt;" - &lt;A href="http://aspadvice.com/blogs/robertb/"&gt;Robert Boedigheimer&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;"&lt;A href="http://www.securedevelop.net/"&gt;Reliable Applications with System.Transactions&lt;/A&gt;" - &lt;A href="http://weblogs.asp.net/rhurlbut/"&gt;Robert Hurlbut&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I met Robert Hurlbut on the walk from the hotel to the convention center, and he told me that the speakers were not paid for their presentations and travel, although their hotel rooms were paid for by the conference, so I won't mention any of the presenters I didn't care for by name, but one piece of advice for anyone giving a presentation:&lt;/P&gt;
&lt;P&gt;Read &lt;A href="http://www.hanselman.com/blog/content/radiostories/2003/01/22/scottHanselmansTipsForASuccessfulMsftPresentation.html"&gt;Scott Hanselman's Presentation Tips&lt;/A&gt;, especially the parts about making sure your fonts are large enough so everyone can actually read what you're showing. Get your&amp;nbsp;big fonts ready&amp;nbsp;&lt;EM&gt;before&lt;/EM&gt; the presentation,&amp;nbsp;and use &lt;A href="http://www.hanselman.com/blog/TheUltimateZoomToolSysinternalsZoomIt.aspx"&gt;Zoomit&lt;/A&gt; for apps where you can't increase the font size.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I can't imagine how much time and work the guys who organized the conference had to do,&amp;nbsp;so I hesitate to criticize, but I was disappointed by a couple of things:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;If you say that registration starts at 7:00, please start registration&amp;nbsp;at 7:00, not 7:21 - Don't make people stand in line when they show up on time.&lt;/LI&gt;
&lt;LI&gt;The evaluation forms were used for the prize drawings, but the forms&amp;nbsp;didn't have a place for us to write our names - not a big deal, but&amp;nbsp;they said that they'd made the same mistake last year. Please update the form &lt;EM&gt;now&lt;/EM&gt; so you don't forget it again next year.&amp;nbsp;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;A couple of the presentation topics were changed from the advertised topics.&amp;nbsp;I was very disapponted when the second day keynote: "The Best .NET Best Practices" by Andrew Troelsen&amp;nbsp;was changed to yet another LINQ presentation - the fourth of the conference, and pretty much a repeat of&amp;nbsp;the&amp;nbsp;last part of Andrew's "C# 3.0" presentation from the day before. I may be biased since he's a homeboy who works at the same company I do, but I thought&amp;nbsp;the LINQ presentation by &lt;A href="http://www.stlnet.org/DesktopDefault.aspx"&gt;Denny Boynton at the St. Louis .NET User Group&lt;/A&gt; Monday night was at least as good as&amp;nbsp;any of the similar presentations at this conference.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I would definitely recommend&amp;nbsp;next year's HDC to .NET developers in&amp;nbsp;Nebraska, Iowa, Kansas and Minnesota. &lt;/P&gt;
&lt;P&gt;If you're from&amp;nbsp;St. Louis&amp;nbsp;or the lower Midwest though, and looking for an affordable conference with&amp;nbsp;great speakers, I would suggest the&amp;nbsp;&lt;A href="http://geekswithblogs.net/brians/archive/2006/10/18/94418.aspx"&gt;devLink&lt;/A&gt; conference in Nashville (I hope they plan to do it again next year!).&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=95330"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=95330" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/95330.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2006/10/28/95330.aspx</guid>
            <pubDate>Sat, 28 Oct 2006 12:43:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/95330.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2006/10/28/95330.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/95330.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/95330.aspx</trackback:ping>
        </item>
        <item>
            <title>devLINK 2006 - The Tennessee .NET community rocks!</title>
            <link>http://geekswithblogs.net/brians/archive/2006/10/18/94418.aspx</link>
            <description>&lt;P&gt;Many thanks to the organizers and sponsors of the &lt;A href="http://www.devlink.net/"&gt;devLINK conference&lt;/A&gt;, held in Nashville last Friday.&lt;/P&gt;
&lt;P&gt;It was well worth the 5 hour drive from St. Louis: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;big name speakers like Markus Egger, Ken Getz, Billy Hollis, Bill Vaughn, Mark Miller, Eric Sink and Wally McClure 
&lt;LI&gt;great prizes 
&lt;LI&gt;great food - breakfast, lunch and dinner (I've never heard of a conference where they fed you &lt;EM&gt;after&lt;/EM&gt; all of the sessions had ended!) 
&lt;LI&gt;It was all FREE&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;My only complaint was that there were too many good sessions going on at the same time and I couldn't attend everything I was interested in, but they videoed several of them, and I'll able to see them on their web site.&lt;/P&gt;
&lt;P&gt;Thanks again to everyone involved!&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=94418"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=94418" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/94418.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2006/10/18/94418.aspx</guid>
            <pubDate>Wed, 18 Oct 2006 12:27:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/94418.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2006/10/18/94418.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/94418.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/94418.aspx</trackback:ping>
        </item>
        <item>
            <title>Polymorphic Podcast - Miguel Castro </title>
            <link>http://geekswithblogs.net/brians/archive/2006/09/14/91159.aspx</link>
            <description>&lt;P&gt;Craig Shoemaker's &lt;A href="http://www.polymorphicpodcast.com/"&gt;Polymorphic Podcast&lt;/A&gt; has a nice two-part interview with fellow &amp;#8220;geek with blog&amp;#8221;&amp;nbsp;&lt;A href="http://www.geekswithblogs.com/mcastro"&gt;Miguel Castro &lt;/A&gt;about &amp;#8220;Architecting for Extensibility&amp;#8221;.&lt;/P&gt;
&lt;P&gt;You can hear the interview &lt;A href="http://www.polymorphicpodcast.com/shows/architectextensibility/"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;If you're not familiar with Craig's podcast, check it out. It's a while between shows sometimes (hey, we can't expect everyone to be Carl Franklin), but they're always worthwhile.&lt;/P&gt;
&lt;P&gt;Craig is&amp;nbsp;also co-author of a new book: &lt;A href="http://www.amazon.com/gp/explorer/047178544X/2/ref=pd_lpo_ase/103-2247483-1911805?ie=UTF8"&gt;Beginning Ajax With ASP.NET&lt;/A&gt;.&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91159"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=91159" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/91159.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2006/09/14/91159.aspx</guid>
            <pubDate>Thu, 14 Sep 2006 10:17:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/91159.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2006/09/14/91159.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/91159.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/91159.aspx</trackback:ping>
        </item>
        <item>
            <title>upsw magazine</title>
            <link>http://geekswithblogs.net/brians/archive/2006/04/01/74036.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Verdana&gt;Magazines like MSDN, CoDE and Dr. Dobb's are for Morts and newbies. Finally, there's a magazine for elite software architects and developers!&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;Announcing &lt;B&gt;upsw&lt;/B&gt;...&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="FONT-SIZE: x-small; FONT-FAMILY: Verdana, Arial, sans-serif"&gt;
&lt;TABLE style="FONT-SIZE: x-small; COLOR: white; FONT-FAMILY: Verdana, Arial, sans-serif; BACKGROUND-COLOR: #3366cc" cellSpacing=0 width="100%" border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="BACKGROUND-COLOR: white" width=105&gt;&lt;IMG src="/images/geekswithblogs_net/brians/3864/t_upsw.jpg"&gt;&lt;/TD&gt;
&lt;TD&gt;
&lt;H1 style="martin-bottom: 0"&gt;upsw magazine&lt;/H1&gt;
&lt;P&gt;The Journal for &lt;B&gt;U&lt;/B&gt;ltra-&lt;B&gt;P&lt;/B&gt;retentious &lt;B&gt;S&lt;/B&gt;oftware &lt;B&gt;W&lt;/B&gt;ankers&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;TABLE style="FONT-SIZE: x-small; COLOR: white; FONT-FAMILY: Verdana, Arial, sans-serif; BACKGROUND-COLOR: #cc0000" width="100%" border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;B&gt;APRIL 1, 2006&lt;/B&gt;&lt;/TD&gt;
&lt;TD align=right&gt;Volume 1 Number 1 &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;UL&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;tUnit - Testing Your Tests&lt;/B&gt;: Sure, you've got a comprehensive suite of unit tests, but how do you know your &lt;I&gt;tests&lt;/I&gt; are reliable? You don't, unless you're using tUnit, my new test-testing framework&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Adam Baum&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;I Know Something You Don't Know&lt;/B&gt;: There are some really cool "bits" coming soon from Microsoft, but I can't tell you about them because I'm under an NDA&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Biff Wellington&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;Good Riddance&lt;/B&gt;: Why all American developers but me are lazy slackers and &lt;I&gt;deserve&lt;/I&gt; to have their jobs "offshored"&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Donny Brook&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;I'm an MVP&lt;/B&gt;: Hey, did you know I'm an MVP?&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Chuck U. Farley, MVP&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;Master of Your Own Domain Specific Language&lt;/B&gt;: Announcing a UPSW contest with a $100 prize!&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Jerry N. George&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;WTF?&lt;/B&gt;: What the CTP SDK doesn't tell you about WinFX, WCF, WF and WPF. What about SOA vs. DSL? LINQ, AJAX, WSE, SQL, XML, XHTML, TDD, REST, POX, VSTO, CRM, and TLAs? Find out PDQ! &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Chris P. Bacon: MVP, RD&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;Real Programmers&lt;/B&gt;: Real Programmers don't use weenie languages like VB or C#. Intellisense? Intellischmense! In my day, all we we had were ones and zeros, which we manipulated on the hard drive with a magnifying glass and a tiny magnet! &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Ferris Wheeler&lt;/SPAN&gt; &lt;/LI&gt;
&lt;LI style="PADDING-BOTTOM: 1em"&gt;&lt;SPAN style="COLOR: navy"&gt;&lt;B&gt;I'm still an MVP&lt;/B&gt;: Did I mention that I'm an MVP?&lt;/SPAN&gt; &lt;BR&gt;&lt;SPAN style="COLOR: teal"&gt;Chuck U. Farley, MVP&lt;/SPAN&gt; &lt;/LI&gt;&lt;/UL&gt;&lt;/DIV&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=74036"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=74036" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/brians/aggbug/74036.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Brian Schroer</dc:creator>
            <guid>http://geekswithblogs.net/brians/archive/2006/04/01/74036.aspx</guid>
            <pubDate>Sat, 01 Apr 2006 11:43:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/brians/comments/74036.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/brians/archive/2006/04/01/74036.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/brians/comments/commentRss/74036.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/brians/services/trackbacks/74036.aspx</trackback:ping>
        </item>
    </channel>
</rss>