<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><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/" version="2.0">
    <channel>
        <title>Scott Kuhl</title>
        <link>http://geekswithblogs.net/scottkuhl/Default.aspx</link>
        <description>Warning: I may have no idea what I am talking about!</description>
        <language>en-US</language>
        <copyright>Scott Kuhl</copyright>
        <managingEditor>scott@kuhl.ws</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Scott Kuhl</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/scottkuhl/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/ScottKuhl" type="application/rss+xml" /><item>
            <title>Radial 50 - New iPhone App</title>
            <category>Games</category>
            <link>http://geekswithblogs.net/scottkuhl/archive/2009/07/06/radial-50---new-iphone-app.aspx</link>
            <description>&lt;p&gt;If you have an iPhone check out a game a friend just launched: Radial 50.&lt;/p&gt;
&lt;p&gt;&lt;img alt="" src="http://geekswithblogs.net/images/geekswithblogs_net/scottkuhl/2573/o_Radial-50.png" /&gt; &lt;/p&gt;
&lt;p&gt;You can get the &lt;a href="http://www.radial50.com/downloadlite"&gt;Lite version&lt;/a&gt; for free.  And the &lt;a href="http://www.radial50.com/download"&gt;full version&lt;/a&gt; is only $1.99.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133301"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133301" 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/scottkuhl/aggbug/133301.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2009/07/06/radial-50---new-iphone-app.aspx</guid>
            <pubDate>Tue, 07 Jul 2009 02:03:53 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/133301.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2009/07/06/radial-50---new-iphone-app.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/133301.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/133301.aspx</trackback:ping>
        </item>
        <item>
            <title>Review of Sony Vaio FW Series Laptop</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2009/02/16/review-of-sony-vaio-fw-series-laptop.aspx</link>
            <description>&lt;p&gt;This weekend I purchased a replacement laptop for my Gateway Tablet PC.  I reviewed a lot of different options but focused mostly on HP, Dell, Gateway, Sony, Samsung and even Apple.  First lets start with each of the lines of laptop I didn’t choose and why.&lt;/p&gt;  &lt;p&gt;HP scored well on &lt;a href="http://reviews.cnet.com/laptops/hp-pavilion-dv3510nr/4505-3121_7-33309970.html?tag=contentMain;contentBody"&gt;CNET reviews with the Pavilion dv3510nr&lt;/a&gt;, so I took a trip to Best Buy to check it out.  I wasn’t really impressed.  It was just another laptop.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dell.com/"&gt;Dell&lt;/a&gt; as always seems to have a build your own laptop for everyone.  The cost of adding a Blu-ray drive and the limited number of models that ship with them drove me away.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.gateway.com/programs/mdseries/index.php"&gt;Gateway’s new MD series&lt;/a&gt; is nice but this is a dying brand.  I’m not sure they will still be here in a year.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.samsung.com/us/consumer/detail/features.do?group=computersperipherals&amp;amp;type=mobilecomputing&amp;amp;subtype=notebook&amp;amp;model_cd=NP-X360-AA01US"&gt;Samsung’s new X360-34G&lt;/a&gt; is very nice, but the price is too high.&lt;/p&gt;  &lt;p&gt;Apple’s designs are awesome but I’m not sure I will ever get use to the lack of the right click button.  I almost went with a &lt;a href="http://www.apple.com/macbookpro/"&gt;MacBook Pro&lt;/a&gt; to give me the option of running OSX, but I properly would have stopped using it after a month.  Price was also too high.&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://www.sonystyle.com/webapp/wcs/stores/servlet/CategoryDisplay?catalogId=10551&amp;amp;storeId=10151&amp;amp;langId=-1&amp;amp;categoryId=16154"&gt;Sony Vaio&lt;/a&gt; line is my favorite PC laptop line as far as style goes.  But to be fair, they seem like MacBook clones.  The FW series was the closest to the specs I wanted.  This review is based specifically on the VGN-FW35iJ.&lt;/p&gt;  &lt;h1&gt;Sony Vaio VGN-FW351J&lt;/h1&gt;  &lt;h2&gt;The Good&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;The &lt;a href="http://www.bestbuy.com/site/olspage.jsp?skuId=9156557&amp;amp;type=product&amp;amp;id=1218038552017"&gt;Sony Vaio VGN-FW351IJ&lt;/a&gt; feels like a MacBook Pro clone.&lt;/strong&gt;  It’s got good specs for the money.   &lt;strong&gt;$899 will get you 4GB of RAM, a Core 2 Duo processor, Blu-ray drive, a 16.4” widescreen and a 320GB hard drive.&lt;/strong&gt;  It’s very light and portable for it’s size and well balanced.  Heat doesn’t dissipate into your legs when using it on your lap.  The HDMI output port makes this laptop a nice portable Blu-ray player.  Blu-Ray playback was smooth, the drive wasn’t noisy and the system didn’t spike with heat.   All bonuses when trying to watch a movie in bed.&lt;/p&gt;  &lt;h2&gt;The Bad&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;The area to the right of the touchpad warms up to a very noticeable level.&lt;/strong&gt;  The VGA port is on the left, most people will not consider this a drawback, but I have gotten use to having my monitor on the right so I have more cables crossing my desk than before.&lt;/p&gt;  &lt;h2&gt;The Ugly&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;The USB ports are all on the right.  This makes it hard to use an external mouse for a right handed person while external components are attached.&lt;/strong&gt;  The OS is also loaded with a lot of crapware like Microsoft Works, Quicken and a whole bunch of Vaio utilities that badly need reducing and combining.&lt;/p&gt;  &lt;h2&gt;Recommendation&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;Well, I’ve only been using it for a few days, but I’m happy with the purchase.  I would buy it again.&lt;/strong&gt;  It’s a great laptop for the price.  I think I would need to purchase a MacBook Pro at 3 times the cost to get a better 17” laptop.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129450"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129450" 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/scottkuhl/aggbug/129450.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2009/02/16/review-of-sony-vaio-fw-series-laptop.aspx</guid>
            <pubDate>Tue, 17 Feb 2009 05:43:15 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/129450.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2009/02/16/review-of-sony-vaio-fw-series-laptop.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/129450.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/129450.aspx</trackback:ping>
        </item>
        <item>
            <title>Juggle.com is Live</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2009/02/02/juggle.com-is-live.aspx</link>
            <description>&lt;p&gt;Our public beta has launched.  Want to know what it is?  Check it out at &lt;a href="http://www.juggle.com"&gt;www.juggle.com&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Use the feedback form on the site to leave comments and request an invitation.  Be sure to let us know if you are a GWB member.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:ec8133fe-01d1-4ff9-ae74-828722166c99" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/juggle.com" rel="tag"&gt;juggle.com&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129161"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129161" 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/scottkuhl/aggbug/129161.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2009/02/02/juggle.com-is-live.aspx</guid>
            <pubDate>Tue, 03 Feb 2009 04:16:49 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/129161.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2009/02/02/juggle.com-is-live.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/129161.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/129161.aspx</trackback:ping>
        </item>
        <item>
            <title>ASP.NET Web Developer Checklist</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2009/02/01/asp.net-web-developer-checklist.aspx</link>
            <description>&lt;p&gt;The following is a simple checklist you can use when building web applications.  Much of this still applies to other technologies and can easily be extended.  I try not to get too specific on technology or methodology, but it is definitely leaning toward ASP.NET.&lt;/p&gt;  &lt;p&gt;If you can think of something I am missing or disagree, please leave a comment.  Detailed information follows the checklist.&lt;/p&gt;  &lt;p&gt;How much of the checklist you follow will depend on the project.  If its just a hobby site, you may skip items like load testing, but as the site grows you will likely need to check off more and more items.  Some items, like separation of logic should just be done from the start.  In any case, you should make an actual decision to ignore the item.  This is much better than just forgetting to do it.&lt;/p&gt;  &lt;h1&gt;The Check List&lt;/h1&gt;  &lt;h2&gt;Everywhere&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Use source control.&lt;/li&gt;    &lt;li&gt;Be consistent with naming conventions.&lt;/li&gt;    &lt;li&gt;Create documentation.&lt;/li&gt;    &lt;li&gt;Backup everything.&lt;/li&gt;    &lt;li&gt;Use code analysis tools.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Database&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Use non-clustered indexes on unique identifier columns.&lt;/li&gt;    &lt;li&gt;Setup foreign key relationships.&lt;/li&gt;    &lt;li&gt;Use a last updated timestamp column.&lt;/li&gt;    &lt;li&gt;Add simple audit columns or a history table.&lt;/li&gt;    &lt;li&gt;Analyze and tune your database.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Business Logic&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Clearly separate business and data logic.&lt;/li&gt;    &lt;li&gt;Use some standard patterns and stick with them.&lt;/li&gt;    &lt;li&gt;Do not duplicate rules.  Data is okay.&lt;/li&gt;    &lt;li&gt;Create unit tests.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Web Interface&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Make the site accessible.&lt;/li&gt;    &lt;li&gt;Use resource files.&lt;/li&gt;    &lt;li&gt;Minimize use of server controls.&lt;/li&gt;    &lt;li&gt;Separate your HTML, JavaScript and CSS.&lt;/li&gt;    &lt;li&gt;Minimize ViewState.&lt;/li&gt;    &lt;li&gt;Pay attention to search engine optimization.&lt;/li&gt;    &lt;li&gt;Clearly separate presentation and business logic. &lt;/li&gt;    &lt;li&gt;Don’t forget a site map, favicon and search provider.&lt;/li&gt;    &lt;li&gt;Create user interface unit tests.&lt;/li&gt;    &lt;li&gt;Check your site with YSlow.&lt;/li&gt;    &lt;li&gt;Load test the site.&lt;/li&gt;    &lt;li&gt;Security test the site.&lt;/li&gt;    &lt;li&gt;Use a hosting provider.&lt;/li&gt;    &lt;li&gt;Minify and combine resources.&lt;/li&gt;    &lt;li&gt;Turn on IIS compression.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Process&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Stay agile.&lt;/li&gt;    &lt;li&gt;Vision before you design.&lt;/li&gt;    &lt;li&gt;Design before you develop.&lt;/li&gt;    &lt;li&gt;Test after you develop.&lt;/li&gt; &lt;/ul&gt;  &lt;h1&gt;The Details&lt;/h1&gt;  &lt;h2&gt;Use source control.&lt;/h2&gt;  &lt;p&gt;Even for small, one person projects, rollback can save your life.  There are plenty of good ones to choose from including &lt;a href="http://www.visualsvn.com/"&gt;VisualSVN&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/tfs2008/default.aspx"&gt;Team Foundation Server&lt;/a&gt;, &lt;a href="http://www.sourcegear.com/"&gt;SourceGear Vault&lt;/a&gt; or &lt;a href="http://www.dynamsoft.com/Products/SAW_Overview.aspx"&gt;SourceAnywhere&lt;/a&gt;.  If your going open source, look into &lt;a href="http://www.codeplex.com/"&gt;CodePlex&lt;/a&gt;.  A lot of people really hate &lt;a href="http://www.codinghorror.com/blog/archives/000660.html"&gt;SourceSafe&lt;/a&gt;, but it’s better than nothing.&lt;/p&gt;  &lt;h2&gt;Be consistent with naming conventions.&lt;/h2&gt;  &lt;p&gt;There are lots of opinions on naming conventions.  Microsoft publishes &lt;a href="http://msdn.microsoft.com/en-us/library/ms229042.aspx"&gt;guidelines for class libraries&lt;/a&gt;.  Whatever you use, be consistent.  Having many developers on the same team with a different set of standards can make the code a mess.  Comprise is likely needed.  Don’t forget to apply this rule to database also.&lt;/p&gt;  &lt;h2&gt;Create documentation.&lt;/h2&gt;  &lt;p&gt;Document the code well with code comments and create high level documentation to explain major sections of the code.  You’ll need it in 6 months.  You should also document all your requirements and have a solid project management plan.  &lt;a href="http://www.targetprocess.com/"&gt;TargetProcess&lt;/a&gt; is a great tool to help with this.&lt;/p&gt;  &lt;h2&gt;Backup everything.&lt;/h2&gt;  &lt;p&gt;These easiest way to do this is to make sure everything, including database schema is in source control.  Then back that up.  &lt;a href="http://mozy.com/"&gt;Mozy&lt;/a&gt; is a good choice of this.  It will get your data offsite without any manual process.  Be sure to backup your documentation, data and anything you choose not to put in source control.  Just imagine your building burning down.  What would you need to recover and how.  It’s also good to test the backups and see if you can recover everything.&lt;/p&gt;  &lt;h2&gt;Use code analysis tools.&lt;/h2&gt;  &lt;p&gt;It’s like having an extra code reviewer on staff.  And one that actually does review everything.  &lt;a href="http://msdn.microsoft.com/en-us/library/bb429476(VS.80).aspx"&gt;FxCop&lt;/a&gt;, &lt;a href="http://code.msdn.microsoft.com/sourceanalysis"&gt;StyleCop&lt;/a&gt; and &lt;a href="http://www.jetbrains.com/resharper/"&gt;Resharper&lt;/a&gt; are great for this.&lt;/p&gt;  &lt;h2&gt;Use non-clustered indexes on unique identifier columns.&lt;/h2&gt;  &lt;p&gt;Lately I tend to use unique identifiers as primary keys because they are easy to move between environments and don’t require an extra column be added for replication.  One gotcha here is the SQL Server Management Studio will default your primary key index to clustered.  This is going to make inserts very slow as your database grows.&lt;/p&gt;  &lt;h2&gt;Setup foreign key relationships.&lt;/h2&gt;  &lt;p&gt;A lot of developers seem to miss this for some reason.  Open up the diagram tool in SQL Server Management Studio and connect those tables.&lt;/p&gt;  &lt;h2&gt;Use a last updated timestamp column.&lt;/h2&gt;  &lt;p&gt;Adding a timestamp column is an easy way to determine if your data is stale and someone or something else has changed it while you had it.&lt;/p&gt;  &lt;h2&gt;Add simple audit columns or a history table.&lt;/h2&gt;  &lt;p&gt;Putting in a last edited by and on columns can help a lot.  An audit trail in a separate table / tables is even more helpful but these tables can get very large.&lt;/p&gt;  &lt;h2&gt;Analyze and tune your database.&lt;/h2&gt;  &lt;p&gt;Indexes are your friend, but too many friends can also be a bad thing.  Tune that database.  Everything will work well when the database is small, so toss some serious amount test data in there.  &lt;a href="http://www.red-gate.com/"&gt;Red Gate’s&lt;/a&gt; SQL Data Compare is great for this.  While your checking it out look at some of their other tools.  They make data almost fun.&lt;/p&gt;  &lt;h2&gt;Clearly separate business and data logic.&lt;/h2&gt;  &lt;p&gt;They don’t necessarily need to be in separate class files, but there needs to be a clear separation in logic.  Tools like Linq to SQL can start to blur this line, but you at least want some verification and authentication logic on data updates.&lt;/p&gt;  &lt;h2&gt;Use some standard patterns and stick with them.&lt;/h2&gt;  &lt;p&gt;Mixing in ADO.Entities, frameworks like &lt;a href="http://www.lhotka.net/cslanet/"&gt;CSLA&lt;/a&gt;, creating your own lightweight custom collections and DataSets can drive you crazy over time.  Especially when logic starts to cross from one set of code to another.  Pick something and stick to it.&lt;/p&gt;  &lt;h2&gt;Do not duplicate rules.  Data is okay.&lt;/h2&gt;  &lt;p&gt;Any piece of business logic should be in one and only one spot.  It’s okay to have multiple classes accessing the same data.  This is a necessity when dealing with a full object and some simple lists.  But don’t duplicate the logic.  There should be one block of code that verifies a rule.&lt;/p&gt;  &lt;h2&gt;Create unit tests.&lt;/h2&gt;  &lt;p&gt;How many?  That’s a long discussion.  In general I create enough that I know the system works.  If you follow test driven development you probably have a good handle on this.  If you find a bug, check you test cases and see if it was something you could have caught.  But definitely write these tests.&lt;/p&gt;  &lt;h2&gt;Make the site accessible.&lt;/h2&gt;  &lt;p&gt;Microsoft has a very good article that discusses this topic: &lt;a href="http://msdn.microsoft.com/en-us/library/aa479043.aspx"&gt;Building ASP.NET 2.0 Web Sites Using Web Standards&lt;/a&gt;.  Visual Studio has a few accessibility tools built in, use them, don’t ignore them.&lt;/p&gt;  &lt;h2&gt;Use resource files.&lt;/h2&gt;  &lt;p&gt;What percentage of the world speaks your language?  Even if you never add a second language, the use of global and local resource files will keep this option open.&lt;/p&gt;  &lt;h2&gt;Minimize use of server controls.&lt;/h2&gt;  &lt;p&gt;If you don’t care about the state of a control, consider using standard HTML controls.  ASP.NET server controls create extra overhead with long IDs and ViewState.&lt;/p&gt;  &lt;h2&gt;Separate your HTML, JavaScript and CSS.&lt;/h2&gt;  &lt;p&gt;I like starting with just HTML and making sure the site is usable without any JavaScript or CSS. This may keep you from putting everything in DIV tags and use lists and headers the way they should be.  Also try to use CSS to style the site and leave JavaScript to handle behavior.&lt;/p&gt;  &lt;h2&gt;Minimize ViewState.&lt;/h2&gt;  &lt;p&gt;Turn this off at every level you can: page, user control, and server control.  It’s unnecessary overhead.&lt;/p&gt;  &lt;h2&gt;Pay attention to search engine optimization.&lt;/h2&gt;  &lt;p&gt;If your site is public, don’t ignore SEO until the end.  Google provides some good tips in their &lt;a href="http://googlewebmastercentral.blogspot.com/2008/11/googles-seo-starter-guide.html"&gt;Search Engine Optimization Starter Guide&lt;/a&gt;.  And this &lt;a href="http://www.wrox.com/WileyCDA/WroxTitle/Professional-Search-Engine-Optimization-with-ASP-NET-A-Developer-s-Guide-to-SEO.productCd-0470131470.html"&gt;Professional Search Engine Optimization with ASP.NET&lt;/a&gt; is a great book.&lt;/p&gt;  &lt;h2&gt;Clearly separate presentation and business logic.&lt;/h2&gt;  &lt;p&gt;Your application could easily start taking on more interfaces like backend processes, web services, mobile apps.  Keep the business logic and presentation logic separated to get as much code re-use as possible.  But be careful not to start pushing presentation logic back into the business layer, or your going to have just as many problems.&lt;/p&gt;  &lt;h2&gt;Don’t forget a site map, favicon and search provider.&lt;/h2&gt;  &lt;p&gt;These are common files to forget.  Double check to make sure you have them.  Although you might not need the search provider.&lt;/p&gt;  &lt;h2&gt;Create user interface unit tests.&lt;/h2&gt;  &lt;p&gt;If the interface doesn’t work, it doesn’t matter how solid the middle layers and database are.  I like using &lt;a href="http://watin.sourceforge.net/"&gt;WatiN&lt;/a&gt;, although it has some issues running a lot of tests in a row.  I tend to build my user interface tests based on the test cases created for the user stories.&lt;/p&gt;  &lt;h2&gt;Check your site with YSlow.&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://developer.yahoo.com/yslow/"&gt;YSlow&lt;/a&gt; is a great plug-in for Firefox that will help you identify problems in the client side design of your application.  It gives you some very useful performance statistics and suggestions for fixing issues.&lt;/p&gt;  &lt;h2&gt;Load test the site.&lt;/h2&gt;  &lt;p&gt;Figure out how many users you need to support and make sure you can.  We use &lt;a href="http://www.webperformanceinc.com/"&gt;Web Performance&lt;/a&gt; for this.  It’s much more reasonably priced than some of its competitors and still very feature rich. &lt;a href="http://jakarta.apache.org/jmeter/"&gt;JMeter&lt;/a&gt; is a popular free alternative.  Don’t assume because your test pass that everything is perfect, but you are much closer to knowing the truth.&lt;/p&gt;  &lt;h2&gt;Security test the site.&lt;/h2&gt;  &lt;p&gt;You are really going to want to find these bugs first.  Even if you store no serious personal information other than a password, that password is probably being used on many sites by your users.  Even some simple injections can make your site look very unprofessional.  &lt;a href="http://www.sensepost.com/research/wikto/"&gt;Wikto&lt;/a&gt; is free and easy to use to test the servers for vulnerabilities, but your going to need something like &lt;a href="http://www.acunetix.com/"&gt;Acunetix&lt;/a&gt; to do some deeper application security testing.  I good hosting provider may also be able to help.&lt;/p&gt;  &lt;h2&gt;Use a hosting provider.&lt;/h2&gt;  &lt;p&gt;Your basement server is not going to cut it when you get dugg.  A hosting provider will take a lot of worry off your hands.  Even if its a simple ASP.NET shared hosting plan from &lt;a href="http://www.godaddy.com/gdshop/hosting/shared.asp?isc=gd49bbnd60&amp;amp;ci=9009"&gt;GoDaddy&lt;/a&gt; or a more scalable solution from &lt;a href="http://aws.amazon.com/windows/"&gt;Amazon&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;Minify and combine resources.&lt;/h2&gt;  &lt;p&gt;Bandwidth and multiple HTTP requests are going to slow your site down a lot.  You can do &lt;a href="http://www.codeproject.com/KB/aspnet/PeformanceAspnet.aspx"&gt;some of this manually&lt;/a&gt; or use a product like &lt;a href="http://www.getrpo.com/"&gt;Runtime Page Optimizer&lt;/a&gt; (RPO).&lt;/p&gt;  &lt;h2&gt;Turn on IIS compression.&lt;/h2&gt;  &lt;p&gt;Make sure dynamic and static compression is turned on in IIS unless you have a very good reason not to.  RPO will do a better job at this than IIS.&lt;/p&gt;  &lt;h2&gt;Stay agile.&lt;/h2&gt;  &lt;p&gt;Keep moving forward.  Don’t stagnate in one phase.  Scrum is a great practice to start with.  TargetProcess will also help with this.&lt;/p&gt;  &lt;h2&gt;Vision before you design.&lt;/h2&gt;  &lt;p&gt;Stop and think before you build.  What is it you are building and why?&lt;/p&gt;  &lt;h2&gt;Design before you develop.&lt;/h2&gt;  &lt;p&gt;Don’t just start writing code.  Get a set of core user stories together to help you flush out the idea before making any critical architectural decisions.  Try not to get bogged down in this for a long period of time.  This is also a good time to start writing test cases.&lt;/p&gt;  &lt;h2&gt;Test after you develop.&lt;/h2&gt;  &lt;p&gt;You should be testing as you develop, but do a round of testing before each release.&lt;/p&gt;  &lt;h1&gt;Money&lt;/h1&gt;  &lt;p&gt;Many of the tools listed above are free, but some cost money.  You can get most of what you need without spending a dime.  At some point you should evaluate spending the extra money against what it actually saves you.  Of course you have to have money to spend it.  Always be on the lookout for open source alternatives, but don’t pick something just because its free unless you have no choice.&lt;/p&gt;  &lt;h2&gt;The Free Zone&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Visual Studio Express&lt;/li&gt;    &lt;li&gt;SQL Server Express or MySQL&lt;/li&gt;    &lt;li&gt;VisualSVN Server and TortoiseSVN&lt;/li&gt;    &lt;li&gt;CodePlex&lt;/li&gt;    &lt;li&gt;TargetProcess&lt;/li&gt;    &lt;li&gt;FxCop&lt;/li&gt;    &lt;li&gt;StyleCop&lt;/li&gt;    &lt;li&gt;CSLA&lt;/li&gt;    &lt;li&gt;NUnit&lt;/li&gt;    &lt;li&gt;WatiN&lt;/li&gt;    &lt;li&gt;YSlow&lt;/li&gt;    &lt;li&gt;JMeter&lt;/li&gt;    &lt;li&gt;Wikto&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;The Paid Zone&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Visual Studio Standard or Pro&lt;/li&gt;    &lt;li&gt;SQL Server Standard&lt;/li&gt;    &lt;li&gt;VisualSVN client&lt;/li&gt;    &lt;li&gt;SourceGear Vault&lt;/li&gt;    &lt;li&gt;Dynamsoft SourceAnywhere&lt;/li&gt;    &lt;li&gt;TargetProcess for larger teams.&lt;/li&gt;    &lt;li&gt;Mozy&lt;/li&gt;    &lt;li&gt;Resharper&lt;/li&gt;    &lt;li&gt;RedGate&lt;/li&gt;    &lt;li&gt;Web Performance&lt;/li&gt;    &lt;li&gt;Acunetix&lt;/li&gt;    &lt;li&gt;Hosting providers&lt;/li&gt;    &lt;li&gt;Runtime Page Optimizer&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;The Oh My God I Got Money To Burn Zone&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;Visual Studio Team Suite&lt;/li&gt;    &lt;li&gt;Team Foundation Server&lt;/li&gt;    &lt;li&gt;SQL Server Enterprise&lt;/li&gt;    &lt;li&gt;Managed hosting providers&lt;/li&gt;    &lt;li&gt;Strangeloop AS1000&lt;/li&gt; &lt;/ul&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0a85dc5d-1bb3-4645-9440-fa87dc0d1db6" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/asp.net" rel="tag"&gt;asp.net&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129122"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129122" 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/scottkuhl/aggbug/129122.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2009/02/01/asp.net-web-developer-checklist.aspx</guid>
            <pubDate>Sun, 01 Feb 2009 19:18:45 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/129122.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2009/02/01/asp.net-web-developer-checklist.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/129122.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/129122.aspx</trackback:ping>
        </item>
        <item>
            <title>Good Luck Ex-Yahooers, And Anyone Else Out Of Work</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/12/11/good-luck-ex-yahooers-and-anyone-else-out-of-work.aspx</link>
            <description>&lt;p&gt;Well, the layoffs hit Yahoo.  Good luck to all of you and anyone else losing their job in this unbelievable economic downturn.&lt;/p&gt;  &lt;p&gt;We’re all in this together and hopefully things will get better sooner than expected.&lt;/p&gt;  &lt;p&gt;Juggle is looking to add another .NET developer with good windows development and database skills if you are looking.  Just use the contact form on this blog and I’ll get the right people in touch with you.  The position does require that you live in the St. Louis area.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0c77fb07-c8e5-480c-b792-ad0feb80ddd7" 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/Yahoo" rel="tag"&gt;Yahoo&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127829"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127829" 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/scottkuhl/aggbug/127829.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/12/11/good-luck-ex-yahooers-and-anyone-else-out-of-work.aspx</guid>
            <pubDate>Fri, 12 Dec 2008 01:46:13 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/127829.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/12/11/good-luck-ex-yahooers-and-anyone-else-out-of-work.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/127829.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/127829.aspx</trackback:ping>
        </item>
        <item>
            <title>XBOX 360 Failure #4</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/12/02/xbox-360-failure-4.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/scottkuhl/WindowsLiveWriter/XBOX360Failure4_D34E/image_2.png"&gt;&lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; margin: 5px; border-left: 0px; border-bottom: 0px" height="244" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/scottkuhl/WindowsLiveWriter/XBOX360Failure4_D34E/image_thumb.png" width="244" align="left" border="0" /&gt;&lt;/a&gt; Good grief.  Yet another XBOX has failed, this time it’s the new one from last year.  The DVD drive stopped spinning up right after the NXE update.&lt;/p&gt;  &lt;p&gt;Microsoft is footing the bill again and thankfully we have 2 so nobody will have to stop using their Lancers.  I made it in just under the 1 year maintenance agreement.&lt;/p&gt;  &lt;p&gt;But this is by far the least reliable product I have ever owned.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/scottkuhl/archive/2007/12/03/were-getting-our-4th-xbox-360-this-year.aspx"&gt;It was this same time last year we had failure #3.&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5a9bba86-e9c1-4227-8e97-33463b1ea966" 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/microsoft" rel="tag"&gt;microsoft&lt;/a&gt;,&lt;a href="http://technorati.com/tags/xbox" rel="tag"&gt;xbox&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127534"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127534" 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/scottkuhl/aggbug/127534.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/12/02/xbox-360-failure-4.aspx</guid>
            <pubDate>Tue, 02 Dec 2008 21:01:33 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/127534.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/12/02/xbox-360-failure-4.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/127534.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/127534.aspx</trackback:ping>
        </item>
        <item>
            <title>Why Microsoft&amp;rsquo;s Free Anti-Virus Will Matter</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/11/26/why-microsoftrsquos-free-anti-virus-will-matter.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/scottkuhl/WindowsLiveWriter/WhyMicrosoftsFreeAVWillMatter_C468/image_2.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 10px 5px 0px; border-right-width: 0px" height="244" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/scottkuhl/WindowsLiveWriter/WhyMicrosoftsFreeAVWillMatter_C468/image_thumb.png" width="204" align="left" border="0" /&gt;&lt;/a&gt; This is in response to a post by John Viega entitled “&lt;a href="http://broadcast.oreilly.com/2008/11/why-microsofts-free-av-wont-ma.html"&gt;Why Microsoft’s free AV won’t matter&lt;/a&gt;”.&lt;/p&gt;  &lt;p&gt;Yes, Microsoft failed with OneCare.  But I don’t agree with John on why.  (Keep in mind John works for a company that produces AV software, so he is biased, even if he is knowledgeable.)  &lt;/p&gt;  &lt;p&gt;Let’s look at the three major different kinds of anti-virus users.&lt;/p&gt;  &lt;p&gt;Type A – Anti-What-Now?&lt;/p&gt;  &lt;p&gt;A large number of consumers don’t care about anti-virus.  They might know what it is “sort of”, and they may want to know that their new computer from Best Buy has it, but beyond that, they know nothing.  These are the home users that never purchase an anti-virus beyond the 90 day trial or they bought the upgrade simply because a pop up or sales guy told them to.&lt;/p&gt;  &lt;p&gt;Type B – Tech Savvy Consumer&lt;/p&gt;  &lt;p&gt;You know know what your looking for and you can find it for free.  AVG does a great job in this market.  These users do not need to be told this stuff is important and they certainly don’t need to pay for help.&lt;/p&gt;  &lt;p&gt;Type C – Corporations&lt;/p&gt;  &lt;p&gt;From large to small, you know you need it.  What you need is very different depending on the size of your organization, but you are likely to buy something because of restrictions on the free licenses.  Some small shops will simply use the free stuff anyway.  Other very small shops with no tech support will likely fall into the Type A above.&lt;/p&gt;  &lt;p&gt;Microsoft failed with Type A because it’s not, and they can’t without legal action, bundle OneCare onto new PCs like Norton can.  Microsoft failed with Type B because OneCare cost money and wasn’t as good as many free options.  Microsoft failed with Type C because the enterprise was not the target of OneCare and was missing a lot of features.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Microsoft CAN succeed with the free model.&lt;/strong&gt;  &lt;/p&gt;  &lt;p&gt;Type A are still lost unless Microsoft more aggressively pushes the availability of the product in Windows Live.  Not only do they need to get more people to start downloading Windows Live, but they need to show people that AV is in there and they can happily uninstall the software they are paying for and save money.  A campaign with Best Buy and Walmart would go a long way.&lt;/p&gt;  &lt;p&gt;Type B is an easy sell if the product works well.  This group know about the product so its a matter of trust.&lt;/p&gt;  &lt;p&gt;Type C small companies will be the easiest sell.  Microsoft will have a free alternative to a paid service and be more visible.  My company falls into this group, and while AVG is great, I’ll switch if its going to save us thousands of dollars per year.  &lt;/p&gt;  &lt;p&gt;Type C large companies are going to be tough unless Microsoft builds in central monitoring.  They certainly have the tools and experience to build this into easy network deployment and control.  But it will take a few years of a proven track record to start winning them over.  Large companies move slow.  This adoption along with Type A is going to hurt the AV companies the most.&lt;/p&gt;  &lt;p&gt;So yes, Microsoft will make a difference.  The rules are changing when a product nobody wants to buy is now free, easy to get and comes from the biggest software company in world.  The only thing stopping Microsoft from succeeding, is Microsoft.  Push it and adoption will follow.  Toss it out there and hope people will use it, and it will fail.&lt;/p&gt;  &lt;p&gt;But in the end, free AV should be bundled into the OS like Defender.  Screw anti-competitive practices.  The companies they are competing with are making a living based on vulnerabilities in the system.  Microsoft should have the right to bundle software that secures the OS.  And the other guys can sell software to improve or manage it, for those who really WANT it, not everyone who really NEEDS it.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:8d92ecb3-e476-494e-ac44-8bee315b7701" 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/microsoft" rel="tag"&gt;microsoft&lt;/a&gt;,&lt;a href="http://technorati.com/tags/security" rel="tag"&gt;security&lt;/a&gt;,&lt;a href="http://technorati.com/tags/anti-virus" rel="tag"&gt;anti-virus&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127410"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=127410" 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/scottkuhl/aggbug/127410.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/11/26/why-microsoftrsquos-free-anti-virus-will-matter.aspx</guid>
            <pubDate>Wed, 26 Nov 2008 19:01:25 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/127410.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/11/26/why-microsoftrsquos-free-anti-virus-will-matter.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/127410.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/127410.aspx</trackback:ping>
        </item>
        <item>
            <title>Looking for Load Testing Software</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/10/17/looking-for-load-testing-software.aspx</link>
            <description>&lt;p&gt;We are currently using WCAT because we have the Pro version of Visual Studio, not Team System.  It's not exactly the easiest or best tool, but it is free.&lt;/p&gt;  &lt;p&gt;I'm looking at &lt;a href="http://www.webperformanceinc.com/"&gt;Web Performance Suite&lt;/a&gt; and &lt;a href="http://www.neotys.com/"&gt;NeoLoad&lt;/a&gt; as a possible replacements but I'm not very familiar with either.&lt;/p&gt;  &lt;p&gt;This is what we need:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Ability to load test many users (of course).&lt;/li&gt;    &lt;li&gt;Fairly easy to use.&lt;/li&gt;    &lt;li&gt;Trace listener would be nice.&lt;/li&gt;    &lt;li&gt;Test the output for values using simple matching and regular expressions.&lt;/li&gt;    &lt;li&gt;Functional testing in the same package would also be nice.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I could probably solve my problem if I could just run our existing unit tests that also include &lt;a href="http://watin.sourceforge.net/"&gt;WatiN&lt;/a&gt; tests, but I haven't found a way to do that without spinning up a hole bunch of IE instances.  And I would have to create my own reports.&lt;/p&gt;  &lt;p&gt;I use to use &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e2c0585a-062a-439e-a67d-75a89aa36495&amp;amp;DisplayLang=en"&gt;WAST&lt;/a&gt; but that is dying on the vine and I can't get it to run probably on Vista x64, so I need to run it in a virtual machine.&lt;/p&gt;  &lt;p&gt;We have tried JMeter, which is quite versatile but the reports and graphs suck.&lt;/p&gt;  &lt;p&gt;Suggestions?&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:06f3a64e-6ac3-466c-909b-ac71481b4bc8" 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/load%20test" rel="tag"&gt;load test&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125908"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125908" 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/scottkuhl/aggbug/125908.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/10/17/looking-for-load-testing-software.aspx</guid>
            <pubDate>Sat, 18 Oct 2008 01:51:02 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/125908.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/10/17/looking-for-load-testing-software.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/125908.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/125908.aspx</trackback:ping>
        </item>
        <item>
            <title>Ah, the Tech Market in the 90s!</title>
            <category>Humor</category>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/10/08/ah-the-tech-market-in-the-90s.aspx</link>
            <description>&lt;p&gt;Great quote from Martin Sheen in the new Paris for President video:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;It was the go-go 90s.  People invested in a web site that sold dog food because a puppet told them to do it.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125716"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125716" 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/scottkuhl/aggbug/125716.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/10/08/ah-the-tech-market-in-the-90s.aspx</guid>
            <pubDate>Wed, 08 Oct 2008 17:53:56 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/125716.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/10/08/ah-the-tech-market-in-the-90s.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/125716.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/125716.aspx</trackback:ping>
        </item>
        <item>
            <title>ASP.NET Cache and HtmlAnchor HRef Bug</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/09/04/asp.net-cache-and-htmlanchor-href-bug.aspx</link>
            <description>&lt;p&gt;I just ran into a strange problem where all the links on a list are getting dropped.  The anchor tag was still there but the href was gone.  I tracked it down to a bug in the cache.&lt;/p&gt;  &lt;p&gt;Here is the scenario.&lt;/p&gt;  &lt;p&gt;I am building a fairly complex bullet list in code that will change very infrequently so I cache the user control for 24 hours.  The problem is anything being built with an HtmlAnchor control is losing the Href value, but not anything else.&lt;/p&gt;  &lt;p&gt;This breaks:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;var anchor = new HtmlAnchor { HRef = "&lt;/font&gt;&lt;a href="http://www.juggle.com/"&gt;&lt;font face="Courier New"&gt;http://www.juggle.com/&lt;/font&gt;&lt;/a&gt;&lt;font face="Courier New"&gt;", InnerText = "Juggle" };&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;This works:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;var anchor = new HtmlGenericControl("a") { InnerText = "Juggle" };     &lt;br /&gt;anchor.Attributes.Add("href", "&lt;/font&gt;&lt;a href="http://www.juggle.com/"&gt;&lt;font face="Courier New"&gt;http://www.juggle.com/&lt;/font&gt;&lt;/a&gt;&lt;font face="Courier New"&gt;");&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Now if I try to re-create the bug with a simple test, no luck.  It is some other deadly combination.  Maybe caching the entire UserControl?&lt;/p&gt;  &lt;p&gt;Anyone else seen this bug?&lt;/p&gt;  &lt;p&gt;This was the only thing I could find about it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://channel9.msdn.com/forums/TechOff/252507-Problem-with-HTMLAnchor-and-ASPNet-Cache/"&gt;Problem with HTMLAnchor and ASP.Net Cache&lt;/a&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5856e73b-4357-483a-a796-c1c7fcded1c0" 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/asp.net" rel="tag"&gt;asp.net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/cache" rel="tag"&gt;cache&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124941"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124941" 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/scottkuhl/aggbug/124941.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/09/04/asp.net-cache-and-htmlanchor-href-bug.aspx</guid>
            <pubDate>Thu, 04 Sep 2008 19:28:02 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/124941.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/09/04/asp.net-cache-and-htmlanchor-href-bug.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/124941.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/124941.aspx</trackback:ping>
        </item>
        <item>
            <title>Are Too Many Good Reviews A Bad Thing?</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/07/28/are-too-many-good-reviews-a-bad-thing.aspx</link>
            <description>&lt;p&gt;Last week I was trying to decide whether to finally go ahead and order &lt;a href="https://www.learnandmasterguitar.com/"&gt;&lt;strong&gt;Learn and Master Guitar&lt;/strong&gt;&lt;/a&gt;.  I'm not sure how I originally found out, but it seems to be a very popular system.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The reviews for it are great.  Almost too great.  Every review seemed to be so good that I started to question the authenticity of them.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;First, take a look at these Google search results for &lt;a href="http://www.google.com/search?q=learn+and+master+guitar"&gt;learn and master guitar&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;So why not believe them?&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;The reviews seemed a little too close to the same.&lt;/li&gt;    &lt;li&gt;Every link title "is this a scam" lead to an "absolutely not" review.&lt;/li&gt;    &lt;li&gt;Why were there so many links with scam in the subject in the first place?&lt;/li&gt;    &lt;li&gt;Why were there so many paid advertisement links to reviews?&lt;/li&gt;    &lt;li&gt;(This one is the worst.)  The site always has a limited time offer sale of $100 off which is about to end.  Check back after the expiration date, and the 3 day clock resets.&lt;/li&gt;    &lt;li&gt;The &lt;a href="http://en.wikipedia.org/wiki/Telly_Awards"&gt;award it won&lt;/a&gt; seems a little shady.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Everything started to feel like an infomercial or a get rich quick scheme.&lt;/p&gt;  &lt;p&gt;So why believe them?&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Forums, forums, forums.  I really could not find any bad reviews.  The worst I found were comments that the system was good but don't expect a magic bullet, or good for beginners (me) but not intermediate players.&lt;/li&gt;    &lt;li&gt;Same results on Q &amp;amp; A sites.&lt;/li&gt;    &lt;li&gt;Same results on blogs.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Is it really possible that this company is trolling all these sites to put up fake positive reviews?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;I know there are some guitar players that read GWB.  Anyone know more about this?&lt;/strong&gt;  I plan on supplementing this with real lessons from &lt;a href="http://www.melodicrhythms.com/"&gt;Melodic Rhythms&lt;/a&gt; and &lt;a href="http://www.guitarprinciples.com/"&gt;The Principals of Correct Practice for Guitar&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Now let's see if I can find time to learn to play, launch juggle.com and start posting more again.  My track record of late on GWB has been abysmal.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:3714eecd-de44-41c5-9c64-e2883179885f" 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/music" rel="tag"&gt;music&lt;/a&gt;,&lt;a href="http://technorati.com/tags/guitar" rel="tag"&gt;guitar&lt;/a&gt;,&lt;a href="http://technorati.com/tags/guitar%20principles" rel="tag"&gt;guitar principles&lt;/a&gt;,&lt;a href="http://technorati.com/tags/melodic%20rhythms" rel="tag"&gt;melodic rhythms&lt;/a&gt;,&lt;a href="http://technorati.com/tags/learn%20and%20master%20guitar" rel="tag"&gt;learn and master guitar&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124090"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124090" 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/scottkuhl/aggbug/124090.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/07/28/are-too-many-good-reviews-a-bad-thing.aspx</guid>
            <pubDate>Tue, 29 Jul 2008 04:51:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/124090.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/07/28/are-too-many-good-reviews-a-bad-thing.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/124090.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/124090.aspx</trackback:ping>
        </item>
        <item>
            <title>Steve Ballmer Egged in Hungary (VIDEO)</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/05/20/steve-ballmer-egged-in-hungary-video.aspx</link>
            <description>&lt;p&gt;He seems to take it better than Bill did the pie.&lt;/p&gt;  &lt;p&gt;   &lt;/p&gt;&lt;div class="wlWriterSmartContent" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:312ac52f-2f12-4fe4-96ce-35e3e084780a" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;div&gt;&lt;object width="464" height="392"&gt;&lt;param name="movie" value="http://embed.break.com/NTA1MjU3" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;embed src="http://embed.break.com/NTA1MjU3" type="application/x-shockwave-flash" allowscriptaccess="always" width="464" height="392"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;font size="1"&gt;&lt;a href="http://www.break.com/index/steve-ballmer-egged-in-hungary.html"&gt;Steve Ballmer Egged in Hungary&lt;/a&gt; - Watch more &lt;a href="http://www.break.com/"&gt;free videos&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;&lt;/div&gt;   &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:fc04cba2-be80-4b35-8c41-db82c32d615c" 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/microsoft" rel="tag"&gt;microsoft&lt;/a&gt;,&lt;a href="http://technorati.com/tags/humor" rel="tag"&gt;humor&lt;/a&gt;,&lt;a href="http://technorati.com/tags/video" rel="tag"&gt;video&lt;/a&gt;,&lt;a href="http://technorati.com/tags/steve%20ballmer" rel="tag"&gt;steve ballmer&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122279"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122279" 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/scottkuhl/aggbug/122279.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/05/20/steve-ballmer-egged-in-hungary-video.aspx</guid>
            <pubDate>Wed, 21 May 2008 02:11:59 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/122279.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/05/20/steve-ballmer-egged-in-hungary-video.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/122279.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/122279.aspx</trackback:ping>
        </item>
        <item>
            <title>Heroes Happen Somewhere Else</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/05/06/heroes-happen-somewhere-else.aspx</link>
            <description>&lt;p&gt;Just got back from the &lt;a href="http://www.microsoft.com/heroeshappenhere/register/default.mspx"&gt;Microsoft Heroes Happen Here&lt;/a&gt; event in St. Louis.  It was awful.  This is the first event from Microsoft I have walked out on.&lt;/p&gt;  &lt;p&gt;The first track was titled Next Gen Web Apps and the presenter spent 15 minutes talking about CSS as if it was new and no one in the audience had ever seen it before.&lt;/p&gt;  &lt;p&gt;Next he moved on to LINQ and then lost me as he typed out the samples.&lt;/p&gt;  &lt;p&gt;Then we left.  Maybe it was going to get better, but I couldn't make it any longer.  It was definitely catered to the lowest common denominator and I think most of the people there just wanted to be anywhere but the office.  (and free software)&lt;/p&gt;  &lt;p&gt;Oh, well.  Maybe I'm just having a bad day.  Back to the real fun - work.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c44ed58e-2d1a-4252-a11c-d4fc589e422c" 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/microsoft" rel="tag"&gt;microsoft&lt;/a&gt;,&lt;a href="http://technorati.com/tags/heroes%20happen%20here" rel="tag"&gt;heroes happen here&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121942"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121942" 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/scottkuhl/aggbug/121942.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/05/06/heroes-happen-somewhere-else.aspx</guid>
            <pubDate>Tue, 06 May 2008 20:30:36 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/121942.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/05/06/heroes-happen-somewhere-else.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/121942.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/121942.aspx</trackback:ping>
        </item>
        <item>
            <title>Justice?</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/justice.aspx</link>
            <description>&lt;p&gt;I use to own a Creative Zen.  Looks like they got sued and I am entitled to a settlement.  But the lawyers are the only winners here.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The two people who filed the suit get $5,000 each.&lt;/li&gt;    &lt;li&gt;Everyone else gets a discount on a new product made by the company that screwed them in the first place.&lt;/li&gt;    &lt;li&gt;The lawyers get $900,000!!!!&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I think the lawyers should get paid in coupons too.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;In addition, if you submit a valid claim, you will receive either a 50% discount off the price of a new 1 GB MP3 player, or a discount certificate good for 20% off the price of any single item purchased at &lt;a href="http://www.us.creative.com/" target="_blank"&gt;&lt;font color="#0066cc"&gt;www.us.creative.com&lt;/font&gt;&lt;/a&gt;. To receive the discount player or discount certificate you must submit a claim form available at &lt;a href="http://www.creativehddmp3settlement.com/" target="_blank"&gt;&lt;font color="#0066cc"&gt;www.creativehddmp3settlement&lt;wbr&gt;&lt;/wbr&gt;.com&lt;/font&gt;&lt;/a&gt; by August 7, 2008. You may submit a claim for each Creative HDD MP3 Player you purchased.&lt;/p&gt;    &lt;p&gt;If the settlement is approved, plaintiffs’ counsel will apply for an award of attorneys’ fees and expenses not to exceed $900,000, plus incentive awards for the two representative plaintiffs in the amount of $5,000 each, to be paid separately from and in addition to the relief available to plaintiff class members.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121804"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121804" 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/scottkuhl/aggbug/121804.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/justice.aspx</guid>
            <pubDate>Thu, 01 May 2008 00:47:51 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/121804.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/justice.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/121804.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/121804.aspx</trackback:ping>
        </item>
        <item>
            <title>When Are TV Episodes Posted To The Web???</title>
            <link>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/when-are-tv-episodes-posted-to-the-web.aspx</link>
            <description>&lt;p&gt;I'm looking for a site, or software, that will tell me when a television episode has been posted to the web.&lt;/p&gt;  &lt;p&gt;Much like the way Tivo records.  So if I want to watch episodes of Monk, the service should let me know that a new episode has been posted.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Anyone know of anything that provides this?&lt;/strong&gt;  And I don't mean illegal bittorrent versions, I don't have a problem watching the web streaming version.&lt;/p&gt;  &lt;p&gt;I might be able to do something myself with Yahoo! Pipes and maybe some screen scraping, but if it already exists that would be better.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:78dd69c5-22cc-45fe-9b69-b27775303f46" 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/tv" rel="tag"&gt;tv&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121800"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121800" 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/scottkuhl/aggbug/121800.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Scott Kuhl</dc:creator>
            <guid>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/when-are-tv-episodes-posted-to-the-web.aspx</guid>
            <pubDate>Wed, 30 Apr 2008 20:20:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/scottkuhl/comments/121800.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/scottkuhl/archive/2008/04/30/when-are-tv-episodes-posted-to-the-web.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/scottkuhl/comments/commentRss/121800.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/scottkuhl/services/trackbacks/121800.aspx</trackback:ping>
        </item>
    </channel>
</rss>
