<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Jason Meridth</title><link>http://www.lostechies.com/blogs/jason_meridth/default.aspx</link><description>LosTechies Blogger - Agile software developer</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/jasonmeridth" type="application/rss+xml" /><item><title>Hammett joins Microsoft</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/336720018/hammett-joins-microsoft.aspx</link><pubDate>Wed, 16 Jul 2008 03:50:53 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:4105</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=4105</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=4105</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/15/hammett-joins-microsoft.aspx#comments</comments><description>&lt;p&gt;Read &lt;a href="http://hammett.castleproject.org/?p=312#comment-62594" target="_blank"&gt;here&lt;/a&gt;.&amp;nbsp; I couldn&amp;#39;t believe until I read it.&amp;nbsp; He will be a Program Manager for MEF (Microsoft Entity Framework, I&amp;#39;m assuming?).&amp;nbsp; This is a VERY good thing.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.lostechies.com/blogs/jason_meridth/WindowsLiveWriter/HammettjoinsMicrosoft_1414A/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="86" alt="image" src="http://www.lostechies.com/blogs/jason_meridth/WindowsLiveWriter/HammettjoinsMicrosoft_1414A/image_thumb.png" width="397" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=4105" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=cn4TJJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=cn4TJJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=0IkqLJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=0IkqLJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=98Lrrj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=98Lrrj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=kmZeNJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=kmZeNJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=hqYeTj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=hqYeTj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/15/hammett-joins-microsoft.aspx</feedburner:origLink></item><item><title>LosTechies welcomes Mo Khan</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/333581437/lostechies-welcomes-mo-khan.aspx</link><pubDate>Sat, 12 Jul 2008 15:08:21 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:4051</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>4</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=4051</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=4051</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/12/lostechies-welcomes-mo-khan.aspx#comments</comments><description>&lt;p&gt;Mo is a passionate software developer and blogger and we&amp;#39;re happy to have him join us here at LosTechies.&amp;nbsp; His &lt;a href="http://mokhan.ca/blog/" target="_blank"&gt;blog&lt;/a&gt; is a must read.&amp;nbsp; Go check out his blog archive for some great information.&amp;nbsp; He addition to the group is another sign that LosTechies is growing and becoming a great centralized place for technology information.&amp;nbsp; Mo is our first blogger from Canada.&lt;/p&gt; &lt;p&gt;One of the things I liked about Mo&amp;#39;s blog was his &lt;a href="http://mokhan.ca/goals.html"&gt;goals section&lt;/a&gt;, it showed his organization and passion for our industry.&lt;/p&gt; &lt;p&gt;Look for him to be blogging soon.&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=4051" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=TJoqYJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=TJoqYJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=RTBB1J"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=RTBB1J" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=ego6Sj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=ego6Sj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=lmzp4J"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=lmzp4J" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=DQlmJj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=DQlmJj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/12/lostechies-welcomes-mo-khan.aspx</feedburner:origLink></item><item><title>Free e-Book from Karl Seguin</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/332952771/free-e-book-from-karl-seguin.aspx</link><pubDate>Fri, 11 Jul 2008 19:19:45 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:4045</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=4045</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=4045</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/11/free-e-book-from-karl-seguin.aspx#comments</comments><description>&lt;p&gt;I may be late on the band wagon on this one, but I just had the privilege of reading Karl Seguin&amp;#39;s free e-book, &lt;a href="http://www.openmymind.net/FoundationsOfProgramming.pdf" target="_blank"&gt;&amp;quot;Foundations of Programming&amp;quot;&lt;/a&gt;.&amp;nbsp; This is what Alt.NET is all about.&lt;/p&gt; &lt;p&gt;Even if you disagree with Alt.NET or what it stands for, please just take a glance at it.&amp;nbsp; Karl is very good at re-emphasizing Joe Ocampo&amp;#39;s favorite two words, &amp;quot;It depends...&amp;quot;.&lt;/p&gt; &lt;p&gt;Remember, there is no silver bullet.&amp;nbsp; This book at least gives you knowledge.&amp;nbsp; Enjoy. &lt;/p&gt; &lt;p&gt;Kudos to Karl.&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=4045" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=bCs9DJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=bCs9DJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=LpaBEJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=LpaBEJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=3Tg0Lj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=3Tg0Lj" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=FuBAAJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=FuBAAJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=Tsuapj"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=Tsuapj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Books/default.aspx">Books</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Agile/default.aspx">Agile</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/07/11/free-e-book-from-karl-seguin.aspx</feedburner:origLink></item><item><title>How did I get started in software development?</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/321687978/how-did-i-get-started-in-software-development.aspx</link><pubDate>Fri, 27 Jun 2008 23:41:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3905</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3905</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3905</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/06/27/how-did-i-get-started-in-software-development.aspx#comments</comments><description>&lt;p&gt;Thanks for tagging me &lt;a href="http://joeybeninghove.lostechies.com" target="_blank"&gt;Joey.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;How old were you when you started programming?&lt;/b&gt;&lt;/p&gt; &lt;p&gt;I was 11 years old (6th grade) when I started using QBasic to make easy games.&amp;nbsp; I actually knew about the easter egg that showed the developer names. &lt;/p&gt;&lt;p&gt;&lt;b&gt;What was your first language?&lt;/b&gt;&lt;/p&gt; &lt;p&gt;Like Joey I used to write basic apps with QBasic and even mimicked a Windows Blue screen for fun.&amp;nbsp; I also used to code my TI calculators for games&amp;nbsp; when I was bored.&amp;nbsp; Pascal was my first third generation language for school and then hopped to ANSI C and C++.&amp;nbsp; Java and C# followed.&amp;nbsp; Python and Ruby are my new study items.&lt;b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;What was the first real program you wrote?&lt;/b&gt;&lt;/p&gt; &lt;p&gt;Mentioned above .&amp;nbsp; It was games written in QBasic.&amp;nbsp; For friends and family.&lt;b&gt;&lt;/b&gt;&lt;/p&gt; &lt;p&gt;&lt;b&gt;If you knew then what you know now, would you have started programming?&lt;/b&gt;&lt;/p&gt; &lt;p&gt;Most definitely.&amp;nbsp; This is one of those industries where you get to learn about other industries.&amp;nbsp; You get this because you write software for them. :) &lt;/p&gt; &lt;p&gt;&lt;b&gt;If there is one thing you learned along the way that you would tell new developers, what would it be?&lt;/b&gt;&lt;/p&gt;The easiest answer is to go read &amp;quot;Pragmatic Programmer&amp;quot; by Hunt and Thomas, then go pair program with someone with Agile (Scrum/XP) experience.&amp;nbsp; I&amp;#39;m not trying to start an Agile flame war, but in my personal experience it works.&lt;p&gt;&lt;b&gt;What&amp;#39;s the most fun you&amp;#39;ve ever had ... programming?&lt;/b&gt;&lt;/p&gt;The current team I&amp;#39;m on successfully wrote an internal web app for our mortgage company, with 6000+ unit tests, pair programming, continuous integration, and other little goodies.&amp;nbsp; The best part: project finished ahead of schedule, under budget, with zero defects, and a VERY happy end user.&amp;nbsp; That is fun.&amp;nbsp; Lasted almost a year.&lt;br /&gt;&lt;p&gt;&lt;b&gt;The poor saps that I&amp;#39;m tagging?&lt;/b&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://chadmyers.lostechies.com/"&gt;Chad Myers&lt;/a&gt;  &lt;/li&gt;&lt;li&gt;&lt;a href="http://rhouston.lostechies.com"&gt;Ray Houston&lt;/a&gt;  &lt;/li&gt;&lt;li&gt;  &lt;a href="http://blog.acuriousmind.com/" target="_blank"&gt;Dru Sellers&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://codebetter.com/blogs/david_laribee/default.aspx" target="_blank"&gt;David Laribee&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://codemonkey.nmonta.com/" target="_blank"&gt;Nelson Montalvo&lt;/a&gt; &lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3905" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=n6GZsI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=n6GZsI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=BUoULI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=BUoULI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=1wTcCi"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=1wTcCi" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=mqRPrI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=mqRPrI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=RS1ZHi"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=RS1ZHi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Programming/default.aspx">Programming</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/funny/default.aspx">funny</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/06/27/how-did-i-get-started-in-software-development.aspx</feedburner:origLink></item><item><title>Getting VMWare server working on Ubuntu 8.04 (Hardy Heron)</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/304183587/getting-vmware-server-working-on-ubuntu-8-04-hardy-heron.aspx</link><pubDate>Wed, 04 Jun 2008 02:08:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3508</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3508</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3508</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/06/03/getting-vmware-server-working-on-ubuntu-8-04-hardy-heron.aspx#comments</comments><description>&lt;p&gt;I had some slow issues with Virtual Box, which I&amp;#39;ve heard have been fixed.&amp;nbsp; I&amp;#39;m heading back down the VMWare path and did some research first.&lt;/p&gt;&lt;p&gt;I found this &lt;a href="http://ubuntu-tutorials.com/2008/05/03/install-vmware-server-105-on-ubuntu-804-hardy/" title="VMWare on Hardy Heron (8.04)" target="_blank"&gt;post&lt;/a&gt; and tried it out.&amp;nbsp; It worked great.&amp;nbsp; My VMs are moving at my required speed now.&amp;nbsp; The latest version of VMWare 1.06 still requires some bash shell work.&amp;nbsp; This post gets you setup good.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I&amp;#39;m running Virtual Studio 2008, Re# 4.0 (latest nightly build), and a couple other apps.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Using virtual machines have become the development de facto.&amp;nbsp; I&amp;#39;m finally getting back into the grove with ASP.NET MVC and some ExtJS stuff at work. (THANK GOD).&amp;nbsp; We&amp;#39;ve brought in the latest Rhino Mocks (3.5) and Castle Windsor.&amp;nbsp; Fun stuff ahead. &amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3508" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=dDuudI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=dDuudI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=b7WFlI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=b7WFlI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=rnzpti"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=rnzpti" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=1udbLI"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=1udbLI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=XC2Jhi"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=XC2Jhi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/vmware/default.aspx">vmware</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/06/03/getting-vmware-server-working-on-ubuntu-8-04-hardy-heron.aspx</feedburner:origLink></item><item><title>xkcd2 - someone is wrong</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/279553159/xkcd2-someone-is-wrong.aspx</link><pubDate>Mon, 28 Apr 2008 17:40:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3106</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3106</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3106</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/28/xkcd2-someone-is-wrong.aspx#comments</comments><description>&lt;p&gt;Who was I thinking of when I read this?&amp;nbsp; Oh, there are so many people. (mouse over for alt text, funny also -- you do this with all xkcd comics)&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://imgs.xkcd.com/comics/duty_calls.png" title="What do you want me to do?  LEAVE?  Then they&amp;#39;ll keep being wrong!" align="" border="0" height="330" hspace="" width="300" alt="" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3106" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=YrH7rG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=YrH7rG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=3XS71G"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=3XS71G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=seneZg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=seneZg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=vZmgMG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=vZmgMG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=kGmIKg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=kGmIKg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/funny/default.aspx">funny</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/28/xkcd2-someone-is-wrong.aspx</feedburner:origLink></item><item><title>xkcd - ubuntu, python comics</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/279531773/xkcd-ubuntu-python-comics.aspx</link><pubDate>Mon, 28 Apr 2008 17:34:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3105</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3105</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3105</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/28/xkcd-ubuntu-python-comics.aspx#comments</comments><description>&lt;p&gt;If you don&amp;#39;t currently read &lt;a href="http://www.xkcd.com" target="_blank"&gt;xkcd.com&lt;/a&gt;, you should be.&amp;nbsp; It has some mushy lovey dovey junk in it sometimes, but the python references and open source references are hilarious.&lt;/p&gt;&lt;p&gt;Today&amp;#39;s comic: (mouse over for the Ubuntu reference)&lt;br /&gt;&lt;br /&gt;&lt;img src="http://imgs.xkcd.com/comics/zealous_autoconfig.png" title="I hear this is an option in the latest Ubuntu release" align="" border="0" height="211" hspace="" width="740" alt="" /&gt; &lt;/p&gt;&lt;p&gt;One of my other favs:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://imgs.xkcd.com/comics/python.png" title="I wrote 20 short programs in Python yesterday.  It was wonderful.  Perl, I&amp;#39;m leaving you." align="" border="0" height="588" hspace="" width="518" alt="" /&gt; &lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3105" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=uVRDQG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=uVRDQG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=7Pg3YG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=7Pg3YG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=uApCrg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=uApCrg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=plAibG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=plAibG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=uiaofg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=uiaofg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Linux/default.aspx">Linux</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/funny/default.aspx">funny</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/xkcd/default.aspx">xkcd</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/28/xkcd-ubuntu-python-comics.aspx</feedburner:origLink></item><item><title>Ubuntu 8.04, VirtualBox, and USB support</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/279000036/using-the-gutsy-gibbon-ubuntu-7-10-non-ose-version-of-virtualbox-with-your-hardy-heron-ubuntu-8-04-install.aspx</link><pubDate>Sun, 27 Apr 2008 16:42:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3087</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>18</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3087</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3087</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/27/using-the-gutsy-gibbon-ubuntu-7-10-non-ose-version-of-virtualbox-with-your-hardy-heron-ubuntu-8-04-install.aspx#comments</comments><description>&lt;p&gt;&lt;i&gt;&lt;b&gt;UPDATE&lt;/b&gt;: Make sure your user account is a member of the vboxusers account.&amp;nbsp; VirtualBox will not start and the error will tell you this, but just want to be explicit.&amp;nbsp; You will have to logout and log back in. &lt;/i&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I recently upgraded my Ubuntu to the latest version, as mentioned in a previous post.&amp;nbsp; I&amp;#39;m very excited about it, due to greater support for hardware items that I&amp;#39;ve had to fight battles with (one of the many reasons people won&amp;#39;t make the switch to Linux).&amp;nbsp; I upgraded to Hardy Heron and then upgraded VirtualBox when prompted.&amp;nbsp; It was a fatal hardware recognition mistake.&amp;nbsp; As soon as I booted back up after a restart, I didn&amp;#39;t have sound, wireless, etc.&amp;nbsp; &lt;/p&gt;&lt;p&gt;After just not being in the mood of going down the road of trying to get the hardware re-recognized, I reloaded and di my research on the virtualbox upgrade.&amp;nbsp; It seems to be a known issue on the ubuntuforms.&amp;nbsp;&lt;/p&gt;&lt;p&gt;I looked through the forums and got educated on a few things about the ose (open source edition) versions of VirtualBox.&amp;nbsp; 1. no usb support (I will update if I&amp;#39;m proved wrong). 2. the new ose kernel modules hose toshiba satellite hardware detection (at least on my laptop).&lt;/p&gt;&lt;p&gt;To get the gutsy non-ose version of Virtual Box, add this repository to /etc/apt/sources.list:&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New"&gt;deb http://www.virtualbox.org/debian gutsy non-free &lt;/font&gt;&lt;br /&gt;
&lt;br /&gt;
then in a terminal:&lt;/p&gt;&lt;p&gt; &lt;font face="Courier New"&gt; apt-get update&lt;br /&gt;apt-get install virtualbox&lt;/font&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;if you get a host key issue, the do the following:&lt;/p&gt;&lt;p&gt;go get the public key.. go to this website and it&amp;#39;ll have the
key there just right click anywhere in the page and go to save page as
then save it to your home directory preferably.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.virtualbox.org/debian/innotek.asc" target="_blank"&gt;http://www.virtualbox.org/debian/innotek.asc&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Now to add that key run...&lt;br /&gt;
&lt;/p&gt;&lt;p&gt;&lt;font face="Courier New"&gt;apt-key add innotek.asc&lt;br /&gt;apt-get update&lt;br /&gt;apt-get install virtualbox&lt;/font&gt; &lt;/p&gt;&lt;p&gt;This will give you the gutsy version that I&amp;#39;ve worked with and have had no problems with.&amp;nbsp; The bonus is that you get USB support.&amp;nbsp;&lt;/p&gt;&lt;p&gt;I will get back to code posts next.&amp;nbsp; Just want to share the knowledge with other Linux users.&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3087" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=A28GAG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=A28GAG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=RjJQSG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=RjJQSG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=w92bNg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=w92bNg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=i2GRQG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=i2GRQG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=eeQMMg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=eeQMMg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Tools/default.aspx">Tools</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Linux/default.aspx">Linux</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Virtual+Machine/default.aspx">Virtual Machine</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/27/using-the-gutsy-gibbon-ubuntu-7-10-non-ose-version-of-virtualbox-with-your-hardy-heron-ubuntu-8-04-install.aspx</feedburner:origLink></item><item><title>MSDN - can't download with firefox</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/278623769/msdn-can-t-download-with-firefox.aspx</link><pubDate>Sun, 27 Apr 2008 04:26:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3081</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>5</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3081</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3081</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/26/msdn-can-t-download-with-firefox.aspx#comments</comments><description>&lt;p&gt;&lt;i&gt;&lt;b&gt;UPDATE&lt;/b&gt;: I&amp;#39;m on Linux.&amp;nbsp; Getting this to work on Windows is simple enough, just like James mentions in the comments. Thanks.&amp;nbsp;&lt;/i&gt;&lt;/p&gt;&lt;p&gt;I&amp;#39;m writing this, because it&amp;#39;s about the 5th time I&amp;#39;ve had to use my Windows box or VM to get iso files from MSDN. &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;lt;rant&amp;gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;I understand, in a business manner, why Microsoft won&amp;#39;t allow downloads from Firefox at MSDN.&amp;nbsp; I work for a company that was kind enough to give me a MSDN license.&amp;nbsp; I&amp;#39;ve used it a great deal to get software like Vistual Studio 2008 and SQL Server 2008 recently.&amp;nbsp; I also use it for the iso files I use in my VMs.&amp;nbsp; I recently had to download Vista again and from Firefox the specific items I want (the checkboxes in MSDN&amp;#39;s new Silverlight UI) are grayed out.&amp;nbsp; COME ON!!!!!&lt;/p&gt;&lt;p&gt;I use Firefox more than I use Internet Explorer.&amp;nbsp; And before, you non-Linux users tell me about the IE tab plugin for Firefox, let me remind you that you still have to have iexplore.exe on your PC.&amp;nbsp; Linux doesn&amp;#39;t have it (and shouldn&amp;#39;t).&lt;/p&gt;&lt;p&gt;I like where Microsoft development teams are going recently (Guthrie, Haack, Conery, etc), but the MSDN team needs to wake up and open the ability to download items via Firefox.&lt;/p&gt;&lt;p&gt;If someone out there knows a way to do this with Firefox, I will update this post and eat some humble pie.&lt;/p&gt;&lt;p&gt;&amp;lt;/rant&amp;gt; &lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3081" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=huaz6G"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=huaz6G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=07JyNG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=07JyNG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=YyO2Lg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=YyO2Lg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=vArsPG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=vArsPG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=5W4qqg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=5W4qqg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Tools/default.aspx">Tools</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/microsoft/default.aspx">microsoft</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/msdn/default.aspx">msdn</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/26/msdn-can-t-download-with-firefox.aspx</feedburner:origLink></item><item><title>Ubutnu 8.04 (Hardy Heron) after upgrade - I have complete sound!!</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/278406623/ubutnu-8-04-hardy-heron-after-upgrade-i-have-complete-sound.aspx</link><pubDate>Sat, 26 Apr 2008 17:46:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3070</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3070</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3070</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/26/ubutnu-8-04-hardy-heron-after-upgrade-i-have-complete-sound.aspx#comments</comments><description>&lt;p&gt;&lt;i&gt;&lt;b&gt;UPDATE&lt;/b&gt;: Do not upgrade your virtual box install.&amp;nbsp; Stay with the Gutsy version if you already have it.&amp;nbsp; If you are just installing Hardy Heron from scratch, I will have a post in a little bit and link to it here about how to ensure you get the correct version. &lt;/i&gt;&lt;/p&gt;&lt;p&gt;In a previous &lt;a href="http://www.lostechies.com/blogs/jason_meridth/archive/2007/05/12/getting-sound-working-on-my-toshiba-laptop-with-ubuntu-7-04-feisty-fawn.aspx" target="_blank"&gt;post&lt;/a&gt;, I shared the pain of getting sound working on my Toshiba Satellite laptop with prior versions of Ubuntu.&amp;nbsp; It has been off and on for a while and I&amp;#39;ve even resorting to recompiling my kernel to get it to work (no luck).&amp;nbsp; After upgrading to Hardy Heron today and restarting, I heard the wonderful drum sounds you here when Ubuntu loands.&amp;nbsp; YIPEE!!&amp;nbsp; I just logged in and finally got to watch some of the CodeBetter screencasts on the Seattle conference on my laptop without having to use my Windows VM.&amp;nbsp; For some reason, when I plugged headphones in and used my Windows VM, I got sound.&lt;/p&gt;&lt;p&gt;I also got the latest beta of Firfox 3.0.&amp;nbsp; Wow.&amp;nbsp; My del.icio.us plugin was not compatible, but I did find the &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/5457" target="_blank"&gt;Shareaholic&lt;/a&gt; plugin that lets you post to Twitter, Facebook, Reddit, Digg, Del.icio.us, etc.&amp;nbsp; Nice.&amp;nbsp; A few special effects also.&lt;/p&gt;&lt;p&gt;I noticed that the OS also has indexing in place now, so you can search for programs like you do with Vista.&lt;/p&gt;&lt;p&gt;There are other new features that I&amp;#39;m excited about, but will use them in greater detail before I blog about them.&lt;/p&gt;&lt;p&gt;Don&amp;#39;t get me wrong folks.&amp;nbsp; Microsoft pays my bills with the day job, but I like Linux for personal reasons (oh and it&amp;#39;s free).&amp;nbsp; Just want to share in case anyone is thinking about switching or is currently using and hasn&amp;#39;t upgraded. I finally got my Vista VM up and I&amp;#39;m working in IronPython again.&amp;nbsp; I plan to post on that soon.&lt;/p&gt;&lt;p&gt;I&amp;#39;m just very happy my sound is working flawlessly. &lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3070" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=joPT0pG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=joPT0pG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=B0VvosG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=B0VvosG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=ueT9fTg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=ueT9fTg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=uxOEZzG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=uxOEZzG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=p1Vz1Lg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=p1Vz1Lg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Linux/default.aspx">Linux</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/26/ubutnu-8-04-hardy-heron-after-upgrade-i-have-complete-sound.aspx</feedburner:origLink></item><item><title>Ubuntu 8.04 came out today (Hardy Heron)</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/277368102/ubuntu-8-04-came-out-today-hardy-heron.aspx</link><pubDate>Fri, 25 Apr 2008 03:48:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3044</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>4</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3044</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3044</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/24/ubuntu-8-04-came-out-today-hardy-heron.aspx#comments</comments><description>&lt;p&gt;Download &lt;a href="http://www.ubuntu.com/getubuntu/download" target="_blank"&gt;here&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.ubuntu.com/products/whatisubuntu/804features/" target="_blank"&gt;Feature List&lt;/a&gt; and a little more detail &lt;a href="http://www.ubuntu.com/testing/804rc" target="_blank"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I&amp;#39;m currently on Gutsy Gibbon (7.10), the previous version.&amp;nbsp; I&amp;#39;m upgrading after I post this.&amp;nbsp; I&amp;#39;ll update this post afterwards.&lt;/p&gt;&lt;p&gt;Also, for all you hesitant Linux users out there, on this version of distribution you can get the iso, create a CD and put in your windows box and install Ubuntu like a Windows application.&amp;nbsp; This tool is called &lt;a href="http://www.ubuntu.com/testing/804rc#head-87d0a87aa86aa19685191dac8a85075a9b4dbc7b" target="_blank"&gt;Wubi&lt;/a&gt;.&amp;nbsp; This will let you see what Linux has to offer.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;img src="https://wiki.ubuntu.com/HardyHeron/RC?action=AttachFile&amp;amp;do=get&amp;amp;target=umenu.png" alt="" align="" border="0" height="393" hspace="" width="503" /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="https://wiki.ubuntu.com/HardyHeron/RC?action=AttachFile&amp;amp;do=get&amp;amp;target=wubi.png" alt="" align="" border="0" height="400" hspace="" width="640" /&gt;&lt;/p&gt;&lt;p&gt;Also, if you haven&amp;#39;t, go check out Virtual Box, so if you decide to make the switch, you can still have your Windows fix for pleasure or development in a nice VM.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img src="http://www.virtualbox.org/attachment/wiki/Screenshots/5-logon.png?format=raw" alt="" align="" border="0" height="746" hspace="" width="1028" /&gt;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3044" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=MajlU8G"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=MajlU8G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=grAYNGG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=grAYNGG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=JdezbRg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=JdezbRg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=QRgFnmG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=QRgFnmG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=Lh4TBtg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=Lh4TBtg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Tools/default.aspx">Tools</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Linux/default.aspx">Linux</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Ubuntu/default.aspx">Ubuntu</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Virtual+Machine/default.aspx">Virtual Machine</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/24/ubuntu-8-04-came-out-today-hardy-heron.aspx</feedburner:origLink></item><item><title>Multi-processor builds with MsBuild</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/277360399/multi-processor-builds-with-msbuild.aspx</link><pubDate>Fri, 25 Apr 2008 03:38:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3043</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=3043</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=3043</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/24/multi-processor-builds-with-msbuild.aspx#comments</comments><description>&lt;p&gt;I use a mixture of NAnt and MSBuild and the following was very interesting.&lt;/p&gt;&lt;a href="http://www.hanselman.com/blog/FasterBuildsWithMSBuildUsingParallelBuildsAndMulticoreCPUs.aspx" target="_blank"&gt;Scott Hanselman posts about using multiple processors to build solutions.&lt;/a&gt;&amp;nbsp;&lt;p&gt;If you are not subscribed to Scott&amp;#39;s blog, you should be.&amp;nbsp; Also check out his &lt;a href="http://www.hanselman.com/blog/ScottHanselmans2007UltimateDeveloperAndPowerUsersToolListForWindows.aspx" target="_blank"&gt;tools list&lt;/a&gt; that he does every year.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3043" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=ZwJUAkG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=ZwJUAkG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=WD4ebtG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=WD4ebtG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=9uvVH1g"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=9uvVH1g" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=8usHiWG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=8usHiWG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=AegvD9g"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=AegvD9g" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Automated+Build/default.aspx">Automated Build</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/MSBuild/default.aspx">MSBuild</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/24/multi-processor-builds-with-msbuild.aspx</feedburner:origLink></item><item><title>Bil Simser's elevator question</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/272159054/bil-simser-s-elevator-question.aspx</link><pubDate>Thu, 17 Apr 2008 12:30:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:2944</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=2944</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=2944</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/17/bil-simser-s-elevator-question.aspx#comments</comments><description>&lt;p&gt;Bill &lt;a href="http://weblogs.asp.net/bsimser/archive/2008/04/16/3-geeks-in-an-elevator.aspx" target="_blank"&gt;recently posted a question to the nerd community&lt;/a&gt; about, &amp;quot;...if you were stuck in an elevator with 2 other nerds, with no technology at all, who would you like the 2 other nerds to be?&amp;quot;&lt;/p&gt;&lt;p&gt;I may be a little late on this one since I am finally catching up on my blogs, but mine would be Linus Torvalds and Oren Eini (Ayende).&amp;nbsp; Linus to just meet him and Oren to learn from him. &lt;/p&gt;&lt;p&gt;The comment from casey on Bill&amp;#39;s post was hilarious.&amp;nbsp; Anders + Oren and the mentioning of internals. Let bloodbath commence. Lulz.&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=2944" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=eqBwY2G"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=eqBwY2G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=Vl2zQWG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=Vl2zQWG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=xWbVOsg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=xWbVOsg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=ss5HylG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=ss5HylG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=4Y70lVg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=4Y70lVg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Misc/default.aspx">Misc</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/17/bil-simser-s-elevator-question.aspx</feedburner:origLink></item><item><title>How to install Twhirl on Ubuntu (7.10 Gutsy Gibbon)</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/271913633/how-to-install-twhirl-on-ubuntu-7-10-gutsy-gibbon.aspx</link><pubDate>Thu, 17 Apr 2008 04:24:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:2935</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=2935</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=2935</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/16/how-to-install-twhirl-on-ubuntu-7-10-gutsy-gibbon.aspx#comments</comments><description>&lt;p&gt;&lt;i&gt;&lt;b&gt;Update&lt;/b&gt;: I jumped the gun and I thought I&amp;#39;d never have to say this about Linux, but you may have to reboot after the install.&amp;nbsp; I lost all title bars on all windows after the install.&amp;nbsp; After reboot, they came back.&amp;nbsp; Glad I didn&amp;#39;t have to go down that rabbit hole.&lt;/i&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Get the new Adobe Air (Alpha) download for Linux from &lt;a href="http://labs.adobe.com/technologies/air/" target="_blank"&gt;here.&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Go to where you downloaded it and type the following, to install it:&lt;/p&gt;&lt;p&gt;chmod +x&amp;nbsp; adobeair_linux_a1_033108.bin&lt;br /&gt;./adobeair_linux_a1_033108.bin&lt;/p&gt;&lt;p&gt;Go download Twhirl from &lt;a href="http://www.twhirl.org/project/twhirl" target="_blank"&gt;here:&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I let the adobe air installer take it and let it install in the suggested folder (in case there are any dependencies on the air libraries that I don&amp;#39;t know of).&lt;/p&gt;&lt;p&gt;Last install screen will ask you if you want to start Twhirl up.&amp;nbsp; Do it!&amp;nbsp; Enjoy!!&lt;br /&gt;&lt;br /&gt;I&amp;#39;ll update this post if I have any issues.&lt;/p&gt;&lt;p&gt;Check me out on twitter at &lt;a href="http://www.twitter.com/jmeridth" target="_blank"&gt;http://www.twitter.com/jmeridth&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=2935" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=fC1QUkG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=fC1QUkG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=bjLEzmG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=bjLEzmG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=W77O1dg"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=W77O1dg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=LYiOKeG"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=LYiOKeG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=OCnZF3g"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=OCnZF3g" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Linux/default.aspx">Linux</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/twitter/default.aspx">twitter</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/04/16/how-to-install-twhirl-on-ubuntu-7-10-gutsy-gibbon.aspx</feedburner:origLink></item><item><title>PTOM: Single Responsibility Principle</title><link>http://feeds.feedburner.com/~r/jasonmeridth/~3/260493303/ptom-single-responsibility-principle.aspx</link><pubDate>Sun, 30 Mar 2008 01:21:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:2492</guid><dc:creator>Jason Meridth</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://www.lostechies.com/blogs/jason_meridth/rsscomments.aspx?PostID=2492</wfw:commentRss><wfw:comment>http://www.lostechies.com/blogs/jason_meridth/commentapi.aspx?PostID=2492</wfw:comment><comments>http://www.lostechies.com/blogs/jason_meridth/archive/2008/03/29/ptom-single-responsibility-principle.aspx#comments</comments><description>&lt;h3&gt;The Single Responsibility Principle&lt;/h3&gt; &lt;p&gt;&lt;font size="2"&gt;This post is about the first letter in Uncle Bob&amp;#39;s SOLID acronym, &lt;/font&gt;&lt;a href="http://www.objectmentor.com/resources/articles/srp.pdf" target="_blank"&gt;&lt;font size="2"&gt;Single Responsibility Principle&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;, and a continuation of &lt;/font&gt;&lt;a href="http://lostechies.com/blogs/chad_myers/archive/2008/03/07/pablo-s-topic-of-the-month-march-solid-principles.aspx"&gt;&lt;font size="2"&gt;The Los Techies Pablo&amp;#39;s Topic of the Month - March: SOLID Principles&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;.&amp;nbsp; Sean has already &lt;a href="http://www.lostechies.com/blogs/sean_chambers/archive/2008/03/15/ptom-single-responsibility-principle.aspx" target="_blank"&gt;posted&lt;/a&gt; on this, but I&amp;#39;d like to &amp;quot;contribute&amp;quot;. &lt;/font&gt; &lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;i&gt;&lt;b&gt;Note about the SOLID acronym and this blog &amp;quot;storm&amp;quot;&lt;/b&gt;:&lt;br /&gt;This &amp;quot;principle&amp;quot; is more or less common sense, as are most of the other items in the SOLID acronym.&amp;nbsp; I like the idea of this series because I personally have interviewed with companies who would ask about possible code scenarios and I respond with one of these principles or one of the GOF patterns and they look back at me with a blank stare.&amp;nbsp; I know these are just labels, but if they can reduce the miscommunication possibilities and start standardizing our industry, I&amp;#39;m all for it.&amp;nbsp; I know some of the new ideas and labels out there are still being hammered out (i.e., like the BDD discussions as of late), but that is part of the process and what has to happen in such a young industry like ours.&lt;/i&gt; &lt;/font&gt; &lt;/p&gt;&lt;blockquote&gt; &lt;p&gt;&lt;font size="2"&gt;Single-Responsibility Principle (SRP): &lt;/font&gt; &lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;A class should have only one reason to change.&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;font size="2"&gt;A good anti-example is the &lt;/font&gt;&lt;a href="http://en.wikipedia.org/wiki/Active_record_pattern" target="_blank"&gt;&lt;font size="2"&gt;Active Record pattern&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;.&amp;nbsp; This pattern is in contradiction of SRP.&amp;nbsp; A domain entity handles persistence of it&amp;#39;s information. (Note: There is nothing wrong with using Active Record; I&amp;#39;ve recently used it on a quick demo site and it worked perfectly)&amp;nbsp; Normally, you would have a controller method/action pass a &amp;quot;hydrated&amp;quot; entity to a method of a repository instance. &lt;/font&gt; &lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;Like my favorite quote says:&lt;/font&gt; &lt;/p&gt;&lt;blockquote&gt; &lt;p&gt;&lt;font size="2"&gt;Talk is cheap, show me the code ~ Linus Torvalds&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;font size="2"&gt;let&amp;#39;s look at some .NET code.&lt;/font&gt;  &lt;/p&gt;&lt;h4&gt;&lt;b&gt;Anti-SRP (Active Record)&lt;/b&gt;&lt;/h4&gt; &lt;p&gt;&lt;font size="2"&gt;Imagine you have a User entity that has a username and password property.&amp;nbsp; I&amp;#39;m using the Castle Active Record libraries for this example.&lt;/font&gt;&lt;/p&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt; &lt;div style="border-style:none;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   1:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   2:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; Castle.ActiveRecord;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   3:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   4:&lt;/span&gt; &lt;span&gt;namespace&lt;/span&gt; ActiveRecordSample&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   5:&lt;/span&gt; {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   6:&lt;/span&gt;     [ActiveRecord]&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   7:&lt;/span&gt;     &lt;span&gt;public&lt;/span&gt; &lt;span&gt;class&lt;/span&gt; User : ActiveRecordBase&amp;lt;User&amp;gt;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   8:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   9:&lt;/span&gt;         &lt;span&gt;private&lt;/span&gt; &lt;span&gt;int&lt;/span&gt; id;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  10:&lt;/span&gt;         &lt;span&gt;private&lt;/span&gt; &lt;span&gt;string&lt;/span&gt; username;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  11:&lt;/span&gt;         &lt;span&gt;private&lt;/span&gt; &lt;span&gt;string&lt;/span&gt; password;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  12:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  13:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; User()&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  14:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  15:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  16:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  17:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; User(&lt;span&gt;string&lt;/span&gt; username, &lt;span&gt;string&lt;/span&gt; password)&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  18:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  19:&lt;/span&gt;             &lt;span&gt;this&lt;/span&gt;.username = username;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  20:&lt;/span&gt;             &lt;span&gt;this&lt;/span&gt;.password = password;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  21:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  22:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  23:&lt;/span&gt;         [PrimaryKey]&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  24:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; &lt;span&gt;int&lt;/span&gt; Id&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  25:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  26:&lt;/span&gt;             get { &lt;span&gt;return&lt;/span&gt; id; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  27:&lt;/span&gt;             set { id = &lt;span&gt;value&lt;/span&gt;; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  28:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  29:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  30:&lt;/span&gt;         [Property]&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  31:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; &lt;span&gt;string&lt;/span&gt; Username&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  32:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  33:&lt;/span&gt;             get { &lt;span&gt;return&lt;/span&gt; username; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  34:&lt;/span&gt;             set { username = &lt;span&gt;value&lt;/span&gt;; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  35:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  36:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  37:&lt;/span&gt;         [Property]&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  38:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; &lt;span&gt;string&lt;/span&gt; Password&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  39:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  40:&lt;/span&gt;             get { &lt;span&gt;return&lt;/span&gt; password; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  41:&lt;/span&gt;             set { password = &lt;span&gt;value&lt;/span&gt;; }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  42:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  43:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  44:&lt;/span&gt; }&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;h4&gt;&lt;font size="2"&gt;As you can see you use attributes to dictate how your properties map to columns in your database table.&amp;nbsp; Your entity name usually matches your table name, when using just the ActiveRecord attribute with no explicit table name (i.e., [ActiveRecord(&amp;quot;UserTableName&amp;quot;)].&lt;/font&gt;&amp;nbsp; &lt;/h4&gt;
&lt;p&gt;To save the user you would take an instantiated user and just call user.Save();&amp;nbsp; This would cause an update to fire if the user instance had identity (aka an Id) and insert if it did not.&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;Translation to SRP&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;font size="2"&gt;What I would normally do is have an architecture like the following:&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://lostechies.com/blogs/jason_meridth/WindowsLiveWriter/PTOMSingleResponsibilityPrinciple_13E55/image_4.png"&gt;&lt;img src="http://lostechies.com/blogs/jason_meridth/WindowsLiveWriter/PTOMSingleResponsibilityPrinciple_13E55/image_thumb_1.png" style="border:0px none;" alt="image" border="0" height="378" width="542" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;The UserRepository would be used by a web controller (I use monorail for my web projects), being passed a User instance, and Save(user) would be called.&lt;/p&gt;
&lt;div&gt;
&lt;div style="border-style:none;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   1:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; System.Collections.Generic;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   2:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; Castle.MonoRail.Framework;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   3:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; SrpPost.Core;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   4:&lt;/span&gt; &lt;span&gt;using&lt;/span&gt; SrpPost.Data;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   5:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   6:&lt;/span&gt; &lt;span&gt;namespace&lt;/span&gt; SrpPost.Web.Controllers&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   7:&lt;/span&gt; {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;   8:&lt;/span&gt;     [Layout(&lt;span&gt;&amp;quot;default&amp;quot;&lt;/span&gt;), Rescue(&lt;span&gt;&amp;quot;generalerror&amp;quot;&lt;/span&gt;)]&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;   9:&lt;/span&gt;     &lt;span&gt;public&lt;/span&gt; &lt;span&gt;class&lt;/span&gt; UserController : SmartDispatcherController&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  10:&lt;/span&gt;     {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  11:&lt;/span&gt;         &lt;span&gt;private&lt;/span&gt; &lt;span&gt;readonly&lt;/span&gt; IUserRepository userRepository;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  12:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  13:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; UserController(IUserRepository userRepository)&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  14:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  15:&lt;/span&gt;             &lt;span&gt;this&lt;/span&gt;.userRepository = userRepository;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  16:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  17:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  18:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; &lt;span&gt;void&lt;/span&gt; Index()&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  19:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  20:&lt;/span&gt;             RenderView(&lt;span&gt;&amp;quot;userlist&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  21:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  22:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  23:&lt;/span&gt;         &lt;span&gt;public&lt;/span&gt; &lt;span&gt;void&lt;/span&gt; Save([DataBind(&lt;span&gt;&amp;quot;user&amp;quot;&lt;/span&gt;, Validate = &lt;span&gt;true&lt;/span&gt;)] User user)&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  24:&lt;/span&gt;         {&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  25:&lt;/span&gt;             userRepository.Save(user);&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  26:&lt;/span&gt;             Flash[&lt;span&gt;&amp;quot;LoginError&amp;quot;&lt;/span&gt;] = &lt;span&gt;&amp;quot;User saved successfully.&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  27:&lt;/span&gt;             RenderView(&lt;span&gt;&amp;quot;userlist&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  28:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;background-color:white;"&gt;&lt;span&gt;  29:&lt;/span&gt;     }&lt;/pre&gt;&lt;pre style="border-style:none;margin:0em;padding:0px;overflow:visible;font-size:8pt;width:100%;color:black;line-height:12pt;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;"&gt;&lt;span&gt;  30:&lt;/span&gt; }&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;So, what it boils down to is that the user class now knows nothing on how it is persisted to the database.&lt;/p&gt;
&lt;p&gt;SRP is one of the hardest principles to enforce because there is always room for refactoring out one class to multiple; each class has one responsibility.&amp;nbsp; It is personal preference because class explosion does cause some people to become code zealots.&amp;nbsp; One of my other favorite quotes lately is:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Always code as if the guy maintaining your code would be a violent psychopath and he knows where you live.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=2492" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=TvFcRJF"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=TvFcRJF" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=uIGczZF"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=uIGczZF" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=ERCumif"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=ERCumif" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=0BlYY7F"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=0BlYY7F" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/jasonmeridth?a=3kKlNif"&gt;&lt;img src="http://feeds.feedburner.com/~f/jasonmeridth?i=3kKlNif" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/castle/default.aspx">castle</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/monorail/default.aspx">monorail</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/Agile/default.aspx">Agile</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/principles/default.aspx">principles</category><category domain="http://www.lostechies.com/blogs/jason_meridth/archive/tags/SOLID/default.aspx">SOLID</category><feedburner:origLink>http://www.lostechies.com/blogs/jason_meridth/archive/2008/03/29/ptom-single-responsibility-principle.aspx</feedburner:origLink></item></channel></rss>
