<?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"
	>
<channel>
	<title>Comments on: Tools of The Effective Developer: Fail Fast!</title>
	<atom:link href="http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/</link>
	<description>Hans-Eric Grönlund on software development</description>
	<pubDate>Thu, 24 Jul 2008 10:23:02 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: Virtual or non-virtual by default, do we really have to choose?</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-4631</link>
		<dc:creator>Virtual or non-virtual by default, do we really have to choose?</dc:creator>
		<pubDate>Tue, 04 Mar 2008 13:54:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-4631</guid>
		<description>[...] Now, with the introduction of the @override annotation, you can help the compiler help you to fail fast. It is now possible to show your intention better than what was possible in the pre annotation [...]</description>
		<content:encoded><![CDATA[<p>[...] Now, with the introduction of the @override annotation, you can help the compiler help you to fail fast. It is now possible to show your intention better than what was possible in the pre annotation [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: www.hans-eric.com &#187; Blog Archive &#187; Optimize Late, Benchmark Early</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-1121</link>
		<dc:creator>www.hans-eric.com &#187; Blog Archive &#187; Optimize Late, Benchmark Early</dc:creator>
		<pubDate>Fri, 23 Nov 2007 15:06:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-1121</guid>
		<description>[...] dealing with optimizations later does not mean you can ignore performance completely. Remember, failing fast is an important principle of software development, so you want to discover critical performance [...]</description>
		<content:encoded><![CDATA[<p>[...] dealing with optimizations later does not mean you can ignore performance completely. Remember, failing fast is an important principle of software development, so you want to discover critical performance [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AC</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-336</link>
		<dc:creator>AC</dc:creator>
		<pubDate>Fri, 05 Oct 2007 23:24:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-336</guid>
		<description>Thanks for the clarification Hans-Eric.

I'd like to add that I didn't mean that developers shouldn't do any testing, just that they should avoid testing their own work and perhaps ask other developers to test it. After all some things would be very hard to test without programming background for example.

In that sense I would also consider pair programming and code reviews to be an important part of failing fast. Unfortunately both of them are often neglected and considered to be waste of time. [sigh]

Regs,
AC</description>
		<content:encoded><![CDATA[<p>Thanks for the clarification Hans-Eric.</p>
<p>I&#8217;d like to add that I didn&#8217;t mean that developers shouldn&#8217;t do any testing, just that they should avoid testing their own work and perhaps ask other developers to test it. After all some things would be very hard to test without programming background for example.</p>
<p>In that sense I would also consider pair programming and code reviews to be an important part of failing fast. Unfortunately both of them are often neglected and considered to be waste of time. [sigh]</p>
<p>Regs,<br />
AC</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hans-Eric</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-333</link>
		<dc:creator>Hans-Eric</dc:creator>
		<pubDate>Fri, 05 Oct 2007 10:10:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-333</guid>
		<description>Thank you Dyan, your comment is also inspiring to me!

You really nailed it with this one:
"I guess it’s just human nature to attempt to hide crap under the carpet."</description>
		<content:encoded><![CDATA[<p>Thank you Dyan, your comment is also inspiring to me!</p>
<p>You really nailed it with this one:<br />
&#8220;I guess it’s just human nature to attempt to hide crap under the carpet.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hans-Eric</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-332</link>
		<dc:creator>Hans-Eric</dc:creator>
		<pubDate>Fri, 05 Oct 2007 10:05:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-332</guid>
		<description>Hi AC, 

first of all, you are absolutely right about acceptance testing being a manual process. What I meant to say was that you can automate the acceptance tests. I wrote another post to clarify this, see the pingback comment below.

You are also right in that testing is harder than one might think, and that good testers are hard to find. To me, this is just another reason to automate as much as possible.

I also agree that testing should be done by others than the developers, but - and this is important - this doesn't mean that developers shouldn't test at all. I've seen too much of the "let the testers do the testing" mentality, and it's always been disastrous. As I said, rapid feedback is the key to success.</description>
		<content:encoded><![CDATA[<p>Hi AC, </p>
<p>first of all, you are absolutely right about acceptance testing being a manual process. What I meant to say was that you can automate the acceptance tests. I wrote another post to clarify this, see the pingback comment below.</p>
<p>You are also right in that testing is harder than one might think, and that good testers are hard to find. To me, this is just another reason to automate as much as possible.</p>
<p>I also agree that testing should be done by others than the developers, but - and this is important - this doesn&#8217;t mean that developers shouldn&#8217;t test at all. I&#8217;ve seen too much of the &#8220;let the testers do the testing&#8221; mentality, and it&#8217;s always been disastrous. As I said, rapid feedback is the key to success.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: www.hans-eric.com &#187; Blog Archive &#187; How to automate acceptance tests</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-331</link>
		<dc:creator>www.hans-eric.com &#187; Blog Archive &#187; How to automate acceptance tests</dc:creator>
		<pubDate>Fri, 05 Oct 2007 09:53:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-331</guid>
		<description>[...] www.hans-eric.com       &#171; Tools of The Effective Developer: Fail Fast! [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://www.hans-eric.com" rel="nofollow">http://www.hans-eric.com</a>       &laquo; Tools of The Effective Developer: Fail Fast! [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dyan</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-330</link>
		<dc:creator>Dyan</dc:creator>
		<pubDate>Fri, 05 Oct 2007 09:37:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-330</guid>
		<description>Nice article. People still don't get that by failing fast on the short term they will actually succeed on the long term.
I guess it's just human nature to attempt to hide crap under the carpet.
Would be interesting to analyze in more detail the impact of the fail fast approach on object responsibilities and contracts.
Your blog is really inspiring, thank you!</description>
		<content:encoded><![CDATA[<p>Nice article. People still don&#8217;t get that by failing fast on the short term they will actually succeed on the long term.<br />
I guess it&#8217;s just human nature to attempt to hide crap under the carpet.<br />
Would be interesting to analyze in more detail the impact of the fail fast approach on object responsibilities and contracts.<br />
Your blog is really inspiring, thank you!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AC</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-327</link>
		<dc:creator>AC</dc:creator>
		<pubDate>Thu, 04 Oct 2007 16:19:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-327</guid>
		<description>Hi Hans-Eric,

I'd be curious to know how you automate (user) acceptance testing. I can understand automated integration and system testing, but I consider acceptance testing as something usually done by testers or real users.

And in my experience testing is usually much harder than one might think and I consider finding good testers as hard as (if not harder than) finding good developers. But maybe that's just me.

An important thing to keep in mind when talking about automated testing (beyond unit testing) is that testing should always be done by someone else than the person responsible for the implementation. It's hard to see your own mistakes. Basic stuff yes, but often neglected.

Regs,
AC</description>
		<content:encoded><![CDATA[<p>Hi Hans-Eric,</p>
<p>I&#8217;d be curious to know how you automate (user) acceptance testing. I can understand automated integration and system testing, but I consider acceptance testing as something usually done by testers or real users.</p>
<p>And in my experience testing is usually much harder than one might think and I consider finding good testers as hard as (if not harder than) finding good developers. But maybe that&#8217;s just me.</p>
<p>An important thing to keep in mind when talking about automated testing (beyond unit testing) is that testing should always be done by someone else than the person responsible for the implementation. It&#8217;s hard to see your own mistakes. Basic stuff yes, but often neglected.</p>
<p>Regs,<br />
AC</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Enfranchised Mind &#187; links for 2007-10-04</title>
		<link>http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-323</link>
		<dc:creator>Enfranchised Mind &#187; links for 2007-10-04</dc:creator>
		<pubDate>Thu, 04 Oct 2007 00:43:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.hans-eric.com/2007/10/02/tools-of-the-effective-developer-fail-fast/#comment-323</guid>
		<description>[...] Tools of The Effective Developer: Fail Fast! &#124; www.hans-eric.com Otherwise known as &#8220;defensive coding&#8221;, this is my development paradigm: write your code as if your user is out to kill your code, and as if you love them anyway. (tags: programming) [...]</description>
		<content:encoded><![CDATA[<p>[...] Tools of The Effective Developer: Fail Fast! | <a href="http://www.hans-eric.com" rel="nofollow">http://www.hans-eric.com</a> Otherwise known as &#8220;defensive coding&#8221;, this is my development paradigm: write your code as if your user is out to kill your code, and as if you love them anyway. (tags: programming) [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.246 seconds -->
