<?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: Introducing TDD: How would you do it?</title>
	<atom:link href="http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/feed/" rel="self" type="application/rss+xml" />
	<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/</link>
	<description>Trying to walk that thin line between intelligence and ignorance</description>
	<lastBuildDate>Sun, 14 Mar 2010 15:41:46 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Blog &#124; Rubyyot &#187; Blog Archive &#187; Getting a project off the ground with TDD and Cucumber</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-20546</link>
		<dc:creator>Blog &#124; Rubyyot &#187; Blog Archive &#187; Getting a project off the ground with TDD and Cucumber</dc:creator>
		<pubDate>Mon, 22 Jun 2009 05:17:43 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-20546</guid>
		<description>[...] are a number of sources stating that TDD is about design first and automated testing is a nice by-product. In my limited experience with TDD, programming by intention is the crux of [...]</description>
		<content:encoded><![CDATA[<p>[...] are a number of sources stating that TDD is about design first and automated testing is a nice by-product. In my limited experience with TDD, programming by intention is the crux of [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The Inquisitive Coder - Davy Brion&#8217;s Blog &#187; Blog Archive &#187; Introducing TDD: How I Would Do It</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1836</link>
		<dc:creator>The Inquisitive Coder - Davy Brion&#8217;s Blog &#187; Blog Archive &#187; Introducing TDD: How I Would Do It</dc:creator>
		<pubDate>Sun, 07 Sep 2008 15:21:55 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1836</guid>
		<description>[...] Introducing TDD: How would you do it? [...]</description>
		<content:encoded><![CDATA[<p>[...] Introducing TDD: How would you do it? [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Davy Brion</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1481</link>
		<dc:creator>Davy Brion</dc:creator>
		<pubDate>Thu, 28 Aug 2008 18:06:41 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1481</guid>
		<description>very true :)</description>
		<content:encoded><![CDATA[<p>very true <img src='http://davybrion.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kilfour</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1480</link>
		<dc:creator>kilfour</dc:creator>
		<pubDate>Thu, 28 Aug 2008 17:48:15 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1480</guid>
		<description>I have referred a couple of people to : &lt;a href=&quot;http://davybrion.com/blog/2007/06/why-you-should-write-tests-before-code/&quot; title=&quot;Why you should write tests before code&quot; rel=&quot;nofollow&quot;&gt;Why you should write tests before code&lt;/a&gt; ;-). I think it covers a lot of the benefits of testing. 
One thing I would like to add to this list, is how testing raises &lt;a href=&quot;http://c2.com/cgi/wiki?CollectiveCodeOwnership&quot; title=&quot;CollectiveOwnershipOfCode&quot; rel=&quot;nofollow&quot;&gt;CollectiveOwnershipOfCode&lt;/a&gt;. This is an important value in my experience. Not only from a clean source code viewpoint (many minds see more than one), but also from a project management viewpoint. Unit tests allow a developer to let go of &lt;i&gt;his&lt;/i&gt; source code. It is the responsibility of the developer making a change not to break the tests. In real life this allows f.i., developers with a lot of domain knowledge to define tests that other people can implement. No need to check if somebody broke something, the tests will tell you. Better yet, they will tell the developer new to the project what went wrong. Thus explaining to him how the application works. The flexibility this gives a team for switching people around on different assignments is a serious benefit of this way of working.

The following paragraph out of &lt;a href=&quot;http://c2.com/doc/oopsla92.html&quot; title=&quot;Ward Cunningham&#039;s OOPSLA &#039;92 Experience Report&quot; rel=&quot;nofollow&quot;&gt;=&quot;Ward Cunningham&#039;s OOPSLA &#039;92 Experience Report&lt;/a&gt;, using (and introducing) the metaphor of technical debt always helps explaining things to the more financially minded people I find.
&lt;i&gt;Another, more serious pitfall is the failure to consolidate. Although immature code may work fine and be completely acceptable to the customer, excess quantities will make a program unmasterable, leading to extreme specialization of programmers and finally an inflexible product. Shipping first time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite. Objects make the cost of this transaction tolerable. The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt. Entire engineering organizations can be brought to a stand-still under the debt load of an unconsolidated implementation, object- oriented or otherwise. &lt;/i&gt;</description>
		<content:encoded><![CDATA[<p>I have referred a couple of people to : <a href="http://davybrion.com/blog/2007/06/why-you-should-write-tests-before-code/" title="Why you should write tests before code" rel="nofollow">Why you should write tests before code</a> <img src='http://davybrion.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . I think it covers a lot of the benefits of testing.<br />
One thing I would like to add to this list, is how testing raises <a href="http://c2.com/cgi/wiki?CollectiveCodeOwnership" title="CollectiveOwnershipOfCode" rel="nofollow">CollectiveOwnershipOfCode</a>. This is an important value in my experience. Not only from a clean source code viewpoint (many minds see more than one), but also from a project management viewpoint. Unit tests allow a developer to let go of <i>his</i> source code. It is the responsibility of the developer making a change not to break the tests. In real life this allows f.i., developers with a lot of domain knowledge to define tests that other people can implement. No need to check if somebody broke something, the tests will tell you. Better yet, they will tell the developer new to the project what went wrong. Thus explaining to him how the application works. The flexibility this gives a team for switching people around on different assignments is a serious benefit of this way of working.</p>
<p>The following paragraph out of <a href="http://c2.com/doc/oopsla92.html" title="Ward Cunningham's OOPSLA '92 Experience Report" rel="nofollow">=&#8221;Ward Cunningham&#8217;s OOPSLA &#8216;92 Experience Report</a>, using (and introducing) the metaphor of technical debt always helps explaining things to the more financially minded people I find.<br />
<i>Another, more serious pitfall is the failure to consolidate. Although immature code may work fine and be completely acceptable to the customer, excess quantities will make a program unmasterable, leading to extreme specialization of programmers and finally an inflexible product. Shipping first time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite. Objects make the cost of this transaction tolerable. The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt. Entire engineering organizations can be brought to a stand-still under the debt load of an unconsolidated implementation, object- oriented or otherwise. </i></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: J.P. Hamilton</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1477</link>
		<dc:creator>J.P. Hamilton</dc:creator>
		<pubDate>Thu, 28 Aug 2008 15:46:45 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1477</guid>
		<description>TDD really clicked for me when I started using ReSharper heavily. It allowed me to write non-existing code first in the test and then quickly generate classes and methods from the code in the test. So, literally, I am writing the test first. Most of the confusion I have seen around TDD is that people just don&#039;t know where to start. This style of coding really answers that question. Of course, you should not have to rely on tooling to do TDD, but for demonstration purposes it really makes things clear.</description>
		<content:encoded><![CDATA[<p>TDD really clicked for me when I started using ReSharper heavily. It allowed me to write non-existing code first in the test and then quickly generate classes and methods from the code in the test. So, literally, I am writing the test first. Most of the confusion I have seen around TDD is that people just don&#8217;t know where to start. This style of coding really answers that question. Of course, you should not have to rely on tooling to do TDD, but for demonstration purposes it really makes things clear.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Davy Brion</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1467</link>
		<dc:creator>Davy Brion</dc:creator>
		<pubDate>Thu, 28 Aug 2008 05:22:56 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1467</guid>
		<description>i&#039;ll definitely talk about how important it is to design, but i wouldn&#039;t go as far as saying that it&#039;s not about testing.  The tests are important to keep around for regression testing, &#039;proving&#039; that the code works, and for refactoring safely</description>
		<content:encoded><![CDATA[<p>i&#8217;ll definitely talk about how important it is to design, but i wouldn&#8217;t go as far as saying that it&#8217;s not about testing.  The tests are important to keep around for regression testing, &#8216;proving&#8217; that the code works, and for refactoring safely</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jan Van Ryswyck</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1454</link>
		<dc:creator>Jan Van Ryswyck</dc:creator>
		<pubDate>Wed, 27 Aug 2008 18:40:53 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1454</guid>
		<description>You would probably want to mention that TDD is not about testing, but about driving the (OO) design of your application.</description>
		<content:encoded><![CDATA[<p>You would probably want to mention that TDD is not about testing, but about driving the (OO) design of your application.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Davy Brion</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1449</link>
		<dc:creator>Davy Brion</dc:creator>
		<pubDate>Wed, 27 Aug 2008 14:22:03 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1449</guid>
		<description>not sure if it&#039;s worth getting into details of the testing frameworks... i think it will be more important to stress the benefits and try to clear up some misconceptions</description>
		<content:encoded><![CDATA[<p>not sure if it&#8217;s worth getting into details of the testing frameworks&#8230; i think it will be more important to stress the benefits and try to clear up some misconceptions</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joshka</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1448</link>
		<dc:creator>Joshka</dc:creator>
		<pubDate>Wed, 27 Aug 2008 14:20:27 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1448</guid>
		<description>Check out http://dimecasts.net/ for a bunch of .Net related 10 minute screen casts, there isn&#039;t one on TDD as yet (AFAIK) though.

Your talk is 10 mins, you might want to think about sticking with the Unit Testing available in Visual Studio and only mentioning NUnit / MbUnit / ... as an endnote.</description>
		<content:encoded><![CDATA[<p>Check out <a href="http://dimecasts.net/" rel="nofollow">http://dimecasts.net/</a> for a bunch of .Net related 10 minute screen casts, there isn&#8217;t one on TDD as yet (AFAIK) though.</p>
<p>Your talk is 10 mins, you might want to think about sticking with the Unit Testing available in Visual Studio and only mentioning NUnit / MbUnit / &#8230; as an endnote.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Davy Brion</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1444</link>
		<dc:creator>Davy Brion</dc:creator>
		<pubDate>Wed, 27 Aug 2008 07:05:07 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1444</guid>
		<description>yup... another big benefit that i&#039;d like to mention is that doing TDD prevents you from writing code that won&#039;t be used anyway. You don&#039;t often hear people stressing that advantage, even though it&#039;s a big one imo :)</description>
		<content:encoded><![CDATA[<p>yup&#8230; another big benefit that i&#8217;d like to mention is that doing TDD prevents you from writing code that won&#8217;t be used anyway. You don&#8217;t often hear people stressing that advantage, even though it&#8217;s a big one imo <img src='http://davybrion.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frederik Gheysels</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1442</link>
		<dc:creator>Frederik Gheysels</dc:creator>
		<pubDate>Wed, 27 Aug 2008 06:59:19 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1442</guid>
		<description>I agree with Matt; one of the big benefits of writing tests first, is that you think about the API of your classes.
In fact, you&#039;re writing a test and this means you are the first consumer of your code.  You are forced to think about how the interface of your classes should look like and this helps you -imho- creating an explicit interface.</description>
		<content:encoded><![CDATA[<p>I agree with Matt; one of the big benefits of writing tests first, is that you think about the API of your classes.<br />
In fact, you&#8217;re writing a test and this means you are the first consumer of your code.  You are forced to think about how the interface of your classes should look like and this helps you -imho- creating an explicit interface.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Davy Brion</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1440</link>
		<dc:creator>Davy Brion</dc:creator>
		<pubDate>Wed, 27 Aug 2008 05:43:22 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1440</guid>
		<description>Yup, it should focus mostly on all of the benefits you can get out of it. In 10 minutes you can&#039;t really get into how it should be done, so it&#039;ll mostly be a sales pitch i guess.


@Lookman

wow, i&#039;m glad i got you to start experimenting with TDD :). If you have any questions, feel free to email me. I can&#039;t promise timely responses, but i&#039;d like to help when i can.</description>
		<content:encoded><![CDATA[<p>Yup, it should focus mostly on all of the benefits you can get out of it. In 10 minutes you can&#8217;t really get into how it should be done, so it&#8217;ll mostly be a sales pitch i guess.</p>
<p>@Lookman</p>
<p>wow, i&#8217;m glad i got you to start experimenting with TDD <img src='http://davybrion.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . If you have any questions, feel free to email me. I can&#8217;t promise timely responses, but i&#8217;d like to help when i can.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lookman</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1432</link>
		<dc:creator>Lookman</dc:creator>
		<pubDate>Wed, 27 Aug 2008 00:14:49 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1432</guid>
		<description>I think your presentation is targeted towards people like me. I started TDD about 3weeks back after reading about it here. then trying it out with VS testing unit. I am currently working on windows service application but writing unit test now gave me a good insight on refactoring and its help me code faster than old way of stepping through thousands lines of codes.

My point is unit test has an edge over the old way of debugging classes and methods.
It has help me understand more on how i can create a library with out even knowing what the presentation layer will be. e.g. windows forms, console or web application and even mobile UI.

but am still exploring on testing and have started using NUnit.

Good Luck</description>
		<content:encoded><![CDATA[<p>I think your presentation is targeted towards people like me. I started TDD about 3weeks back after reading about it here. then trying it out with VS testing unit. I am currently working on windows service application but writing unit test now gave me a good insight on refactoring and its help me code faster than old way of stepping through thousands lines of codes.</p>
<p>My point is unit test has an edge over the old way of debugging classes and methods.<br />
It has help me understand more on how i can create a library with out even knowing what the presentation layer will be. e.g. windows forms, console or web application and even mobile UI.</p>
<p>but am still exploring on testing and have started using NUnit.</p>
<p>Good Luck</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Klinker</title>
		<link>http://davybrion.com/blog/2008/08/introducing-tdd-how-would-you-do-it/comment-page-1/#comment-1426</link>
		<dc:creator>Matt Klinker</dc:creator>
		<pubDate>Tue, 26 Aug 2008 21:18:27 +0000</pubDate>
		<guid isPermaLink="false">http://davybrion.com/blog/?p=360#comment-1426</guid>
		<description>I think the biggest realization for me when beginning TDD was that the benefit of the tests is secondary.  The real benefit is all of the side effects that come from writing the tests first, and writing testable code.  Don&#039;t get me wrong, it&#039;s important to have good tests in order to refactor effectively but a lot of people tend to look at TDD as simply a means to test a project, not actually design a project.

Also, you should set up auto-correct to capitalize &#039;I&#039; :)  Good luck on your presentation!</description>
		<content:encoded><![CDATA[<p>I think the biggest realization for me when beginning TDD was that the benefit of the tests is secondary.  The real benefit is all of the side effects that come from writing the tests first, and writing testable code.  Don&#8217;t get me wrong, it&#8217;s important to have good tests in order to refactor effectively but a lot of people tend to look at TDD as simply a means to test a project, not actually design a project.</p>
<p>Also, you should set up auto-correct to capitalize &#8216;I&#8217; <img src='http://davybrion.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Good luck on your presentation!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
