<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jason Doucette&#039;s Business By Bootstraps &#187; development</title>
	<atom:link href="http://jasondoucette.ca/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://jasondoucette.ca</link>
	<description>Daily thoughts from the trenches of a self-funded company</description>
	<lastBuildDate>Sat, 14 Jan 2012 23:22:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>The true cost of software development</title>
		<link>http://jasondoucette.ca/the-true-cost-of-software-development/</link>
		<comments>http://jasondoucette.ca/the-true-cost-of-software-development/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 10:00:42 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[computer programming]]></category>
		<category><![CDATA[costing]]></category>
		<category><![CDATA[methodology]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[software development process]]></category>
		<category><![CDATA[software development project]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[software project management]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/?p=439</guid>
		<description><![CDATA[Time and again, I&#8217;m astounded when potential clients come to me with their vision for a software development project, along with a budget.  Not because they actually have a dollar figure in mind, but because they think that the coding is all it will take to get the job done. In fact, my experience is that the actual programming part of a project is about half of the cost. Maybe as low as 20%, depending on the project and its objectives. First off, you&#8217;ve got the discovery phase.  What&#8217;s the problem that&#8217;s being solved?  Sure, you might have a spec, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img class="aligncenter size-full wp-image-440" title="The last knives you'll ever need" src="http://jasondoucette.ca/wp-content/uploads/2011/09/lastknives.jpeg" alt="The last knives you'll ever need" width="580" height="387" /></p>
<p>Time and again, I&#8217;m astounded when potential clients come to me with their vision for a software development project, along with a budget.  Not because they actually have a dollar figure in mind, but because they think that the coding is all it will take to get the job done.</p>
<p>In fact, my experience is that the actual programming part of a project is about half of the cost. Maybe as low as 20%, depending on the project and its objectives.</p>
<p>First off, you&#8217;ve got the discovery phase.  What&#8217;s the problem that&#8217;s being solved?  Sure, you might have a spec, but really, what&#8217;s the problem that&#8217;s being solved?  Where will this project be in a year? In two years? How should we best structure the underlying system to be best positioned to deal with these future plans? No code is written here.</p>
<p>Then there&#8217;s code, but it&#8217;s not really code that gets kept, even if it&#8217;s really brilliant. In over 20 years of coding for money (ewwww that sounds dirty,) I don&#8217;t know if I&#8217;ve ever been given a spec, coded to that spec, and delivered exactly what was asked for without changes.  Sometimes seeing a feature in an early iteration sparks a new idea in the client&#8217;s imagination, sometimes enough time passes in the development cycle that a new business driver gets introduced, and sometimes people just change their mind, and woe be unto those who are on jobs where the budget is fixed to a certain overall cost no matter what. Code is written here, but it gets scrapped.</p>
<p>Oh, there&#8217;s actual code too. The stuff that makes the final product shine.  This is where the coding lives.</p>
<p>While all that&#8217;s going on, there&#8217;s infrastructure and documentation. Many projects don&#8217;t get a binder full of documents, but every project gets added to a source control system with comments on each check in, and a bug tracker with all issues and their resolutions, tied to the patches that fixed them. Typically, the client never sees this work, but it&#8217;s vital to the success of any project that takes more than 30 minutes to finish.</p>
<p>Finally, there&#8217;s the post-release phase, where typically the project enters the real world. With real conditions. Things nobody thought to try during any of the testing cycles.  As the technical resource, it&#8217;d be great to just walk away here, and the contract often says you can, but in reality it&#8217;s best to at least be aware of the long term baggage of even a successful implementation. Code is written here, but is it budgeted?</p>
<p>And yes, those are all parts of &#8220;the project&#8221; that I&#8217;m being paid to do, and I&#8217;ll cost out the quote to make these things fit, but too often the value I&#8217;m seen as delivering is what I call &#8220;the typing,&#8221; when in fact that&#8217;s a really small part of the puzzle.</p>
<p>This is an evolving list, but it&#8217;s one I&#8217;m working on building based on past client work. Hopefully, by focusing and expanding on it I can approach projects (internal and external) in a more holistic way so people can understand the true cost, and value, of a professional software development project. My job, as I see it, is to take that budget and put it in the various buckets in a way that ensures the best outcome, which might not involve a lot of actual coding at the end of the day.</p>
<p>(Oooh, look, a technical post, finally! Er, kind of.)</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/the-true-cost-of-software-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Cormac McCarthy thoughtchain post</title>
		<link>http://jasondoucette.ca/the-cormac-mccarthy-thoughtchain-post/</link>
		<comments>http://jasondoucette.ca/the-cormac-mccarthy-thoughtchain-post/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 20:18:55 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[mindset]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/?p=140</guid>
		<description><![CDATA[Lots of saved browser tabs accumulating (and some old mental bookmarks as well) surrounding Cormac McCarthy, who apparently wrote the book No Country for Old Men and The Road, both of which were movies as of late, though he&#8217;s been published since 1965, so it seems shallow to just highlight the stuff he&#8217;s written in the past 10 years.  I mean, they guy&#8217;s typewriter sold for a quarter million, and it helped build way more than two books. But hey, it&#8217;s not like I&#8217;ve read anything by him.  I just accumulate the links and tabs and bookmarks until they spill [...]]]></description>
			<content:encoded><![CDATA[<p></p><div id="attachment_141" class="wp-caption alignleft" style="width: 190px">
	<img class="size-full wp-image-141" title="McCarthy typewriter" src="http://jasondoucette.ca/wp-content/uploads/2009/12/mccarthytypewriter.jpg" alt="The Lettera 32 would be an awesome netbook if you could type silently" width="190" height="143" />
	<p class="wp-caption-text">The Lettera 32 would be an awesome netbook if you could type silently</p>
</div>
<p>Lots of saved browser tabs accumulating (and some old mental bookmarks as well) surrounding <a href="http://en.wikipedia.org/wiki/Cormac_McCarthy">Cormac McCarthy</a>, who apparently wrote the book No Country for Old Men and The Road, both of which were movies as of late, though he&#8217;s been published since 1965, so it seems shallow to just highlight the stuff he&#8217;s written in the past 10 years.  I mean, they guy&#8217;s typewriter <a href="http://artsbeat.blogs.nytimes.com/2009/12/04/cormac-mccarthys-typewriter-brings-254500-at-auction/">sold for a quarter million</a>, and it helped build way more than two books.</p>
<p>But hey, it&#8217;s not like I&#8217;ve read anything by him.  I just accumulate the links and tabs and bookmarks until they spill over.</p>
<p>So.</p>
<p>Item the first, which is the most recent, <a href="http://gapingvoid.com/2009/12/20/evil-plans-update/">is from this week by Hugh MacLeod</a>, in which he retells the story of a young aspiring writer asking McCarthy for advice on starting writing.  The response was &#8220;<em>Don&#8217;t do it unless you have to.</em>&#8221;</p>
<p>That reminded me of a post from way way back on <a href="http://www.mememachinego.com">MemeMachineGo</a>, which retold comics writer Alan Moore&#8217;s (Watchmen, V For Vendetta, lots of other good stuff) <a href="http://www.mememachinego.com/archives/001225.html">5 tips for would-be comics writers</a>.  The first, almost not surprisingly &#8220;don&#8217;t,&#8221; with tips 2 and 3 mirroring tip 1 in Fight Club style, but the one that always stuck in my head was item 5, paraphrased thusly: &#8220;<em>if you&#8217;re going to be any good, you have to commit yourself to it like an ancient Greek or Egyptian commits himself to a god.</em>&#8221;</p>
<p>That always stuck with me, but before we drill into that, we&#8217;re going back to McCarthy, who <a href="http://daringfireball.net/linked/2009/11/17/mccarthy">John Gruber quoted</a> from <a href="http://online.wsj.com/article/SB10001424052748704576204574529703577274572.html">a WSJ profile</a>: &#8220;<em>Anything that doesn’t take years of your life and drive you to suicide hardly seems worth doing.</em>&#8221;</p>
<p>I liked that bit, but that same interview yielded this gem, which was a little less bleak until you think of the ramifications: &#8220;<em>If you&#8217;re good at something it&#8217;s very hard not to do it.</em>&#8221;</p>
<p>You know, writing good code isn&#8217;t that much different than writing great works of literature, at least from a mindset perspective.  I think the biggest thing the blog and Twitter world has exposed is the (not altogether new) talent of making it look like you&#8217;re not working very hard on an all-consuming passion.</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/the-cormac-mccarthy-thoughtchain-post/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to quickly add bugs and features in FogBugz</title>
		<link>http://jasondoucette.ca/how-to-quickly-add-bugs-and-features-in-fogbugz/</link>
		<comments>http://jasondoucette.ca/how-to-quickly-add-bugs-and-features-in-fogbugz/#comments</comments>
		<pubDate>Sun, 01 Jun 2008 14:36:11 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Bug Tracking]]></category>
		<category><![CDATA[FogBugz]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/2008/06/01/how-to-quickly-add-bugs-and-features-in-fogbugz/</guid>
		<description><![CDATA[OK, so in FogBugz, there&#8217;s this fancy pants &#8220;Add case&#8221; link at the bottom of the list where you can enter one-liners and quickly enter cases into the system, and it&#8217;ll even assign them to the project that the list is reporting on. Visually speaking, clicking on this: Gets you this: Then you can type away, hit enter, add another case, hit enter, etc.  It&#8217;s a really painless way to add items to the system, and painless means there&#8217;s a better chance you&#8217;ll actually do it. It&#8217;s very cool, and possibly the best thing in the latest release (we don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>OK, so in <a href="http://www.fogcreek.com/FogBugz/">FogBugz</a>, there&#8217;s this fancy pants &#8220;Add case&#8221; link at the bottom of the list where you can enter one-liners and quickly enter cases into the system, and it&#8217;ll even assign them to the project that the list is reporting on.</p>
<p>Visually speaking, clicking on this:</p>
<p><img src="http://jasondoucette.ca/images/fogbugz-addcase-link.jpg" alt="The Add Case link in FogBugz" height="88" width="510" /></p>
<p>Gets you this:</p>
<p><img src="http://jasondoucette.ca/images/fogbugz-addcase-box.jpg" alt="The streamlined add case thing in FogBugz" height="85" width="570" /></p>
<p>Then you can type away, hit enter, add another case, hit enter, etc.  It&#8217;s a really painless way to add items to the system, and painless means there&#8217;s a better chance you&#8217;ll actually do it.</p>
<p>It&#8217;s very cool, and possibly the best thing in the latest release (we don&#8217;t schedule releases in a way that makes the otherwise very cool <a href="http://www.fogcreek.com/FogBugz/LearnMore.html?section=PredictShipDates">evidence-based scheduling</a> feature handy for us &#8211; yet.)  There&#8217;s just one thing&#8230;</p>
<p>I was having this problem where all of the new cases were all being added as bugs, which meant that features and inquiries required that extra step of selecting the new items and doing a batch edit to change the category.  More work means less chance of it getting done, which leads to a less accurate task tracking system, which leads to anarchy and cheese flavoured ice cream and whatnot.</p>
<p>Here&#8217;s the way around that:</p>
<p>If you sort the items by category, it&#8217;ll group the lists by bug, feature, etc.  Each list has an &#8220;Add Case&#8221; link at the bottom, and if you add under the appropriate one, it&#8217;ll be entered in the right category, no second edit required.</p>
<p>But wait!  You can&#8217;t click on the category to sort it like you can the other columns!  Turns out you need to customize the filter through the Filter-&gt;Customize menu.  Scroll down to the &#8220;Sort by:&#8221; section and make the first item &#8220;Category&#8221; (I&#8217;m using Status and Priority for the other two at the moment, but that might change).  Save that filter (I&#8217;m making one per project, but you can also do it for all the cases assigned to you, for example) and you&#8217;ve got something that you&#8217;ll be more likely to update.</p>
<p><img src="http://jasondoucette.ca/images/fogbugz-filter-categories.jpg" alt="Filtering options in FogBugz" height="79" width="376" /><br />
Plus, the cheese flavoured ice cream forces of darkness will be forced back to their caves for another day.</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/how-to-quickly-add-bugs-and-features-in-fogbugz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Everything needs an API</title>
		<link>http://jasondoucette.ca/everything-needs-an-api/</link>
		<comments>http://jasondoucette.ca/everything-needs-an-api/#comments</comments>
		<pubDate>Tue, 26 Feb 2008 15:31:54 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/2008/02/26/everything-needs-an-api/</guid>
		<description><![CDATA[Common sense that&#8217;s worth remembering: The smart game is building a robust API and let others get creative. (via A VC) Everything I do from now on needs to start with an API. We started a 3rd party integration project recently where I had to make one, and it was amazing a) how much re-work was required to expose functionality that already existed and b) how much of our internal code is rapidly migrating over to use the API calls. I heard this advice a while ago and discounted it because I didn&#8217;t want to take a latency hit from [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Common sense that&#8217;s worth remembering:</p>
<blockquote><p><em>The smart game is building a robust API and let others get creative.</em><em><br />
</em></p></blockquote>
<p>(<a href="http://avc.blogs.com/a_vc/2008/02/comment-of-the.html">via A VC</a>)</p>
<p>Everything I do from now on needs to start with an API.  We started a 3rd party integration project recently where I had to make one, and it was amazing a) how much re-work was required to expose functionality that already existed and b) how much of our internal code is rapidly migrating over to use the API calls.</p>
<p>I heard this advice a while ago and discounted it because I didn&#8217;t want to take a latency hit from a web call within my app to more code that&#8217;s essentially in my app, but I finally realized how much of an idiot I was being: <strong>your app doesn&#8217;t have to use the HTTP interface</strong>.  You can just call the internal libraries (because you <em>are</em> decoupling your web interface from your core code, right?)</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/everything-needs-an-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2008 deal killers: ReSharper and Web Deployment Projects</title>
		<link>http://jasondoucette.ca/visual-studio-2008-deal-killers-resharper-and-web-deployment-projects/</link>
		<comments>http://jasondoucette.ca/visual-studio-2008-deal-killers-resharper-and-web-deployment-projects/#comments</comments>
		<pubDate>Wed, 28 Nov 2007 21:08:42 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[C# ReSharper Visual Studio]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/2007/11/28/visual-studio-2008-deal-killers-resharper-and-web-deployment-projects/</guid>
		<description><![CDATA[The agony&#8230; of waiting&#8230; So I&#8217;m chomping at the bit to dig into Visual Studio 2008 with C# 3.0, and I&#8217;ve been skimming C# 3.0 in a Nutshell, and we&#8217;ve got two new projects on the way that would be awesome to just start with the new versions, but&#8230; dependencies&#8230; Web Deployment Projects haven&#8217;t been ported over yet.  ScottGu says it&#8217;ll happen in the two weeks or so following VS2008&#8242;s release, but in the meantime it looks like you can just use VS2005 for deployment.  Not a deal breaker. ReSharper won&#8217;t support C# 3.0 until version 4.0, which will hit [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>The agony&#8230; of waiting&#8230;</p>
<p>So I&#8217;m chomping at the bit to dig into Visual Studio 2008 with C# 3.0, and I&#8217;ve been skimming <a href="http://www.albahari.com/nutshell/">C# 3.0 in a Nutshell</a>, and we&#8217;ve got two new projects on the way that would be awesome to just start with the new versions, but&#8230; dependencies&#8230;</p>
<p><a href="http://msdn2.microsoft.com/en-us/asp.net/Aa336619.aspx">Web Deployment Projects</a> haven&#8217;t been ported over yet.  <a href="http://weblogs.asp.net/scottgu/">ScottGu</a> says it&#8217;ll happen in the two weeks or so following VS2008&#8242;s release, but in the meantime it looks like you can just use VS2005 for deployment.  Not a deal breaker.</p>
<p><a href="http://www.jetbrains.com/resharper/index.html">ReSharper</a> won&#8217;t support C# 3.0 until version 4.0, which will hit EAP in January (not that I&#8217;ve heard good things about ReSharper EAPs).  In the meantime, there&#8217;s a <a href="http://www.jetbrains.com/resharper/download/index.html#VS2008">version of  3.0.2 compiled for 2008</a> that&#8217;ll at least suck less.  Of course, that won&#8217;t help people like me who are still running 2.5 and are waiting to hear the upgrade plan (I&#8217;m not paying a $150 tax for a month and a half or so of development).</p>
<p>Visual Studio without ReSharper is a deal killer, especially after the last week or two of TDD practice.  The thing integrates so seamlessly into Visual Studio that I can&#8217;t tell where one ends and another begins, and I can&#8217;t imagine cutting out so many features from an IDE.</p>
<p>Oh well, at least nothing happens in December anyway, right?</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/visual-studio-2008-deal-killers-resharper-and-web-deployment-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Donald Belcham keeps me on the TDD path</title>
		<link>http://jasondoucette.ca/donald-belcham-keeps-me-on-the-tdd-path/</link>
		<comments>http://jasondoucette.ca/donald-belcham-keeps-me-on-the-tdd-path/#comments</comments>
		<pubDate>Wed, 21 Nov 2007 12:07:43 +0000</pubDate>
		<dc:creator>Jason</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://jasondoucette.ca/2007/11/21/donald-belcham-keeps-me-on-the-tdd-path/</guid>
		<description><![CDATA[Inspired to do some penance following a late-night &#8220;there&#8217;s a bug in the app&#8221; call (OK, 10pm isn&#8217;t late, but it&#8217;s later than I want to be working), I spent some time yesterday working TDD-style, which I&#8217;ve played with before, but this time using mock objects, which I&#8217;ve never used but have the potential to make my tests actually meaningful. The net result?  a thirty minute job took three and a half hours. Granted, some of that was learning curve.  A lot of that was learning curve, really.  Still, it took a lot to keep telling myself that I shouldn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Inspired to do some penance following a late-night &#8220;there&#8217;s a bug in the app&#8221; call (OK, 10pm isn&#8217;t late, but it&#8217;s later than I want to be working), I spent some time yesterday working TDD-style, which I&#8217;ve played with before, but this time using mock objects, which I&#8217;ve never used but have the potential to make my tests actually meaningful.</p>
<p>The net result?  a thirty minute job took three and a half hours.</p>
<p>Granted, some of that was learning curve.  A lot of that was learning curve, really.  Still, it took a lot to keep telling myself that I shouldn&#8217;t abandon <a href="http://en.wikipedia.org/wiki/Test-driven_development">TDD</a>, <a href="http://en.wikipedia.org/wiki/Model-view-controller">MVC</a>, etc. and just go back to stuffing everything in the codebehind.  After all, I&#8217;m competing with other companies whose developers do that, and fast turnaround is all the client cares about, right?</p>
<p>Well, I&#8217;m keeping at it, and it&#8217;s <span><span class="eventSpeaker"><a href="http://www.igloocoder.com/">Donald Belcham</a>&#8216;s fault.</span></span></p>
<p>After a long day of patching code and getting the crap kicked out of my by new tools, the last thing I wanted to do was go to a user group meeting and listen to someone talk about <a href="http://altdotnet.com/">Alt.net</a>, but somehow I managed to drag myself there (the fact that the venue was almost directly on the way home helped a lot.)</p>
<p>Wow.</p>
<p align="left">I thought that the talk was going to be mostly about <a href="http://ccnet.thoughtworks.com/">CC.Net</a> and <a href="http://nant.sourceforge.net/">nAnt</a> (which was the original plan, apparently), but it ended up being a two-parter:</p>
<p><strong>1) How to be a better developer</strong></p>
<p>I can&#8217;t tell you how much I needed to hear that what I was going through was normal, that nearly everyone gets kicked in the teeth when they start changing their development style, that the code I&#8217;m writing now is going to embarrass me in six months, and that it&#8217;ll all be worth it.</p>
<p>In the daily scramble to juggle multiple projects (before we finally started hiring), I lost track of what I loved most about software development: continuous personal improvement.  Donald pointed out that learning to write good code just like going to the gym: you need to practice regularly (he had an interesting practice of holding &#8220;corporate retreats&#8221; where he&#8217;d hole up in a hotel for a weekend just to write new code.)</p>
<p>I really wish that our new hire was able to make it to the talk.  Now he&#8217;s going to have to listen to me go on and on about it.</p>
<p><strong>2) Code examples</strong></p>
<p>Time was getting tight, but Donald managed to show us some examples of Monorail, which is apparently the most production-ready MVC framework for .Net out there right now.  I need to take another look at it &#8211; while there are some issues with NHibernate and MySQL, it&#8217;s a good candidate for a practice session.  If nothing else, I jotted down about a dozen future search terms for the google.</p>
<p>I wasn&#8217;t able to implement any of the ideas right away due to some other deadlines, but I did manage to see my TDD adventure in a new light.  Yes, it was a frustrating few hours, but in the process I managed to come up with a new refactoring for our data access layer that looks promising, I discovered a few coding practices that I need to stop (boolean functions that always return true, for example), and in theory I&#8217;ve got code that&#8217;s going to warn me if I inadvertently break it by making a change somewhere else.  Cool.</p>
<p>Thanks again to Donald as well as the <a href="http://www.metrotorontoug.com/Default.aspx">Metro Toronto .Net Users Group</a> for hosting the talk.  I went in wishing there was wireless so I could get some work done, and I left regretting that I couldn&#8217;t stick around for drinks.  I don&#8217;t want to tag it as &#8220;life-changing,&#8221; but I think it&#8217;s pushing me down a path that&#8217;ll make for an interesting few months while I try some more of this stuff out and see how it fits in our organization.</p>
]]></content:encoded>
			<wfw:commentRss>http://jasondoucette.ca/donald-belcham-keeps-me-on-the-tdd-path/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

