<?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: Joel Spolsky is wrong about my work</title>
	<atom:link href="http://www.threeriversinstitute.org/blog/?feed=rss2&#038;p=29" rel="self" type="application/rss+xml" />
	<link>http://www.threeriversinstitute.org/blog/?p=29</link>
	<description>Thoughts on programming</description>
	<lastBuildDate>Thu, 29 Jul 2010 21:19:43 -0400</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Nuno Lopes</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-2422</link>
		<dc:creator>Nuno Lopes</dc:creator>
		<pubDate>Tue, 27 Jul 2010 22:59:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-2422</guid>
		<description>Having a bit more then 20 years of experience writing software it just led me to conclude that I know very little about the subject. I&#039;ve read hundreds and did hundreds and failed some.

Having said this, indeed, most of the people that actually shipped features faster then any other don&#039;t know who Joel his, who Ken Beck his, Martin Fowler etc etc. Know little about TDD etc etc. So this just might be telling us something about it, they are just smart and skillful.

Usually software development advances start with a great idea gathered from the experience of one or two people. An idea that worked for these people in particular circumstances. Then depending on ones garble ability it may gather some followers. Usually we hear about successes, rarely failures. Followers try to justify failures due to malpractice. After awhile ideas are sold has packages of concepts. &quot;If you do this you will be great&quot;. This sells conferences, books, training etc.

If week keep our focus at the core of ones idea, if it is any good will help us to create our own ideas to handle our own situations. It is easy to keep focus, just switch off the soft dev radio and do some work.

As an IT consultant working for fortune companies never had the opportunity to use TDD. The reason why I never got excited is because proving that a software works in code requires has much effort and thought has coding the software itself. 

The problem is that quite often I&#039;m not payed to write the software and its inverted version. User tests are usually just enough.

a = b
assert.equals(a,b) 

Sometimes this is necessary, sometimes it is not.

On another note I think it is only natural that writing tests helps write better software. It is like someone writing the same book twice ... then again the second book may not come has good has the first one. Should this come as a surprise?

In the world I live usually we can only write a peace of code once. Rarely we have the opportunity to write it twice. Three times, no way.

Here is a tip: Exercise designing and writing code once and bug free. That is the ultimate time saver. That is the skill speed deamon&#039;s have. Like any skill it can be learned. 

Cheers,

Nuno
PS: By the way. I am a programmer and I would love to do TDD with 40% coverage. If you have a project where customers have pockets deep enough or software is critical so that I can use and learn it fully send me an email. Then again I might not be experienced or smart enough to be of help.

