<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: How Experienced Developers Can Handicap a Lean Startup</title>
	<atom:link href="http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/feed/" rel="self" type="application/rss+xml" />
	<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/</link>
	<description>Kevin Dewalt&#039;s experiences as a DC tech entrepreneur</description>
	<lastBuildDate>Mon, 08 Mar 2010 02:13:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Cogblog &#187; Blog Archive &#187; Is Minimum Viable Product Your Excuse For Shoddy Work?</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-41582</link>
		<dc:creator>Cogblog &#187; Blog Archive &#187; Is Minimum Viable Product Your Excuse For Shoddy Work?</dc:creator>
		<pubDate>Thu, 28 Jan 2010 16:31:53 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-41582</guid>
		<description>[...] I see a blog post like this one.  And my reaction is, &#8220;sounds like you are working with the wrong engineers&#8221;, not that [...]</description>
		<content:encoded><![CDATA[<p>[...] I see a blog post like this one.  And my reaction is, &#8220;sounds like you are working with the wrong engineers&#8221;, not that [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason Huggins</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38359</link>
		<dc:creator>Jason Huggins</dc:creator>
		<pubDate>Sat, 07 Nov 2009 20:12:43 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38359</guid>
		<description>I was with you until the &quot;is Selenium really worth the hassle&quot; part. ;-) Before Selenium existed, let me assure you, verifying javascript-heavy web apps in IE and Firefox was an even bigger hassle. ;-)</description>
		<content:encoded><![CDATA[<p>I was with you until the &#8220;is Selenium really worth the hassle&#8221; part. <img src='http://kevindewalt.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Before Selenium existed, let me assure you, verifying javascript-heavy web apps in IE and Firefox was an even bigger hassle. <img src='http://kevindewalt.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CHagner</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38341</link>
		<dc:creator>CHagner</dc:creator>
		<pubDate>Sat, 07 Nov 2009 03:54:19 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38341</guid>
		<description>It comes down to figuring out what&#039;s the biggest risk that you&#039;re facing?

1.  Not being able to solve the problem at all 
     (or put another way: not bringing a compelling enough solution to market)
or
2.  Not implementing the solution TRW.

If you&#039;re scared to death of #1, then #2 shouldn&#039;t be driving how you spend your time and energy.

Put another way, if you suffer #1 because you spent too much time solving #2, then you missed Kevin&#039;s point completely.  :-)</description>
		<content:encoded><![CDATA[<p>It comes down to figuring out what&#8217;s the biggest risk that you&#8217;re facing?</p>
<p>1.  Not being able to solve the problem at all<br />
     (or put another way: not bringing a compelling enough solution to market)<br />
or<br />
2.  Not implementing the solution TRW.</p>
<p>If you&#8217;re scared to death of #1, then #2 shouldn&#8217;t be driving how you spend your time and energy.</p>
<p>Put another way, if you suffer #1 because you spent too much time solving #2, then you missed Kevin&#8217;s point completely.  <img src='http://kevindewalt.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tom Zinter</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38338</link>
		<dc:creator>Tom Zinter</dc:creator>
		<pubDate>Sat, 07 Nov 2009 00:42:47 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38338</guid>
		<description>&quot;Inexperienced developers have one big advantage: they haven’t been programmed to work for perfection and they’re not afriad to make mistakes.&quot;

Yeah, because we all know this is by no means any sort of generalization or anything.  Its unequivocally true. Experienced developers only want perfection and are deathly afraid of mistakes.  Definitely don&#039;t get one of them.</description>
		<content:encoded><![CDATA[<p>&#8220;Inexperienced developers have one big advantage: they haven’t been programmed to work for perfection and they’re not afriad to make mistakes.&#8221;</p>
<p>Yeah, because we all know this is by no means any sort of generalization or anything.  Its unequivocally true. Experienced developers only want perfection and are deathly afraid of mistakes.  Definitely don&#8217;t get one of them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christoffer Du Rietz</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38337</link>
		<dc:creator>Christoffer Du Rietz</dc:creator>
		<pubDate>Sat, 07 Nov 2009 00:16:43 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38337</guid>
		<description>Great article. I&#039;m not a developer but a designer and I can totally relate to this. I&#039;d say that in most companies the exact same thing goes for designers. On the web today were time-to-market is the difference between success and failiure, experienced designers (including myself) tend to want to spend way to much time perfecting the product before getting it out the door. I hate to say it, but for most  businesses online, design isn&#039;t more important than time-to-market. So all you designers out there, get over yourselves!

I must say though, that there of course are exceptions. But mostly only in the premium market and when design is mean to be your main competetive advantage in a very crowded marketplace.</description>
		<content:encoded><![CDATA[<p>Great article. I&#8217;m not a developer but a designer and I can totally relate to this. I&#8217;d say that in most companies the exact same thing goes for designers. On the web today were time-to-market is the difference between success and failiure, experienced designers (including myself) tend to want to spend way to much time perfecting the product before getting it out the door. I hate to say it, but for most  businesses online, design isn&#8217;t more important than time-to-market. So all you designers out there, get over yourselves!</p>
<p>I must say though, that there of course are exceptions. But mostly only in the premium market and when design is mean to be your main competetive advantage in a very crowded marketplace.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38332</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Fri, 06 Nov 2009 21:56:48 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38332</guid>
		<description>What&#039;s missing here is the question that doing things TRW begs:

&lt;blockquote&gt;When you were taking the time to do things TRW, did you not have to (or wish you could) throw everything away as soon as you released version 1?&lt;/blockquote&gt;

Many assume that heavily front-loaded architecture/plumbing/etc. design processes (e.g. &quot;you start an agile project with 3-4 architecture sprints, right?&quot;) consistently yields better results and by results I mean &quot;increases the chances you won&#039;t have or want to just throw it all away for v2.&quot;

When in your experience have you ever really gotten it right during this period?  You&#039;ve spend loads of time up front except you&#039;re spending time solving problems you haven&#039;t run into yet, which you may never run in to.

By the time you hit v2, you&#039;ll wish your product was scaling in ways you couldn&#039;t have anticipated, being deployed into environments you never considered, etc.

If our experience tells us that&#039;s the case, why do we continue to front-load engineering initiatives with activities that mostly do not pay off?</description>
		<content:encoded><![CDATA[<p>What&#8217;s missing here is the question that doing things TRW begs:</p>
<blockquote><p>When you were taking the time to do things TRW, did you not have to (or wish you could) throw everything away as soon as you released version 1?</p></blockquote>
<p>Many assume that heavily front-loaded architecture/plumbing/etc. design processes (e.g. &#8220;you start an agile project with 3-4 architecture sprints, right?&#8221;) consistently yields better results and by results I mean &#8220;increases the chances you won&#8217;t have or want to just throw it all away for v2.&#8221;</p>
<p>When in your experience have you ever really gotten it right during this period?  You&#8217;ve spend loads of time up front except you&#8217;re spending time solving problems you haven&#8217;t run into yet, which you may never run in to.</p>
<p>By the time you hit v2, you&#8217;ll wish your product was scaling in ways you couldn&#8217;t have anticipated, being deployed into environments you never considered, etc.</p>
<p>If our experience tells us that&#8217;s the case, why do we continue to front-load engineering initiatives with activities that mostly do not pay off?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: TKL</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38328</link>
		<dc:creator>TKL</dc:creator>
		<pubDate>Fri, 06 Nov 2009 21:06:44 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38328</guid>
		<description>I agree.   Having worked in both a 2 man shop and a 9,000 person development organization there comes a point when you need to match your development approach with your purpose.
If you are trying to build an critical enterprise app then by all means use a full SDLC.  But I&#039;ve seen many cases when the app concept is not yet proven or that it is even disposible...  ie: will be used one time and then never again.   In those cases you need to just make it happen. 
There are cases when a better/smarter  method is not more time consuming and provides more flexibility down the road.  In this case experience is key.   
Advanced error detection for example is something that I often come back to.   No need to spend hours coding around ever conceivable way a user could skrew it up if it doesn&#039;t do what the user wants in the first place.....  Get it working first... then refine as you go. 

Again this is for non-critical apps... 

just my 2 cents

TKL</description>
		<content:encoded><![CDATA[<p>I agree.   Having worked in both a 2 man shop and a 9,000 person development organization there comes a point when you need to match your development approach with your purpose.<br />
If you are trying to build an critical enterprise app then by all means use a full SDLC.  But I&#8217;ve seen many cases when the app concept is not yet proven or that it is even disposible&#8230;  ie: will be used one time and then never again.   In those cases you need to just make it happen.<br />
There are cases when a better/smarter  method is not more time consuming and provides more flexibility down the road.  In this case experience is key.<br />
Advanced error detection for example is something that I often come back to.   No need to spend hours coding around ever conceivable way a user could skrew it up if it doesn&#8217;t do what the user wants in the first place&#8230;..  Get it working first&#8230; then refine as you go. </p>
<p>Again this is for non-critical apps&#8230; </p>
<p>just my 2 cents</p>
<p>TKL</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kevindewalt</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38723</link>
		<dc:creator>kevindewalt</dc:creator>
		<pubDate>Fri, 06 Nov 2009 19:49:36 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38723</guid>
		<description>Looks like I touched a few nerves today. :-) http://kevindewalt.com/blog/2009/11/06/h... and on Hacker News: http://news.ycombinator.com/item?id=9259... Interesting debates</description>
		<content:encoded><![CDATA[<p>Looks like I touched a few nerves today. <img src='http://kevindewalt.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  <a href="http://kevindewalt.com/blog/2009/11/06/h.." rel="nofollow">http://kevindewalt.com/blog/2009/11/06/h..</a>. and on Hacker News: <a href="http://news.ycombinator.com/item?id=9259.." rel="nofollow">http://news.ycombinator.com/item?id=9259..</a>. Interesting debates</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Augustine Koshy</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38325</link>
		<dc:creator>Augustine Koshy</dc:creator>
		<pubDate>Fri, 06 Nov 2009 18:47:15 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38325</guid>
		<description>I am not sure Rudolf O. really understood the message here. The author is not promoting anything dangerous or poisonous here.  He is  talking about how experienced enterprise developers can go in the wrong way to cause a startup burst. Quality itself is an attitude and perception. However Rudolf O lacks on both. Rudolf O&#039;s tunneled thoughts are the real dangerous and poisonous one. May god help your brain to think straight and right :)</description>
		<content:encoded><![CDATA[<p>I am not sure Rudolf O. really understood the message here. The author is not promoting anything dangerous or poisonous here.  He is  talking about how experienced enterprise developers can go in the wrong way to cause a startup burst. Quality itself is an attitude and perception. However Rudolf O lacks on both. Rudolf O&#8217;s tunneled thoughts are the real dangerous and poisonous one. May god help your brain to think straight and right <img src='http://kevindewalt.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabe da Silveira</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38324</link>
		<dc:creator>Gabe da Silveira</dc:creator>
		<pubDate>Fri, 06 Nov 2009 18:31:06 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38324</guid>
		<description>There is definitely some truth here, but on balance I tend to agree with some of the other commenters–this article is likely to encourage young developers to dismiss their older counterparts as over-careful and out-of-touch.

It doesn&#039;t matter whether you&#039;re working in the enterprise or for a seed-stage startup, there is both throw-away code, and long-term production code.  In both cases, code written today is going to be more painful to modify tomorrow, often by several orders of magnitude.

I agree that in a startup you need to cut corners in order to even figure out what you should be building, but you still need to know which corners to cut, because 3 months from now those corners you cut are going to be divided between the things you threw away (good) and the things that are calcifying into the backbone of your application (bad).

As always, the real (and largely unmeasurable!) talent is the clairvoyance to determine which is which far in advance.  Experienced developers have an edge here.  And obviously this is much much harder in a startup here the product is still in massive flux.

The &quot;experienced&quot; developer who rigidly does things a certain way based on past experience is a red herring.  This person is simply not cut out for a startup either way.  If they were a younger version of themselves sure they might move faster, but how soon before their ignorant mistakes bring them past the point of diminishing returns?  What happens once the agility of the lean startup is squandered on unmaintainable legacy code?</description>
		<content:encoded><![CDATA[<p>There is definitely some truth here, but on balance I tend to agree with some of the other commenters–this article is likely to encourage young developers to dismiss their older counterparts as over-careful and out-of-touch.</p>
<p>It doesn&#8217;t matter whether you&#8217;re working in the enterprise or for a seed-stage startup, there is both throw-away code, and long-term production code.  In both cases, code written today is going to be more painful to modify tomorrow, often by several orders of magnitude.</p>
<p>I agree that in a startup you need to cut corners in order to even figure out what you should be building, but you still need to know which corners to cut, because 3 months from now those corners you cut are going to be divided between the things you threw away (good) and the things that are calcifying into the backbone of your application (bad).</p>
<p>As always, the real (and largely unmeasurable!) talent is the clairvoyance to determine which is which far in advance.  Experienced developers have an edge here.  And obviously this is much much harder in a startup here the product is still in massive flux.</p>
<p>The &#8220;experienced&#8221; developer who rigidly does things a certain way based on past experience is a red herring.  This person is simply not cut out for a startup either way.  If they were a younger version of themselves sure they might move faster, but how soon before their ignorant mistakes bring them past the point of diminishing returns?  What happens once the agility of the lean startup is squandered on unmaintainable legacy code?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38321</link>
		<dc:creator>David</dc:creator>
		<pubDate>Fri, 06 Nov 2009 17:48:40 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38321</guid>
		<description>How odd that you equate &quot;experience&quot; with  &quot;enterprise experience&quot;.  

There are plenty of experienced engineers who have spent their lives hacking and/or working in startups.</description>
		<content:encoded><![CDATA[<p>How odd that you equate &#8220;experience&#8221; with  &#8220;enterprise experience&#8221;.  </p>
<p>There are plenty of experienced engineers who have spent their lives hacking and/or working in startups.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38320</link>
		<dc:creator>Brian</dc:creator>
		<pubDate>Fri, 06 Nov 2009 17:40:15 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38320</guid>
		<description>Great post. This is a tricky problem. It can be incredibly frustrating for a developer who is coming from a more structured coding environment to move to  a start-up environment. The answer is certainly not to throw out all those good coding practices and go completely cowboy (no tests, no plan, etc...). The key is knowing what are the critical paths in the software, the core features, and testing those at the right level (unit, integration, story, etc...) so that the moving target of what-the-product-will-be doesn&#039;t invalidate all your work. As the product matures and the company figures out what features sell then more tests need to be added and the code re-factored. Rinse and repeat. Oh, and the code should do as little as possible to get the job done. Coders (myself included) often have the habit of trying to predict features, these predictions are often wrong and add needless complexity.</description>
		<content:encoded><![CDATA[<p>Great post. This is a tricky problem. It can be incredibly frustrating for a developer who is coming from a more structured coding environment to move to  a start-up environment. The answer is certainly not to throw out all those good coding practices and go completely cowboy (no tests, no plan, etc&#8230;). The key is knowing what are the critical paths in the software, the core features, and testing those at the right level (unit, integration, story, etc&#8230;) so that the moving target of what-the-product-will-be doesn&#8217;t invalidate all your work. As the product matures and the company figures out what features sell then more tests need to be added and the code re-factored. Rinse and repeat. Oh, and the code should do as little as possible to get the job done. Coders (myself included) often have the habit of trying to predict features, these predictions are often wrong and add needless complexity.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ben</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38316</link>
		<dc:creator>Ben</dc:creator>
		<pubDate>Fri, 06 Nov 2009 16:08:04 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38316</guid>
		<description>Great Article, I keep running into this dichotomy.  

IMO, this is what differentiates Good developers from Rockstars.  A Rockstar knows how to ride the line between the &quot;right&quot; way and the fast way.</description>
		<content:encoded><![CDATA[<p>Great Article, I keep running into this dichotomy.  </p>
<p>IMO, this is what differentiates Good developers from Rockstars.  A Rockstar knows how to ride the line between the &#8220;right&#8221; way and the fast way.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rudolf O.</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38315</link>
		<dc:creator>Rudolf O.</dc:creator>
		<pubDate>Fri, 06 Nov 2009 16:06:48 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38315</guid>
		<description>This article is dangerous and poisonous to the computing industry.

A working prototype usually becomes THE PRODUCT! it mutates into the final buggy product that is shipped or if it doesn&#039;t, why the fuck are you wasting time building a prototype at all?

If you have the time to build a prototype, and then the type to create a properly designed product, then you have the time to do things right in both cases. On the other hand, if you don&#039;t have the time, well you&#039;re going to fail as a computing scientist or a software engineer (whichever you see yourself) because you will be shipping a buggy product that was initially a prototype.

I understand that a business wants to cut costs, but when that comes at the expense of quality, then you&#039;re doing society a disservice by shipping the product.</description>
		<content:encoded><![CDATA[<p>This article is dangerous and poisonous to the computing industry.</p>
<p>A working prototype usually becomes THE PRODUCT! it mutates into the final buggy product that is shipped or if it doesn&#8217;t, why the fuck are you wasting time building a prototype at all?</p>
<p>If you have the time to build a prototype, and then the type to create a properly designed product, then you have the time to do things right in both cases. On the other hand, if you don&#8217;t have the time, well you&#8217;re going to fail as a computing scientist or a software engineer (whichever you see yourself) because you will be shipping a buggy product that was initially a prototype.</p>
<p>I understand that a business wants to cut costs, but when that comes at the expense of quality, then you&#8217;re doing society a disservice by shipping the product.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ron Leisti</title>
		<link>http://kevindewalt.com/blog/2009/11/06/how-experienced-developers-can-handicap-a-lean-startup/comment-page-1/#comment-38314</link>
		<dc:creator>Ron Leisti</dc:creator>
		<pubDate>Fri, 06 Nov 2009 16:02:14 +0000</pubDate>
		<guid isPermaLink="false">http://kevindewalt.com/blog/?p=201#comment-38314</guid>
		<description>On foreign keys, I&#039;ve actually seen the opposite effect as far as programming experience goes.  For better or worse, what I&#039;ve seen is a pro-foreign key attitude coming from freshly minted programmers (because they teach that stuff in school), followed by the gradual disenfranchising in older developers.  I&#039;m not saying that foreign keys are bad necessarily, but experience does tell programmers when they can be a pain in the arse.</description>
		<content:encoded><![CDATA[<p>On foreign keys, I&#8217;ve actually seen the opposite effect as far as programming experience goes.  For better or worse, what I&#8217;ve seen is a pro-foreign key attitude coming from freshly minted programmers (because they teach that stuff in school), followed by the gradual disenfranchising in older developers.  I&#8217;m not saying that foreign keys are bad necessarily, but experience does tell programmers when they can be a pain in the arse.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
