<?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>Geekality &#187; Python</title>
	<atom:link href="http://www.geekality.net/tag/python/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.geekality.net</link>
	<description>With a hint of Social Ineptitude</description>
	<lastBuildDate>Tue, 27 Jul 2010 16:15:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Test-Driven Development: By Example</title>
		<link>http://www.geekality.net/2009/12/01/test-driven-development-by-example/</link>
		<comments>http://www.geekality.net/2009/12/01/test-driven-development-by-example/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 17:36:16 +0000</pubDate>
		<dc:creator>Torleif</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Books]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://www.geekality.net/?p=858</guid>
		<description><![CDATA[I earlier wrote about the book, The Art of Unit Testing, which I finished a while ago. That book was very good and was focused on how to write good unit tests. It also mentioned Test-Driven Development, TDD, but not &#8230; <a href="http://www.geekality.net/2009/12/01/test-driven-development-by-example/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.geekality.net/wp-content/uploads/2009/12/Test-Driven-Development-By-Example-Cover-239x300.jpg" alt="Test Driven Development By Example (Cover)" title="Test Driven Development By Example (Cover)" width="239" height="300" class="alignright size-medium wp-image-861" />I earlier wrote about the book, <a href="http://www.geekality.net/2009/11/03/the-art-of-unit-testing/">The Art of Unit Testing</a>, which I finished a while ago. That book was very good and was focused on how to write good unit tests. It also mentioned <a href="http://en.wikipedia.org/wiki/Test-driven_development">Test-Driven Development,</a> TDD, but not too much. The book I read next, which I finished a few days ago, was kind of the other way around. Pretty much only about TDD. And from the title, <em>Test-Driven Development: By Example</em>, that shouldn&#8217;t be much of a shocker <img src='http://www.geekality.net/wp-includes/images/blank.gif' alt=':P' title=':P' class='wp-smiley smiley-13' /> </p>
<p><span id="more-858"></span></p>
<p>The book is written by <a href="http://en.wikipedia.org/wiki/Kent_Beck">Kent Beck</a> and explains the basics about TDD. It does this pretty well, step by step, by example, just like the title says. The book also talks some about TDD in a more general sense. What it is, how it works, why it works, et cetera.</p>
<p>From the back-cover:</p>
<blockquote><p>Readers will learn to:
<ul>
<li>Solve complicated tasks, beginning with the simple and proceeding to the more complex.</li>
<li>Write automated tests before coding.</li>
<li>Grow a design organically by refactoring to add design decisions one at a time.</li>
<li>Create tests for more complicated logic, including reflection and exceptions.</li>
<li>Use patterns to decide what tests to write.</li>
<li>Create tests using xUnit, the architecture at the heart of many programmer-oriented testing tools.</li>
</ul>
</blockquote>
<p>It pretty much kept the promises <img src='http://www.geekality.net/wp-includes/images/blank.gif' alt=':)' title=':)' class='wp-smiley smiley-1' /> The only part I didn&#8217;t really like about this book was that I found much of the coding kind of messy. Could be because the languages used in the examples are Java and Python, which I don&#8217;t really like that much syntax-wise. An even more important reason though, is that I just finished reading The Art of Unit Testing <img src='http://www.geekality.net/wp-includes/images/blank.gif' alt=':P' title=':P' class='wp-smiley smiley-13' /> So, I suppose I have become a bit demanding when it comes to cleanliness when coding and writing unit-tests. I suppose that is a good thing <img src='http://www.geekality.net/wp-includes/images/blank.gif' alt=':D' title=':D' class='wp-smiley smiley-8' /> (I do however not claim in any way that the code I currently write is extremely clean in any way! But I do strive for it to be so <img src='http://www.geekality.net/wp-includes/images/blank.gif' alt=';)' title=';)' class='wp-smiley smiley-20' /> )</p>
<p>I can really recommend this book to anyone who are curious to get familiar with TDD. I certainly see the value of doing TDD and is in the process of trying to incorporate it into my development habits.</p>
<blockquote><ol>
<li>Red &#8212; Write a little test that doesn&#8217;t work, and perhaps doesn&#8217;t even compile at first.</li>
<li>Green &#8212; Make the test work quicky, committing whatever sins necessary in the process.</li>
<li>Refactor &#8212; Eliminate all of the duplication created in merely getting the test to work.</li>
</ol>
<p>Red/green/refactor &#8212; the TDD mantra.</p></blockquote>
<p>You can get it at <a href="http://amzn.com/0321146530">Amazon</a>, and probably a lot of other places too as it is a pretty well-known book.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekality.net/2009/12/01/test-driven-development-by-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