I wonder how TDD sees the eventually consistent ideas. Should I test for inconsistencies, consistencies or both?</description>
		<content:encoded><![CDATA[<p>Having a bit more then 20 years of experience writing software it just led me to conclude that I know very little about the subject. I&#8217;ve read hundreds and did hundreds and failed some.</p>
<p>Having said this, indeed, most of the people that actually shipped features faster then any other don&#8217;t know who Joel his, who Ken Beck his, Martin Fowler etc etc. Know little about TDD etc etc. So this just might be telling us something about it, they are just smart and skillful.</p>
<p>Usually software development advances start with a great idea gathered from the experience of one or two people. An idea that worked for these people in particular circumstances. Then depending on ones garble ability it may gather some followers. Usually we hear about successes, rarely failures. Followers try to justify failures due to malpractice. After awhile ideas are sold has packages of concepts. &#8220;If you do this you will be great&#8221;. This sells conferences, books, training etc.</p>
<p>If week keep our focus at the core of ones idea, if it is any good will help us to create our own ideas to handle our own situations. It is easy to keep focus, just switch off the soft dev radio and do some work.</p>
<p>As an IT consultant working for fortune companies never had the opportunity to use TDD. The reason why I never got excited is because proving that a software works in code requires has much effort and thought has coding the software itself. </p>
<p>The problem is that quite often I&#8217;m not payed to write the software and its inverted version. User tests are usually just enough.</p>
<p>a = b<br />
assert.equals(a,b) </p>
<p>Sometimes this is necessary, sometimes it is not.</p>
<p>On another note I think it is only natural that writing tests helps write better software. It is like someone writing the same book twice &#8230; then again the second book may not come has good has the first one. Should this come as a surprise?</p>
<p>In the world I live usually we can only write a peace of code once. Rarely we have the opportunity to write it twice. Three times, no way.</p>
<p>Here is a tip: Exercise designing and writing code once and bug free. That is the ultimate time saver. That is the skill speed deamon&#8217;s have. Like any skill it can be learned. </p>
<p>Cheers,</p>
<p>Nuno<br />
PS: By the way. I am a programmer and I would love to do TDD with 40% coverage. If you have a project where customers have pockets deep enough or software is critical so that I can use and learn it fully send me an email. Then again I might not be experienced or smart enough to be of help.</p>
<p>I wonder how TDD sees the eventually consistent ideas. Should I test for inconsistencies, consistencies or both?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Agile revelations part 2 &#171; Implementing Agile &#8211; discoveries in software development</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-1549</link>
		<dc:creator>Agile revelations part 2 &#171; Implementing Agile &#8211; discoveries in software development</dc:creator>
		<pubDate>Sat, 21 Nov 2009 23:05:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-1549</guid>
		<description>[...] (to name but a few) I came up with some very well known writers on these subjects: Martin Fowler, Kent Beck and my own personal God Jeremy [...]</description>
		<content:encoded><![CDATA[<p>[...] (to name but a few) I came up with some very well known writers on these subjects: Martin Fowler, Kent Beck and my own personal God Jeremy [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stephen Souness</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-1369</link>
		<dc:creator>Stephen Souness</dc:creator>
		<pubDate>Thu, 24 Sep 2009 22:56:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-1369</guid>
		<description>I see that this blog post is quite dated, but I came across it a few days ago after some mention or other on Twitter.

Now I see that Joel is having another dig at unit testing on his blog entitled, &quot;The Duct Tape Programmer&quot;.

Uncle Bob Martin&#039;s response:
http://blog.objectmentor.com/articles/2009/09/24/the-duct-tape-programmer
was followed up by a comment that I found most interesting:
&quot;never take software advice from a bug tracking system salesman&quot;

TDD isn&#039;t about testing, it&#039;s about the way it makes you think about how you design your system and reduction in maintenance cost that stems from that.</description>
		<content:encoded><![CDATA[<p>I see that this blog post is quite dated, but I came across it a few days ago after some mention or other on Twitter.</p>
<p>Now I see that Joel is having another dig at unit testing on his blog entitled, &#8220;The Duct Tape Programmer&#8221;.</p>
<p>Uncle Bob Martin&#8217;s response:<br />
<a href="http://blog.objectmentor.com/articles/2009/09/24/the-duct-tape-programmer" rel="nofollow">http://blog.objectmentor.com/articles/2009/09/24/the-duct-tape-programmer</a><br />
was followed up by a comment that I found most interesting:<br />
&#8220;never take software advice from a bug tracking system salesman&#8221;</p>
<p>TDD isn&#8217;t about testing, it&#8217;s about the way it makes you think about how you design your system and reduction in maintenance cost that stems from that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: the rasx() context &#187; Blog Archive &#187; &#8220;Joel Spolsky is wrong about my work&#8221; and other links&#8230;</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-839</link>
		<dc:creator>the rasx() context &#187; Blog Archive &#187; &#8220;Joel Spolsky is wrong about my work&#8221; and other links&#8230;</dc:creator>
		<pubDate>Wed, 08 Jul 2009 15:35:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-839</guid>
		<description>[...] JUnit Max: “In a recent podcast, Joel Spolsky makes comments that make clear his lack of knowledge of what I do and what I say. His work has not afforded him the opportunity to evaluate the quantity or quality of my work as a programmer. The second edition of Extreme Programming Explained, Implementation Patterns and my recent work on Responsive Design are not checklists. …I would rather not respond, but if I don’t then public perception becomes what he says by default. He has worked hard to become famous, but he hasn’t figured out that along with notoriety comes responsibility. He is a bright, experienced guy and certainly capable of more accurate, thoughtful, and constructive conversation.” [...]</description>
		<content:encoded><![CDATA[<p>[...] JUnit Max: “In a recent podcast, Joel Spolsky makes comments that make clear his lack of knowledge of what I do and what I say. His work has not afforded him the opportunity to evaluate the quantity or quality of my work as a programmer. The second edition of Extreme Programming Explained, Implementation Patterns and my recent work on Responsive Design are not checklists. …I would rather not respond, but if I don’t then public perception becomes what he says by default. He has worked hard to become famous, but he hasn’t figured out that along with notoriety comes responsibility. He is a bright, experienced guy and certainly capable of more accurate, thoughtful, and constructive conversation.” [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nick Tulett</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-452</link>
		<dc:creator>Nick Tulett</dc:creator>
		<pubDate>Fri, 24 Apr 2009 14:20:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-452</guid>
		<description>Having read the transcript (not listened to the podcast), Joel seems to accept that change happens, so the requirements change, so the code changes - oh, but *then* it&#039;s too much effort to update the unit tests?

WTF?</description>
		<content:encoded><![CDATA[<p>Having read the transcript (not listened to the podcast), Joel seems to accept that change happens, so the requirements change, so the code changes &#8211; oh, but *then* it&#8217;s too much effort to update the unit tests?</p>
<p>WTF?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Slava Imeshev</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-136</link>
		<dc:creator>Slava Imeshev</dc:creator>
		<pubDate>Fri, 20 Feb 2009 04:38:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-136</guid>
		<description>Hi Kent,

Don&#039;t bother, really. Joel is a good writer, not a programmer. He just not worth it.

Regards,

Slava Imeshev</description>
		<content:encoded><![CDATA[<p>Hi Kent,</p>
<p>Don&#8217;t bother, really. Joel is a good writer, not a programmer. He just not worth it.</p>
<p>Regards,</p>
<p>Slava Imeshev</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JUnit Max &#187; Blog Archive &#187; What I Learned From My 15 Milliseconds</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-117</link>
		<dc:creator>JUnit Max &#187; Blog Archive &#187; What I Learned From My 15 Milliseconds</dc:creator>
		<pubDate>Tue, 17 Feb 2009 01:22:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-117</guid>
		<description>[...] recent kerfuffle gave me a chance to observe today&#8217;s web in action. Here&#8217;s what I [...]</description>
		<content:encoded><![CDATA[<p>[...] recent kerfuffle gave me a chance to observe today&#8217;s web in action. Here&#8217;s what I [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jax</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=2#comment-114</link>
		<dc:creator>Jax</dc:creator>
		<pubDate>Mon, 16 Feb 2009 22:10:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-114</guid>
		<description>T&#039;is just fanboyism. I respect the methodology of Agile development and I have read a fair bit on the subject including one of yours and Mr Cockburn&#039;s books (both of which were really cool to read btw). 
However this information doesn&#039;t stop me from disliking some that take the word as gospel, fanboys that apply the content without the theory and largely ignoring the caveats.

One might sit there staring at an array of ExpectedException(typeof(ArgumentNullException)] tests and think.... is this really necessary? Does this confer a benefit greater than that of writing such a test?
Its this type of diminishing return that signals that some people don&#039;t know where to stop. I speak after just removing some interfaces from a design that required transactionality across a number of objects. Their creation was misguided and done blithely. Internal classes were all that were required at this stage.

These people who implement the rules blithely encounter people like Joel which makes Joel comment like this. But he is mistaking their words for yours and this is probably where the misunderstanding lies.

In practice I find that quite a number of developers create unit tests that are redundant, expose internals horribly or just don&#039;t test things properly. Its output like this combined with the selling of books and hype that create skepticism that turns into such criticism.
The huge wave of Agile in the early to mid 2000s were the precursor of a backlash of some sort in the very same way the US swings between Demopublicans and Republicrats.

I would trust that if the people in question were to meet personally the disagreements would not occur. They occur due to the mis-appropriation of the knowledge by fanboys, people assuming that the fanboys are carrying the message of the original author when they may have made their own modifications, abbreviations or lost some in translation.</description>
		<content:encoded><![CDATA[<p>T&#8217;is just fanboyism. I respect the methodology of Agile development and I have read a fair bit on the subject including one of yours and Mr Cockburn&#8217;s books (both of which were really cool to read btw).<br />
However this information doesn&#8217;t stop me from disliking some that take the word as gospel, fanboys that apply the content without the theory and largely ignoring the caveats.</p>
<p>One might sit there staring at an array of ExpectedException(typeof(ArgumentNullException)] tests and think&#8230;. is this really necessary? Does this confer a benefit greater than that of writing such a test?<br />
Its this type of diminishing return that signals that some people don&#8217;t know where to stop. I speak after just removing some interfaces from a design that required transactionality across a number of objects. Their creation was misguided and done blithely. Internal classes were all that were required at this stage.</p>
<p>These people who implement the rules blithely encounter people like Joel which makes Joel comment like this. But he is mistaking their words for yours and this is probably where the misunderstanding lies.</p>
<p>In practice I find that quite a number of developers create unit tests that are redundant, expose internals horribly or just don&#8217;t test things properly. Its output like this combined with the selling of books and hype that create skepticism that turns into such criticism.<br />
The huge wave of Agile in the early to mid 2000s were the precursor of a backlash of some sort in the very same way the US swings between Demopublicans and Republicrats.</p>
<p>I would trust that if the people in question were to meet personally the disagreements would not occur. They occur due to the mis-appropriation of the knowledge by fanboys, people assuming that the fanboys are carrying the message of the original author when they may have made their own modifications, abbreviations or lost some in translation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stephen Rylander</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=1#comment-101</link>
		<dc:creator>Stephen Rylander</dc:creator>
		<pubDate>Fri, 13 Feb 2009 04:19:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-101</guid>
		<description>Thank you for making such a controlled reply Kent.  I almost fell out of my chair when Joel named not only Robert C. Marting but you!  I honestly couldn&#039;t believe my eyes - I put a lot of water in your style and the research you do.  Yourself and Martin have these practices and techniques because the real world has shown they work and has a need for them.  The StackOverflow podcasters want to do things the way they want and then simply back them up by &quot;this is how I feel&quot;.  It completely ignores the body of knowledge that supports softwre engineering today.
I don&#039;t mean this to be decisive, but when I was a younger programmer I read Joel&#039;s site; but as I&#039;ve matured I read Beck, Martin and Fowler.   

Kent - you are truly awesome.</description>
		<content:encoded><![CDATA[<p>Thank you for making such a controlled reply Kent.  I almost fell out of my chair when Joel named not only Robert C. Marting but you!  I honestly couldn&#8217;t believe my eyes &#8211; I put a lot of water in your style and the research you do.  Yourself and Martin have these practices and techniques because the real world has shown they work and has a need for them.  The StackOverflow podcasters want to do things the way they want and then simply back them up by &#8220;this is how I feel&#8221;.  It completely ignores the body of knowledge that supports softwre engineering today.<br />
I don&#8217;t mean this to be decisive, but when I was a younger programmer I read Joel&#8217;s site; but as I&#8217;ve matured I read Beck, Martin and Fowler.   </p>
<p>Kent &#8211; you are truly awesome.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Corkery</title>
		<link>http://www.threeriversinstitute.org/blog/?p=29&#038;cpage=1#comment-100</link>
		<dc:creator>Mark Corkery</dc:creator>
		<pubDate>Thu, 12 Feb 2009 23:08:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.threeriversinstitute.org/blog/?p=29#comment-100</guid>
		<description>Joel certainly seems like he hasn&#039;t given much thought to the impact of his comments. 

I think his point is summed up with his statement towards the end fo the clip that &quot;The way real software works is that you create these very imperfect things, and they work great. They really do. And then you have a little problem, and you go and you fix the little problem, because it&#039;s code, and you have an editor, and you edit it.&quot; I think this is fine when you are working on small projects and maybe have plenty of time to fix these problems in between gearing up for the next release. Without a certain level of quality, how can you predict the level of support needed for your code?

I certainly also think he underplays the power that a comprehensive Junit test suite gives you &quot;the ability to change things in their code with the confidence that they don&#039;t break anything&quot;, this is certainly not some throw away thing.</description>
		<content:encoded><![CDATA[<p>Joel certainly seems like he hasn&#8217;t given much thought to the impact of his comments. </p>
<p>I think his point is summed up with his statement towards the end fo the clip that &#8220;The way real software works is that you create these very imperfect things, and they work great. They really do. And then you have a little problem, and you go and you fix the little problem, because it&#8217;s code, and you have an editor, and you edit it.&#8221; I think this is fine when you are working on small projects and maybe have plenty of time to fix these problems in between gearing up for the next release. Without a certain level of quality, how can you predict the level of support needed for your code?</p>
<p>I certainly also think he underplays the power that a comprehensive Junit test suite gives you &#8220;the ability to change things in their code with the confidence that they don&#8217;t break anything&#8221;, this is certainly not some throw away thing.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
