<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.lostechies.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" 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/"><channel><title>joeyDotNet</title><link>http://www.lostechies.com/blogs/joeydotnet/default.aspx</link><description>Doing business until He comes or calls -- Luke 19:13</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 (Build: 30929.2835)</generator><item><title>Looking for some awesome .NET developers (work from home)</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/09/26/looking-for-some-awesome-net-developers-work-from-home.aspx</link><pubDate>Fri, 26 Sep 2008 18:49:22 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:5171</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=5171</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/09/26/looking-for-some-awesome-net-developers-work-from-home.aspx#comments</comments><description>&lt;p&gt;Are you:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;an experienced and passionate .NET developer  &lt;li&gt;looking to join a profitable and growing company who creates software solutions for a niche industry that is booming despite the current economy  &lt;li&gt;wanting to work from home &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Excerpts from our &lt;a href="http://www.careerbuilder.com/JobSeeker/Jobs/JobDetails.aspx?job_did=J8H26J65BJ33RS3SZF6&amp;amp;cbRecursionCnt=1&amp;amp;cbsid=28f33a8393f5495e8119cca9609c29cd-275741196-wf-6" target="_blank"&gt;job posting&lt;/a&gt;:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;strong&gt;Company: &lt;/strong&gt;&lt;br /&gt;TrackAbout, Inc. &lt;br /&gt;&lt;a href="http://www.trackabout.com"&gt;www.trackabout.com&lt;/a&gt;&lt;/p&gt; &lt;p&gt;TrackAbout is a small, profitable and growing software company that provides Software as a Service (SaaS) asset tracking services through the combination of a hosted web platform and various mobile devices that run our custom software. We have a solid, international customer base, are experiencing high demand for our services and are looking at exciting times ahead. We are looking for an &lt;strong&gt;exceptional and experienced &lt;/strong&gt;developer who is interested in playing a pivotal role in the growth of a small company. If you’re truly passionate about technology, we want to talk to you.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Location:&lt;/strong&gt; &lt;br /&gt;TrackAbout&amp;#39;s main office is just outside of Pittsburgh, PA.&amp;nbsp; However, our development staff is completely virtual (no office) and each developer works from home.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Position Details: &lt;/strong&gt;&lt;br /&gt;We&amp;#39;re seeking a full-time developer (no contractors please) with a minimum of 5 years of experience in web development, object-oriented programming and relational database programming. Agile experience is a plus.&amp;nbsp; You&amp;#39;ll be working on all aspects of the TrackAbout offering including our ASP.NET website and web services, MS SQL Server 2005 and various wireless mobile devices.&lt;/p&gt; &lt;p&gt;Your responsibilities will include architecting, designing and building new features, enhancing existing features, and fixing bugs. On occasion, you may be asked to provide second-tier technical customer support for requests that require deeper technical skills than our first-tier support engineers can handle.&lt;/p&gt; &lt;p&gt;All members of our development team are dedicated to keeping up with the latest techniques, technologies and tools related to software development. We take time out to share our knowledge with one another and improve both our skills and our distributed development environment. We often experiment with and integrate new tools into our environment. We use ReSharper, CruiseControl.NET, TDD with NUnit, FXCop, NCover, Bugzilla, and Drupal to supplement our development efforts.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;So if you&amp;#39;re interested and want to come help me sling some code, check out the &lt;a href="http://www.careerbuilder.com/JobSeeker/Jobs/JobDetails.aspx?job_did=J8H26J65BJ33RS3SZF6&amp;amp;cbRecursionCnt=1&amp;amp;cbsid=28f33a8393f5495e8119cca9609c29cd-275741196-wf-6" target="_blank"&gt;full job posting&lt;/a&gt; and reply there.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=5171" width="1" height="1"&gt;</description></item><item><title>MVC - Free Yourself from Web Forms!</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/09/05/mvc-free-yourself-from-web-forms.aspx</link><pubDate>Fri, 05 Sep 2008 14:13:41 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:4834</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=4834</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/09/05/mvc-free-yourself-from-web-forms.aspx#comments</comments><description>&lt;p&gt;Thanks to all who came out last night to hear my talk on MVC at the &lt;a href="http://richmonddotnet.org" target="_blank"&gt;Richmond .NET User Group&lt;/a&gt;.&amp;nbsp; It was a blast.&amp;nbsp; I wish we had more time to dig into some more code, but maybe next time.&amp;nbsp; 90 minutes flies by!&lt;/p&gt; &lt;p&gt;As promised, here are the &lt;a href="http://joeydotnet.com/blogattachments/MVC_FreeYourselfFromWebForms.pptx" target="_blank"&gt;slides from the presentation&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=4834" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/presentations/default.aspx">presentations</category></item><item><title>How did I get started in software development?</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/06/27/how-did-i-get-started-in-software-development.aspx</link><pubDate>Fri, 27 Jun 2008 05:06:58 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:3881</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=3881</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/06/27/how-did-i-get-started-in-software-development.aspx#comments</comments><description>&lt;p&gt;Well apparently &lt;a href="http://devlicio.us/blogs/derik_whittaker/default.aspx"&gt;Derik&lt;/a&gt; is trying to bring me out of my blogging hiatus by &lt;a href="http://devlicio.us/blogs/derik_whittaker/archive/2008/06/24/how-did-i-get-started-in-software-development.aspx"&gt;tagging me&lt;/a&gt; with the meme of the week.&amp;nbsp; :)&amp;nbsp; My story is pretty boring, but I&amp;#39;ll play along in an effort to bring me out of my recent break from the blogosphere.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;How old were you when you started programming?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I suppose I was 14 (9th grade) when I first started dabbling on an Apple IIe with all the joys of line numbers and &amp;quot;gotos&amp;quot;.&amp;nbsp; I enjoyed it but I definitely wasn&amp;#39;t as smart as the kid who created a program to generate one of those &amp;quot;magic eye&amp;quot; pictures that were all the rage at the time.&amp;nbsp; Besides, I was a band geek for most of my high school days (drums).&lt;/p&gt; &lt;p&gt;&lt;strong&gt;What was your first language?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I guess technically Apple Basic and QBasic were my first languages where I would mess with my Mom by writing stupid little QBasic programs to simulate her computer exploding.&amp;nbsp; Ahh, those were the days.&amp;nbsp; But I would probably say that my Pascal class in 11th grade was where I really started to learn how to create stuff and solve problems by typing &amp;quot;codes&amp;quot; into some crazy thing called a &amp;quot;computer&amp;quot;.&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;What was the first real program you wrote?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Probably the first &amp;quot;real&amp;quot; program I ever wrote was a Pick 3 lottery program in my Pascal class followed later by a standard 5 card draw poker game, with stunning graphics!&amp;nbsp; :)&amp;nbsp; Looking back, I&amp;#39;m not sure if those were assigned projects or if I came up with those on my own, but regardless, either the school was encouraging the students to write gambling software or I had some weird attraction to writing software that could possibly ruin people&amp;#39;s lives.&amp;nbsp; Both equally disturbing... LOL.&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;If you knew then what you know now, would you have started programming?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Oh yeah.&amp;nbsp; I actually started my &amp;quot;professional&amp;quot; career on the hardware/networking side of things but ultimately I always knew I was a codemonkey at heart and eventually moved in that direction professionally.&amp;nbsp; Besides, the money is a heck of a lot better too.&amp;nbsp; :)&lt;/p&gt; &lt;p&gt;&lt;strong&gt;If there is one thing you learned along the way that you would tell new developers, what would it be?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;So, what&amp;#39;s my size limit for this answer?&amp;nbsp; :D&lt;/p&gt; &lt;p&gt;Well of course I&amp;#39;d say to have fun and be passionate and all that jazz.&amp;nbsp; To me, that&amp;#39;s just a given.&amp;nbsp; But also to focus on &lt;a href="http://codebetter.com/blogs/karlseguin/archive/2008/06/24/foundations-of-programming-ebook.aspx"&gt;the fundamentals&lt;/a&gt;.&amp;nbsp; Learn *why* it&amp;#39;s important to make testability and maintainability a first-level concern when building software.&amp;nbsp; Get started in the community early because you&amp;#39;ll make some great friends and learn a ton along the way.&amp;nbsp; I could say a ton more, but I don&amp;#39;t think the internet could hold them all.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;What&amp;#39;s the most fun you&amp;#39;ve ever had ... programming?&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Not sure I can pinpoint a single time, but the times I&amp;#39;ve been able to do some greenfield projects and make testability a first-class citizen in the design, I&amp;#39;ve been very happy with the results.&amp;nbsp; Also the journey towards &amp;quot;beautiful code&amp;quot; is something that I enjoy very much.&amp;nbsp; Getting creative and coming up with new and useful ways of wiring something together or even just naming a method well is enough to make me happy.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Recently, I&amp;#39;d say that my brief stint in the Rails world (not professionally) was the most fun I&amp;#39;ve had coding in quite a while.&amp;nbsp; Perhaps that&amp;#39;s why I&amp;#39;m getting the Ruby itch again.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;The poor saps that I&amp;#39;m tagging?&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://agilejoe.lostechies.com"&gt;Joe Ocampo&lt;/a&gt;  &lt;li&gt;&lt;a href="http://jason.lostechies.com"&gt;Jason Meridth&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.refreshinglyblue.com"&gt;Lee Blue&lt;/a&gt;  &lt;li&gt;&lt;a href="http://blog.softwareishardwork.com/"&gt;Daniel Bullington&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=3881" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/personal/default.aspx">personal</category></item><item><title>Change I can achieve in</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/03/04/change-i-can-achieve-in.aspx</link><pubDate>Wed, 05 Mar 2008 03:21:10 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:2261</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=2261</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/03/04/change-i-can-achieve-in.aspx#comments</comments><description>&lt;p&gt;Well, this post is more of the personal variety, but it may affect future posts in one way or another (however, &lt;a href="http://lostechies.com/blogs/sean_chambers/archive/2008/02/26/what-happened-to-you-ve-been-haacked.aspx"&gt;not like this&lt;/a&gt;).&amp;nbsp; In short, a season of change is upon me.&lt;/p&gt; &lt;p&gt;&lt;img style="margin:0px 0px 0px 10px;" src="http://joeydotnet.com/images/fall_change.jpg" align="right" alt="" /&gt; &lt;/p&gt; &lt;p&gt;Big change #1.&amp;nbsp; I&amp;#39;m getting out of the consulting world for a while.&amp;nbsp; It&amp;#39;s been grand and I&amp;#39;ve learned a ton about people, business and technology.&amp;nbsp; But I felt it was time for something different.&amp;nbsp; Because of the types of consulting firms I&amp;#39;ve worked with the past 3 years, the one thing I haven&amp;#39;t liked is that I never got to work on a team long enough to really get to know the folks I was working with very well.&amp;nbsp; Seems like just when my team and I were really getting productive together, we&amp;#39;d all get thrown to different projects, usually with folks we hadn&amp;#39;t worked with before.&amp;nbsp; Obviously some of this has to do with the nature of consulting in general, but I&amp;#39;m sure some firms see the value in keeping teams together as much as possible than others.&lt;/p&gt; &lt;p&gt;Big change #2.&amp;nbsp; Like &lt;a href="http://lostechies.com/blogs/chad_myers/archive/2008/03/03/ping-pong-pairing-it-s-not-just-for-breakfast-anymore.aspx"&gt;Chad&lt;/a&gt;, I also started a new job this week, for a great product company.&amp;nbsp; The company is small, which I really like, especially when talking about small development teams.&amp;nbsp; I&amp;#39;m hoping to learn a lot (drinking from the firehose this week) and be a good contributor along side the other couple developers on the team.&amp;nbsp; It&amp;#39;s an interesting product with some pretty unique challenges to tackle, from what I&amp;#39;ve seen so far.&amp;nbsp; I&amp;#39;ll be doing mostly ASP.NET work, with maybe a little mobile device stuff thrown in for good measure.&lt;/p&gt; &lt;p&gt;Big change #3.&amp;nbsp; I&amp;#39;m joining the world of &lt;a href="http://webworkerdaily.com/"&gt;web workers&lt;/a&gt;!&amp;nbsp; Yep, I&amp;#39;m now working from home exclusively.&amp;nbsp; This might be the biggest change for me in all of this, but I&amp;#39;m very much looking forward to adapting to this type of lifestyle/work environment.&amp;nbsp; I&amp;#39;m sure I&amp;#39;ll have some things to learn, specifically about how to keep things balanced, but so far it&amp;#39;s been enjoyable.&amp;nbsp; Not to mention, it&amp;#39;ll help me kick the &amp;quot;eating out&amp;quot; habit that I was stuck in during my traditional office jobs.&amp;nbsp; :O&lt;/p&gt; &lt;p&gt;So far I&amp;#39;m finding that my reliance on tools like &lt;a href="http://www.pidgin.im/"&gt;IM&lt;/a&gt;, &lt;a href="http://www.skype.com/"&gt;Skype&lt;/a&gt; and &lt;a href="http://connect.microsoft.com/site/sitehome.aspx?SiteID=94"&gt;SharedView&lt;/a&gt; (which is pretty decent) just grew exponentially.&amp;nbsp; I&amp;#39;m looking forward to possibly trying out some &lt;a href="http://www.lostechies.com/blogs/jason_meridth/archive/2007/09/17/skype-yugma-logitech-premium-usb-headset-350-remote-pair-programming.aspx"&gt;remote pairing&lt;/a&gt; as soon as I get settled.&lt;/p&gt; &lt;p&gt;To make this post at least somewhat productive, here are a couple tools and a bonus tip that I&amp;#39;ve been introduced to over the past couple days that you may find useful.&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://pidgin-encrypt.sourceforge.net/"&gt;Pidgin-Encryption&lt;/a&gt; (for...umm...encryption)  &lt;li&gt;&lt;a href="https://secure.logmein.com/products/hamachi/vpn.asp"&gt;Hamachi&lt;/a&gt; (really nice and free VPN software)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Bonus Tip: I&amp;#39;ve been a huge Pidgin fan ever since it had that weird Gaim name.&amp;nbsp; I use it for everything.&amp;nbsp; AIM, Yahoo, GTalk, IRC, Twitter.&amp;nbsp; One tip that I learned today is how to set up Pidgin to &amp;quot;auto join&amp;quot; you to a particular IRC channel as soon as you login into Pidgin.&amp;nbsp; Here&amp;#39;s how to do it...&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Click Buddies &amp;gt; Add Chat  &lt;li&gt;Choose your IRC account/server from the Account drop-down  &lt;li&gt;Type the name of the channel you want to join  &lt;li&gt;Give the chat an alias (I just used the channel name)  &lt;li&gt;Click Add  &lt;li&gt;Now find that new chat in your list of buddies, Right-Click &amp;gt; Auto-join  &lt;li&gt;That&amp;#39;s it!&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;So now when you fire up Pidgin, it&amp;#39;ll automatically join you to that room.&amp;nbsp; Most of you may already know about this, but I thought it was pretty cool.&lt;/p&gt; &lt;p&gt;Anyway, until next time.&amp;nbsp; I have a lot of things to blog about in the hopper.&amp;nbsp; Hopefully I can get around to them sometime soon.&amp;nbsp; *sigh*&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=2261" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/tools/default.aspx">tools</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/personal/default.aspx">personal</category></item><item><title>Scribbish Skin - For Subtext</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/10/scribbish-skin-for-subtext.aspx</link><pubDate>Mon, 11 Feb 2008 03:20:04 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1991</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1991</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/10/scribbish-skin-for-subtext.aspx#comments</comments><description>&lt;p&gt;This is long overdue, but &lt;a href="http://developernotes.com/"&gt;Nick Parker&lt;/a&gt; asked me a long time ago (sorry Nick) where I got the skin I use for my (joeyDotNet.com) blog and I told him I&amp;#39;d make it available.&amp;nbsp; I actually ported it myself from the existing &lt;a href="http://quotedprintable.com/pages/scribbish"&gt;Scribbish theme&lt;/a&gt; that was already available for Mephisto, Wordpress and others.&amp;nbsp; I really liked the simplicity of it so I just grabbed the CSS and hacked away at it myself until I got it looking close enough as a &lt;a href="http://subtextproject.com/"&gt;Subtext&lt;/a&gt; skin.&lt;/p&gt; &lt;p&gt;I submitted it to the &lt;a href="http://subtextskins.com/"&gt;Subtext skins showcase&lt;/a&gt;, but it may take a bit for it to get approved.&amp;nbsp; So for now, you can just &lt;a href="http://joeydotnet.com/blogattachments/scribbish.zip"&gt;download it from here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I kind of put this together in a hurry, so please let me know if you find any problems with it.&lt;/p&gt; &lt;p&gt;Enjoy!&amp;nbsp; :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1991" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/web/default.aspx">web</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/blogging/default.aspx">blogging</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/subtext/default.aspx">subtext</category></item><item><title>ActiveSupport.NET - Namespace Overhaul</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/08/activesupport-net-namespace-overhaul.aspx</link><pubDate>Sat, 09 Feb 2008 05:01:45 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1984</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1984</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/08/activesupport-net-namespace-overhaul.aspx#comments</comments><description>&lt;p&gt;Figured I&amp;#39;d try and get this nailed down as early as possible.&amp;nbsp; So after some recent feedback, I decided to change the namespacing so that it focused more on &amp;quot;behavior/concern&amp;quot; rather than &amp;quot;types&amp;quot;.&amp;nbsp; What this means is...&lt;/p&gt; &lt;p&gt;Instead of:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;using ActiveSupport.Core.Extensions.String;&amp;nbsp; // containing string extensions for access, conversions, etc.  &lt;li&gt;using ActiveSupport.Core.Extensions.Integer;&amp;nbsp; // containing integer extensions for access, inflections, etc.  &lt;li&gt;... &lt;/li&gt;&lt;/ul&gt; &lt;blockquote&gt; &lt;p&gt;It&amp;#39;s now just this:&lt;/p&gt;&lt;/blockquote&gt; &lt;ul&gt; &lt;li&gt;using ActiveSupport;&amp;nbsp; // just basic extensions  &lt;li&gt;using ActiveSupport.Access // all accessor-based extensions for ALL types  &lt;li&gt;using ActiveSupport.Conversions // all conversion-based extensions for ALL types  &lt;li&gt;... &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I&amp;#39;m pretty much thinking the accessor based stuff will probably get used the most.&amp;nbsp; But either way, by grouping this way, I&amp;#39;m hoping they&amp;#39;ll be a bit easier use.&amp;nbsp; And of course when our R# 4.0 EAP shows up next (right &lt;a href="http://resharper.blogspot.com/"&gt;Ilya&lt;/a&gt;? :) all of this namespace&amp;#39;ry will must magically work for us.&amp;nbsp; :)&lt;/p&gt; &lt;p&gt;What do you think?&amp;nbsp; Is this a better approach to keeping things clean and organized?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1984" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/c_2300_/default.aspx">c#</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/activesupport.net/default.aspx">activesupport.net</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/projects/default.aspx">projects</category></item><item><title>ActiveSupport.NET - Update</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/08/activesupport-net-update.aspx</link><pubDate>Fri, 08 Feb 2008 18:59:17 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1981</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1981</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/08/activesupport-net-update.aspx#comments</comments><description>&lt;p&gt;So it seems there is some interest in getting something like this up and running.&amp;nbsp; I went ahead and did some of the basic &amp;quot;project setup&amp;quot; type tasks.&amp;nbsp; Here are some links of interest...&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://activesupportnet.googlecode.com"&gt;ActiveSupport.NET Google Code Project&lt;/a&gt;  &lt;li&gt;&lt;a href="http://groups.google.com/group/activesupportnet-discuss"&gt;ActiveSupport.NET.Discuss&lt;/a&gt; (general)  &lt;li&gt;&lt;a href="http://groups.google.com/group/activesupportnet-developers"&gt;ActiveSupport.NET.Developers&lt;/a&gt; (for future use once we have some a group of committers) &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I look forward to some more discussions about the best way to structure things to make it easy to use.&amp;nbsp; On the google code project site you&amp;#39;ll find a brief description of the project as well as a wiki page I&amp;#39;ve started to give some basic info on how the code base is structured (tools, build targets, etc...).&amp;nbsp; I&amp;#39;m sure all of this will change/evolve as things progress.&lt;/p&gt; &lt;p&gt;And thanks &lt;a href="http://blog.joelowrance.com/Default.aspx"&gt;Joe&lt;/a&gt; (for already submitting the first patch) and others that have said they want to get involved.&amp;nbsp; Should be fun...&amp;nbsp; :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1981" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/c_2300_/default.aspx">c#</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/activesupport.net/default.aspx">activesupport.net</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/projects/default.aspx">projects</category></item><item><title>Introducing ActiveSupport.NET</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/07/introducing-activesupport-net.aspx</link><pubDate>Thu, 07 Feb 2008 20:20:52 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1972</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1972</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/02/07/introducing-activesupport-net.aspx#comments</comments><description>&lt;p&gt;To my surprise, none of my googling seemed to come up with anyone doing this.&amp;nbsp; So I figured I&amp;#39;d start it off (please let me know if you know of any other efforts already underway).&amp;nbsp; As some would say, taking &lt;a href="http://codebetter.com/blogs/david.hayden/archive/2007/03/28/Extension-Methods-in-C_2300_-3.0-_2D00_-Shiny-New-Hammer-Looking-for-a-Nail-_3A002900_.aspx"&gt;extension method abuse&lt;/a&gt; to a whole new level.&amp;nbsp; :D&amp;nbsp; But, I see these little utility methods to be a good fit as extensions methods to make the syntactic sugar that much sweeter.&lt;/p&gt; &lt;p&gt;One of the many great things about working in Rails is the core extensions in the &lt;a href="http://api.rubyonrails.org/"&gt;ActiveSupport&lt;/a&gt; library.&amp;nbsp; It just *becomes* part of the Ruby language as you work with Rails.&amp;nbsp; And I wanted to get that same feeling when working in C#.&amp;nbsp; So this is my attempt to start porting over the core extensions from Ruby&amp;#39;s ActiveSupport Library.&lt;/p&gt; &lt;p&gt;So far I&amp;#39;ve just ported over a few string access and conversion extensions, but check &amp;#39;em out and let me know if you&amp;#39;d find something like this to be useful.&amp;nbsp; Here are some examples of what&amp;#39;s currently supported...&lt;/p&gt; &lt;div style="border-right:gray 1px solid;padding-right:4px;border-top:gray 1px solid;padding-left:4px;font-size:8pt;padding-bottom:4px;margin:20px 0px 10px;overflow:auto;border-left:gray 1px solid;width:97.5%;cursor:text;max-height:200px;line-height:12pt;padding-top:4px;border-bottom:gray 1px solid;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;background-color:#f4f4f4;"&gt; &lt;div style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 1:&lt;/span&gt; &lt;span style="color:#008000;"&gt;// some accessors&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 2:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.At(2) &lt;span style="color:#008000;"&gt;// &amp;#39;a&amp;#39;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 3:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.First() &lt;span style="color:#008000;"&gt;// &amp;#39;b&amp;#39;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 4:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.First(2) &lt;span style="color:#008000;"&gt;// &amp;quot;bl&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 5:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.From(1) &lt;span style="color:#008000;"&gt;// &amp;quot;lah&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 6:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.Last() &lt;span style="color:#008000;"&gt;// &amp;#39;h&amp;#39;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 7:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.Last(2) &lt;span style="color:#008000;"&gt;// &amp;quot;ah&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 8:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;blah&amp;quot;&lt;/span&gt;.To(2) &lt;span style="color:#008000;"&gt;// &amp;quot;bla&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 9:&lt;/span&gt;&amp;nbsp; &lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 10:&lt;/span&gt; &lt;span style="color:#008000;"&gt;// couple simple conversions (still needs lots of work)&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 11:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;1/4/2008&amp;quot;&lt;/span&gt;.ToDate() &lt;span style="color:#008000;"&gt;// DateTime&lt;/span&gt;&lt;/pre&gt;&lt;pre style="padding-right:0px;padding-left:0px;font-size:8pt;padding-bottom:0px;margin:0em;overflow:visible;width:100%;color:black;border-top-style:none;line-height:12pt;padding-top:0px;font-family:consolas, &amp;#39;Courier New&amp;#39;, courier, monospace;border-right-style:none;border-left-style:none;background-color:#f4f4f4;border-bottom-style:none;"&gt;&lt;span style="color:#606060;"&gt; 12:&lt;/span&gt; &lt;span style="color:#006080;"&gt;&amp;quot;01:15:35&amp;quot;&lt;/span&gt;.ToTime() &lt;span style="color:#008000;"&gt;// DateTime&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;You can grab the source at its &lt;a href="http://code.google.com/p/activesupportnet/source/checkout"&gt;google code repository&lt;/a&gt;.&amp;nbsp; You can just do a &amp;quot;build test&amp;quot; from a command line in the trunk to run the unit test suite.&lt;/p&gt;
&lt;p&gt;Enjoy.&amp;nbsp; :-)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1972" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/c_2300_/default.aspx">c#</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/ruby/default.aspx">ruby</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/rails/default.aspx">rails</category></item><item><title>CIFactory.Create(RichmondDNUG);</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/01/10/cifactory-create-richmonddnug.aspx</link><pubDate>Fri, 11 Jan 2008 03:32:09 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1768</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1768</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/01/10/cifactory-create-richmonddnug.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://jayflowers.com/"&gt;Jay Flowers&lt;/a&gt; came down to our humble &lt;a href="http://richmonddotnet.org/"&gt;Richmond DNUG&lt;/a&gt; tonight to talk about Continuous Integration and his rockin&amp;#39; open-source product, &lt;a href="http://jayflowers.com/WordPress/?p=201"&gt;CI Factory&lt;/a&gt;.&amp;nbsp; It was a great demonstration of how to get a very robust automated build server up and running in literally minutes.&amp;nbsp; Having set up quite a few automated build and CI environments myself over the years, I have a great appreciation for all the hard work that&amp;#39;s gone into a product like CI Factory.&amp;nbsp; &lt;/p&gt; &lt;p&gt;So I&amp;#39;m looking forward to leveraging CI Factory in my future CI server implementations (which will hopefully be soon!)&lt;/p&gt; &lt;p&gt;Oh and some of the cool stuff he&amp;#39;s done in extending CCNet and NAnt was pretty impressive as well.&amp;nbsp; Not to mention the extension of NCover to drive and generate code coverage for WatiN tests.&lt;/p&gt; &lt;p&gt;So if you need CI (and trust me, you do), then &lt;a href="http://jayflowers.com/WordPress/?p=201"&gt;download CI Factory&lt;/a&gt; and check it out.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1768" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/richmond+dnug/default.aspx">richmond dnug</category></item><item><title>I Do What?</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2008/01/06/i-do-what.aspx</link><pubDate>Sun, 06 Jan 2008 06:25:14 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1680</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1680</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2008/01/06/i-do-what.aspx#comments</comments><description>&lt;p&gt;Ok, so I know I&amp;#39;m crazy late on this one, but things have been a bit hectic recently.&amp;nbsp; And I&amp;#39;m not even talking about holidays.&amp;nbsp; But since our &lt;a href="http://www.lostechies.com/blogs/chad_myers/archive/2008/01/05/what-i-do-with-spoilers.aspx"&gt;newly knighted member at LosTechies&lt;/a&gt; has chimed in, I guess it&amp;#39;s about time I did too in response to &lt;a href="http://www.lostechies.com/blogs/jason_meridth/archive/2007/12/20/what-i-do.aspx"&gt;Jason&lt;/a&gt; tagging me.&lt;/p&gt; &lt;h4&gt;A Little History&lt;/h4&gt; &lt;p&gt;Yeah, I know.&amp;nbsp; I always hated history in school too, but bear with me.&amp;nbsp; I&amp;#39;ll just give a brief (hopefully) paragraph on the past couple years to help illustrate what I&amp;#39;m currently doing and why.&amp;nbsp; &lt;/p&gt; &lt;p&gt;It&amp;#39;s April &amp;#39;05 and I&amp;#39;ve got a really good corporate job as a lone software developer managing and building intranet-based ASP.NET web applications.&amp;nbsp; Decent salary, great benefits, short commute, generally low-stress.&amp;nbsp; Well, I had pretty much hit the &amp;quot;technical&amp;quot; glass ceiling (not wanting the &amp;quot;management&amp;quot; track) and had the desire to work with teams of other, more experienced, developers.&amp;nbsp; So I took a pay cut to go work for a small, but well established software consulting firm in May &amp;#39;05.&amp;nbsp; (BTW, make sure you always factor in health insurance costs when weighing a decision like this.&amp;nbsp; That was stupid mistake #1 which ended up costing me dearly.)&lt;/p&gt; &lt;p&gt;So there I was in the consulting game and learning and growing by leaps and bounds.&amp;nbsp; I had already long embraced OSS as a viable alternative to the Redmond standard.&amp;nbsp; Which made for some interesting internal debates and experiences considering they were a &amp;quot;Microsoft Certified Managed Gold Partner&amp;quot;.&amp;nbsp; Anywho, I cranked away at various internal and external client projects for a couple years, getting to work with some great folks including my boys &lt;a href="http://blog.softwareishardwork.com/"&gt;DP Bullington&lt;/a&gt; and &lt;a href="http://codebetter.com/blogs/paul.laudeman/default.aspx"&gt;Paul Laudeman&lt;/a&gt;.&amp;nbsp; With their help, I tried to help introduce some agile engineering practices onto our projects (TDD, CI, DDD, etc.).&amp;nbsp; We all spent a year on-site with a particular client trying to introduce Scrum on 4 projects simultaneously, which turned out to be quite a mess, and in my opinion, an overall failure.&amp;nbsp; I mostly attribute that to poor leadership and lack of experience on &lt;strike&gt;our&lt;/strike&gt; my part (only speaking for myself).&amp;nbsp; Nevertheless, in the 2 years I worked at that consulting firm I learned a TON technically, but more importantly, personally in how to deal with people and some of the ins and outs of the software consulting business in general.&lt;/p&gt; &lt;p&gt;Ok, so maybe that wasn&amp;#39;t as brief as I thought.&amp;nbsp; Sorry.&lt;/p&gt; &lt;h4&gt;Here And Now&lt;/h4&gt; &lt;p&gt;So, ironically, in April of &amp;#39;07 I found myself once again at a kind of crossroads.&amp;nbsp; After a year of spending ~2 hours a day on the road back and forth from the last client for which I worked, along with the fact that I was just generally not happy with how things were going, I accepted an offer from another, much larger, consulting firm.&amp;nbsp; This new firm, which, among other things, had much better benefits, shorter commute and was a &amp;quot;hybrid&amp;quot; shop (unlike the previous firm, which was &lt;a href="http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;time=&amp;amp;date=&amp;amp;ttype=&amp;amp;q=1+microsoft+way&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=44.339735,72.246094&amp;amp;ie=UTF8&amp;amp;z=16&amp;amp;iwloc=addr&amp;amp;om=1"&gt;1 Microsoft Way&lt;/a&gt; or the Highway).&amp;nbsp; So overall, I felt pretty good about the move.&lt;/p&gt; &lt;p&gt;As I&amp;#39;ve continued down this path as a software consultant, I&amp;#39;ve grown more and more passionate about delivering quality, maintainable software to clients.&amp;nbsp; I know, who would disagree with that, right?&amp;nbsp; Well, in words, probably no one.&amp;nbsp; But in deeds and practices, that&amp;#39;s another story.&amp;nbsp; Suffice it to say, I&amp;#39;m continuing to try and raise the bar, both for myself and for those I work with to ensure that we are &lt;strong&gt;serving&lt;/strong&gt; our clients in the best way we know how.&amp;nbsp; Which is by giving them solutions that benefit the business and that &lt;strong&gt;don&amp;#39;t break &lt;/strong&gt;and doing so &lt;strong&gt;without working crazy amounts of hours&lt;/strong&gt;.&amp;nbsp; Sometimes I wonder if I take my job as a consultant too seriously, which is perhaps due to my passion for the craft of building software.&lt;/p&gt; &lt;h4&gt;What&amp;#39;s Next?&lt;/h4&gt; &lt;p&gt;Well, so far, I&amp;#39;m finding Richmond to always be playing catch up with some of the other markets like &lt;a href="http://codebetter.com/blogs/jeremy.miller/archive/2008/01/01/new-year-new-challenges-and-an-mvp.aspx"&gt;Austin&lt;/a&gt;, Calgary and &lt;a href="http://www.phillyalt.net/Default.aspx?AspxAutoDetectCookieSupport=1"&gt;Philly&lt;/a&gt; with regards to adopting a more lean development process and engineering practices.&amp;nbsp; But this is where the Lord has us right now and that&amp;#39;s all I need to know.&amp;nbsp; I am looking to possibly start accepting some presentation opportunities, first internally at my current firm and also at Code Camps, DNUG meetings and &lt;a href="http://joeydotnet.com/blog/archive/2007/12/08/monorail-quickly---screencast.aspx"&gt;screencasts&lt;/a&gt;.&amp;nbsp; I&amp;#39;m still new to all of this, but hopefully the more I do it...well...you know.&lt;/p&gt; &lt;p&gt;Oh, almost forgot to mention my recent interest in Ruby (and of course Rails).&amp;nbsp; I was really fired up a few months ago and even started &lt;a href="http://joeydotnet.com/blog/archive/2007/09/13/agile-web-development-with-rails---chapter-1.aspx"&gt;&amp;quot;chapter blogging&amp;quot;&lt;/a&gt; my way through my first Rails book.&amp;nbsp; Unfortunately, that was somewhat quenched by my work load at the &amp;quot;day job&amp;quot;.&amp;nbsp; I still have an iron in the Ruby fire, and am hoping to get that ramped back up again soon.&amp;nbsp; Along with helping to build the LosTechies community and possibly help out on an OSS project or two.&amp;nbsp; Yeah, not sure where I&amp;#39;ll find the time.&lt;/p&gt; &lt;p&gt;On a side note, I&amp;#39;m hoping to start distancing myself away from the &amp;quot;dotnet&amp;quot; part of my persona, if you will, of &amp;quot;joeyDotNet&amp;quot;.&amp;nbsp; Mainly because I believe in choosing the best tool for the job at hand and sticking my name to a particular technology was probably a naive move on my part in the first place.&amp;nbsp; Anyone have any thoughts on how to actually go about doing something like this?&lt;/p&gt; &lt;h4&gt;Tools Of The Trade&lt;/h4&gt; &lt;p&gt;Looks like other folks are listing out some of the tools they use.&amp;nbsp; Well, of course, &lt;a href="http://blogs.jetbrains.com/dotnet/"&gt;ReSharper&lt;/a&gt; has to be at the very top of my list.&amp;nbsp; I honestly will NOT use VS without it.&amp;nbsp; And you probably already know of my fondness of MonoRail which I&amp;#39;ve used for almost a couple years (I think) on various projects, back when ASP.NET MVC still meant &lt;strong&gt;M&lt;/strong&gt;ake &lt;strong&gt;V&lt;/strong&gt;iews &lt;strong&gt;C&lt;/strong&gt;hief (Which sadly, most legacy projects I have to work on still embrace).&amp;nbsp; Of course others like MbUnit, Rhino Mocks, Windsor, TDD.NET and NAnt are also important tools in my box of goodies.&lt;/p&gt; &lt;h4&gt;Wrap It Up, Will Ya? *yawn*&lt;/h4&gt; &lt;p&gt;Ok, so that&amp;#39;s probably more about me than you ever wanted to know.&amp;nbsp; But if you want to contact me regarding presentations, work, or just to say hey, you can find me here as well as &lt;a href="http://www.linkedin.com/in/joeybeninghove"&gt;LinkedIn&lt;/a&gt;, &lt;a href="http://www.facebook.com/profile.php?id=545364441"&gt;Facebook&lt;/a&gt; and occasionally &lt;a href="http://twitter.com/joeybeninghove"&gt;Twitter&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1680" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/personal/default.aspx">personal</category></item><item><title>Just like being there...almost.</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2007/12/30/just-like-being-there-almost.aspx</link><pubDate>Mon, 31 Dec 2007 04:46:15 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1641</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1641</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2007/12/30/just-like-being-there-almost.aspx#comments</comments><description>&lt;p&gt;Unfortunately I haven&amp;#39;t been able to make it to any of the jazzy conferences in 2007.&amp;nbsp; There are a few that I would&amp;#39;ve really liked to have attended; &lt;a href="http://www.altnetconf.com/home"&gt;altnetconf&lt;/a&gt;, &lt;a href="http://www.devteach.com/"&gt;DevTeach&lt;/a&gt;, &lt;a href="http://railsconf.org"&gt;RailsConf&lt;/a&gt; and &lt;a href="http://rubyconf.org/"&gt;RubyConf&lt;/a&gt; to name a few.&amp;nbsp; Luckily, you can find quite a bit of the content from some of these kinds of conferences online.&amp;nbsp; Just tonight I watched a really good presentation from RubyConf 2007, &lt;a href="http://rubyconf2007.confreaks.com/d3t1p2_rspec.html"&gt;Behaviour Driven Development with RSpec&lt;/a&gt;.&amp;nbsp; There are many more I&amp;#39;d like to &lt;a href="http://rubyconf2007.confreaks.com/"&gt;watch from RubyConf&lt;/a&gt; if I can find the time.&amp;nbsp; And of course the &lt;a href="http://www.hanselman.com/blog/ScottGuMVCPresentationAndScottHaScreencastFromALTNETConference.aspx"&gt;awesome MVC video from ScottGu&lt;/a&gt; himself at altnetconf is a must see.&lt;/p&gt; &lt;p&gt;So for those of you, like me, who for whatever reason can&amp;#39;t make it to some of these conferences, here are a few good places to start:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.confreaks.com/"&gt;Confreaks&lt;/a&gt; (these guys do an awesome job, giving you widescreen videos with the slides/code side by side with the presenter)  &lt;li&gt;&lt;a href="http://www.scribemedia.org/category/web-20/"&gt;ScribeMedia&lt;/a&gt; (where I originally watched the RailsConf 2006 stuff)  &lt;li&gt;&lt;a href="http://www.parleys.com/display/PARLEYS/Home"&gt;Parleys&lt;/a&gt; (saw an awesome DDD video here once)  &lt;li&gt;&lt;a href="http://video.google.com/"&gt;Google Videos&lt;/a&gt; (of course) &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I&amp;#39;m sure there are many more, so leave a comment with some more good post-conference resources if you know of any.&lt;/p&gt; &lt;p&gt;(Hopefully my ability to join in the conference goodness will be a bit better in the coming year)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1641" width="1" height="1"&gt;</description></item><item><title>MonoRail Quickly - Screencast</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2007/12/07/monorail-quickly-screencast.aspx</link><pubDate>Sat, 08 Dec 2007 05:57:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1511</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1511</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2007/12/07/monorail-quickly-screencast.aspx#comments</comments><description>&lt;p&gt;&lt;span style="font-weight:bold;"&gt;Update: Zip file links have been updated due to the first one being corrupt!&lt;/span&gt; &lt;br /&gt;&lt;/p&gt;&lt;p&gt;Well it was bound to happen at some point.&amp;nbsp; My &lt;a href="http://screencast.lostechies.com/screencasts/joeyb/monorail%5Fquickly/index.html"&gt;first screencast&lt;/a&gt;.&amp;nbsp; It&amp;#39;s a quick walkthrough on how you can get a baseline MonoRail solution up and running.&amp;nbsp; Yeah, I know.&amp;nbsp; Everyone&amp;#39;s talking about MS MVC these days, and I&amp;#39;m certainly just as excited about it as anyone else.&amp;nbsp; But MonoRail is still a very nice MVC framework that can be fully leveraged &lt;b&gt;now.&amp;nbsp; &lt;/b&gt;&lt;/p&gt; &lt;p&gt;So I thought &lt;a href="http://screencast.lostechies.com/screencasts/joeyb/monorail%5Fquickly/index.html"&gt;this screencast&lt;/a&gt; along with its &lt;a href="http://code.google.com/p/joeydotnet/downloads/list"&gt;accompanying zip file&lt;/a&gt; might help folks interested in MonoRail, or just ASP.NET MVC frameworks in general, to get one up and running quickly with everything you need (including an automated build script).&lt;/p&gt; &lt;p&gt;Let me know what you think!&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://screencast.lostechies.com/screencasts/joeyb/monorail%5Fquickly/index.html"&gt;MonoRail Quickly Screencast&lt;/a&gt;  &lt;/li&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/joeydotnet/downloads/list"&gt;Baseline MonoRail Solution&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;(Thanks to my fellow &lt;a href="http://lostechies.com"&gt;LosTechies&lt;/a&gt; crew for hosting the screencast for me.)&lt;/p&gt; &lt;p&gt;Happy Coding!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1511" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/monorail/default.aspx">monorail</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/castle/default.aspx">castle</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/screencast/default.aspx">screencast</category></item><item><title>Random Thoughts On Humility and Perfection</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/15/random-thoughts-on-humility-and-perfection.aspx</link><pubDate>Fri, 16 Nov 2007 03:09:28 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1384</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1384</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/15/random-thoughts-on-humility-and-perfection.aspx#comments</comments><description>&lt;p&gt;(Sorry for the recent&amp;nbsp;codeless posts, but these are just some of the things I&amp;#39;ve been thinking about and dealing with recently)&lt;/p&gt; &lt;p&gt;As I continue down this road as a software consultant (still with a consulting firm), I find myself working more and more with other consultants who are considered &amp;quot;senior&amp;quot;, which for some reason includes myself.&amp;nbsp; I&amp;#39;m starting to&amp;nbsp;see that this&amp;nbsp;&lt;em&gt;can &lt;/em&gt;be one of the biggest roadblocks to change and one of the biggest producers of fear on a team.&amp;nbsp; At least speaking for myself.&amp;nbsp; &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;quot;We&amp;#39;re &amp;#39;Senior&amp;#39;, We Don&amp;#39;t Need No Stinkin&amp;#39;&amp;nbsp;Code Reviews&amp;quot;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;This is the kind of mentality that, though common,&amp;nbsp;is pretty unfortunate.&amp;nbsp; We all know code reviews have been abused over the years, but does that really mean there is no benefit in &amp;quot;having&amp;nbsp;a 2nd pair of eyes&amp;quot;, as they say?&amp;nbsp; Isn&amp;#39;t this still&amp;nbsp;a powerful way to learn and grow a team&amp;#39;s skills?&amp;nbsp; &lt;/p&gt; &lt;p&gt;But this&amp;nbsp;post is not about specific practices like code reviews.&amp;nbsp; The greater point I&amp;#39;m trying to make is this:&amp;nbsp; &lt;strong&gt;Is it possible for us all&amp;nbsp;to put down our &amp;quot;senior&amp;quot; statuses and strive for perfection as a group of passionate developers without the fear&amp;nbsp;of offending each other?&lt;/strong&gt;&amp;nbsp; I&amp;#39;m not sure this is completely achievable as long as we&amp;#39;re all allowed to have opinions, but it certainly sounds like a nice goal.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Even though perfection is unachievable, I want to get as close to it as I can.&amp;nbsp; Both, in my walk with the Lord and in my craft as a software developer.&amp;nbsp; &lt;/p&gt; &lt;p&gt;One of the main benefits I see to all this ALT.NET stuff is that when a group of developers (notice I didn&amp;#39;t say &amp;quot;senior developers&amp;quot;) can get together and critique each other&amp;#39;s ideas in a constructive way that actually leads to overall improvement and learning, then I&amp;#39;d say that&amp;#39;s a huge leap in the right direction.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;quot;Now Let&amp;#39;s Not Get Crazy And Actually Try To Improve Our Code&amp;quot;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;strong&gt;Fear quenches the ability to improve.&lt;/strong&gt;&amp;nbsp; If Joe Developer is afraid to make a suggestion to another developer or his team&amp;nbsp;because he&amp;#39;s afraid&amp;nbsp;of either a)&amp;nbsp;someone getting offended&amp;nbsp;and/or b) someone biting his head off, then chances are that the&amp;nbsp;team&amp;#39;s&amp;nbsp;overall skills are pretty stagnant and their ability to improve is severely limited.&amp;nbsp; Fear can also come from working with unwieldy code bases.&amp;nbsp; When&amp;nbsp;everyone on the team is&amp;nbsp;afraid to change anything because they don&amp;#39;t want to break something, then you&amp;#39;ve got some serious changes to implement.&amp;nbsp; I&amp;#39;m starting to go through this process now on a couple of my current projects.&amp;nbsp; One baby step at a time.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;quot;We&amp;#39;re Too Busy&amp;nbsp;To Learn Fundamental OO Principles And Practices&amp;quot;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Well, like a good friend of mine told me recently, &amp;quot;you&amp;#39;re gonna pay for it somewhere&amp;quot;.&amp;nbsp; Either through lots of pain in the ongoing maintenance of poorly designed software or in the investment into your team to learn/teach better ways of&amp;nbsp;building software in the first place.&lt;/p&gt; &lt;p&gt;Now that I&amp;#39;ve pretty much &amp;quot;settled in&amp;quot; to my new consulting&amp;nbsp;firm, I&amp;#39;m going to really start spreading the knowledge that I have (what little that is) to try and build up the teams I work with as much as I can and perhaps &lt;a href="http://www.jpboodhoo.com/blog/LeadingByMultiplicity.aspx"&gt;encourage others to do the same&lt;/a&gt;.&amp;nbsp; Because I know that ultimately by doing this, I&amp;#39;ll end up learning much more from other folks that I could possibly teach them.&lt;/p&gt; &lt;p&gt;The end goal of course being that the clients we &lt;strong&gt;serve&lt;/strong&gt; are getting the highest quality work possible.&amp;nbsp; But more on that in another post...&amp;nbsp; ;)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1384" width="1" height="1"&gt;</description></item><item><title>Principles and Patterns over Tools and Frameworks</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/15/principles-and-patterns-over-tools-and-frameworks.aspx</link><pubDate>Thu, 15 Nov 2007 17:41:43 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1374</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1374</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/15/principles-and-patterns-over-tools-and-frameworks.aspx#comments</comments><description>&lt;p&gt;It&amp;#39;s interesting to see what other developers value and/or what topics they are interested in regarding the development of software.&amp;nbsp; I&amp;#39;m going to start doing some internal presentations and live coding sessions at my company for my fellow consultants.&amp;nbsp; I&amp;#39;ve got a pretty long list of possible topics, but I offered up 2 topics today that pertain to some of the work I&amp;#39;m doing on my current project.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Examples of how to apply some of the core OO principles (i.e. SRP, OCP) in a real world application and some of the patterns that complement them (i.e. Decorator, Proxy, CoR).  &lt;li&gt;Writing automated web tests using &lt;a href="http://watin.sourceforge.net/"&gt;WatiN&lt;/a&gt; &lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Guess which one got the most response?&amp;nbsp; If you guessed #1, you must be working with folks who are passionate about writing clean, maintainable code, regardless of the technology.&amp;nbsp; Consider yourself blessed.&amp;nbsp; As for the rest of us, I&amp;#39;d venture to say #2 would usually be the most &amp;quot;popular&amp;quot; choice among developers.&amp;nbsp; At least that&amp;#39;s the response I&amp;#39;ve received so far.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Of course, learning (and showing) a new automated web testing tool is very cool and can be very useful.&amp;nbsp; I really like the Watix line of web testing frameworks.&amp;nbsp; &lt;/p&gt; &lt;p&gt;But I see much more value in learning how to adhere to some of &lt;a href="http://www.mattberther.com/2006/10/25/principles-of-ood/"&gt;&amp;quot;uncle Bob&amp;#39;s&amp;quot; OOD principles&lt;/a&gt; (Robert Martin&amp;#39;s site seems to be down, so that link is from Matt Berther) and how patterns can help us along the way.&amp;nbsp; I see so many bugs that pop up in existing systems that would be so much easier to find and fix if just SRP alone was applied at some level in the code base.&amp;nbsp; And even more likely, many of those bugs probably wouldn&amp;#39;t have existed in the first place.&amp;nbsp; &lt;strong&gt;My recent experience has proven (once again) that the violation of SRP along with code duplication makes a fertile ground for those little &amp;quot;buggers&amp;quot; to grow.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&amp;lt;SRP tangent&amp;gt;&lt;/p&gt; &lt;p&gt;More and more, when folks ask me why I coded something a certain way, SRP has most likely influenced my decision.&amp;nbsp; I think SRP is one of the most important principles that developers should be applying when they are implementing new features and/or refactoring an existing code base.&amp;nbsp; The principle itself is very easy to learn. &lt;strong&gt;Code should only do one thing.&lt;/strong&gt;&amp;nbsp; This can be applied as high up as the logical layer level all the way down to a single line of code.&amp;nbsp; How far you take it is answered in the usual &amp;quot;it depends&amp;quot; response.&amp;nbsp; The difficulty in applying this principle, on the other hand, can vary greatly depending on the code base and the comfort level of the team with other OO principles and the patterns that support them.&lt;/p&gt; &lt;p&gt;&amp;lt;/SRP tangent&amp;gt;&lt;/p&gt; &lt;p&gt;Ok, I&amp;#39;m back.&amp;nbsp; So it sounds like I&amp;#39;m going to be doing the WatiN session first, but you better believe I&amp;#39;m going to be stressing the importance of writing good, clean code even for automated web tests.&amp;nbsp; They&amp;#39;re not going to get off that easy.&amp;nbsp; :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1374" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/refactoring/default.aspx">refactoring</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/patterns/default.aspx">patterns</category><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/tools/default.aspx">tools</category></item><item><title>TalesFromTheSmellySide(Of Code) - Episode #2 - SQL Injection Infection</title><link>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/02/talesfromthesmellyside-of-code-episode-2-sql-injection-infection.aspx</link><pubDate>Fri, 02 Nov 2007 15:36:00 GMT</pubDate><guid isPermaLink="false">ded273ab-9e87-4979-8222-e4e2e46f1b46:1272</guid><dc:creator>joeyDotNet</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.lostechies.com/blogs/joeydotnet/rsscomments.aspx?PostID=1272</wfw:commentRss><comments>http://www.lostechies.com/blogs/joeydotnet/archive/2007/11/02/talesfromthesmellyside-of-code-episode-2-sql-injection-infection.aspx#comments</comments><description>&lt;p&gt;Just so folks don&amp;#39;t think I&amp;#39;m coming off as elitist with my &lt;a href="http://joeydotnet.com/blog/archive/2007/10/29/talesfromthesmellysideltcodegt---episode-1.aspx"&gt;new 
little series&lt;/a&gt;, here&amp;#39;s an oldie but a goodie from yours truly on &lt;strong&gt;my 
first&amp;nbsp;.NET project way back in early 2002.&lt;/strong&gt;&amp;nbsp; (And really, my first real 
programming project, since my&amp;nbsp;previous life was&amp;nbsp;mainly&amp;nbsp;doing 
scripting/automation.)&lt;/p&gt;
&lt;p&gt;And this is VB, folks.&amp;nbsp; &amp;lt;gasp&amp;gt;&amp;nbsp; (Notice the title change?)&lt;/p&gt;
&lt;div style="border:1px solid gray;margin:20px 0px 10px;padding:4px;overflow:auto;font-size:8pt;width:97.5%;cursor:text;max-height:200px;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;"&gt;cmd.CommandText = &lt;span&gt;&amp;quot;UPDATE ATT_Circuits SET &amp;quot;&lt;/span&gt; &amp;amp; strField &amp;amp; &lt;span&gt;&amp;quot;=&amp;#39;&amp;quot;&lt;/span&gt; &amp;amp; strControlText.Replace(&lt;span&gt;&amp;quot;&amp;#39;&amp;quot;&lt;/span&gt;, &lt;span&gt;&amp;quot;&amp;quot;&lt;/span&gt;) &amp;amp; &lt;span&gt;&amp;quot;&amp;#39; WHERE Hostname=&amp;#39;&amp;quot;&lt;/span&gt; &amp;amp; txtHostname.Text &amp;amp; &lt;span&gt;&amp;quot;&amp;#39;&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ok, so I don&amp;#39;t think I really need to point out all the embarrassing problems 
in this one line of code.&amp;nbsp; Obviously it should be parameterized and that 
Hungarian notation just gives me the willies.&amp;nbsp; Oh and did I mention that I had 
this in right in the code behind for a web form?&amp;nbsp; Eeek!&lt;/p&gt;
&lt;p&gt;In my defense, at the time (and some would say this is still the case), 
that&amp;#39;s what Microsoft was encouraging.&amp;nbsp; Back then I didn&amp;#39;t know any better.&amp;nbsp; But 
thankfully the many evening and late night hours I&amp;#39;ve spent over the past&amp;nbsp;5 
years has allowed me to learn much better ways of building software.&amp;nbsp; &amp;lt;insert 
thank you to my wife here /&amp;gt;&amp;nbsp; Of course, this process seems to never cease!&amp;nbsp; 
:|&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Anyone else brave enough to share smells from their first software 
projects?&amp;nbsp; :D&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.lostechies.com/aggbug.aspx?PostID=1272" width="1" height="1"&gt;</description><category domain="http://www.lostechies.com/blogs/joeydotnet/archive/tags/tales+from+the+smelly+side/default.aspx">tales from the smelly side</category></item></channel></rss>