<?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: The 5 dysfunctions of teams in code</title>
	<atom:link href="http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/</link>
	<description>Thoughts on Software Development</description>
	<lastBuildDate>Fri, 19 Mar 2010 07:53:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Hendry Betts</title>
		<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/comment-page-1/#comment-19077</link>
		<dc:creator>Hendry Betts</dc:creator>
		<pubDate>Tue, 23 Jun 2009 14:34:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.markhneedham.com/blog/?p=1258#comment-19077</guid>
		<description>Mark,

What a GREAT POST! Thank you.  But I have to raise a point about fear of conflict.  That is a management issue.  If ideas are not encouraged and passionate discussion not fostered (by management) then there is no knowledge of how to get an idea &quot;on the floor.&quot;

I love the rest of this article and agree that bad code directly relates to bad teams... but more importantly, bad management.</description>
		<content:encoded><![CDATA[<p>Mark,</p>
<p>What a GREAT POST! Thank you.  But I have to raise a point about fear of conflict.  That is a management issue.  If ideas are not encouraged and passionate discussion not fostered (by management) then there is no knowledge of how to get an idea "on the floor."</p>
<p>I love the rest of this article and agree that bad code directly relates to bad teams&#8230; but more importantly, bad management.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Myers</title>
		<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/comment-page-1/#comment-17799</link>
		<dc:creator>Rob Myers</dc:creator>
		<pubDate>Thu, 28 May 2009 20:08:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.markhneedham.com/blog/?p=1258#comment-17799</guid>
		<description>As I read this, I thought of Fowler&#039;s/Beck&#039;s code &quot;smells,&quot; and also Steve McConnell&#039;s good code attributes (cohesion, appropriate coupling, no duplication, good encapsulation...) from his book, _Code Complete_.

You&#039;ve mapped code dysfunctions to the human drivers (confusions or dysfunctions) that produce such code.

Very nice!  I&#039;ll be pointing to this a lot.  Thanks!</description>
		<content:encoded><![CDATA[<p>As I read this, I thought of Fowler's/Beck's code "smells," and also Steve McConnell's good code attributes (cohesion, appropriate coupling, no duplication, good encapsulation&#8230;) from his book, _Code Complete_.</p>
<p>You've mapped code dysfunctions to the human drivers (confusions or dysfunctions) that produce such code.</p>
<p>Very nice!  I'll be pointing to this a lot.  Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gerald Weinberg</title>
		<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/comment-page-1/#comment-17788</link>
		<dc:creator>Gerald Weinberg</dc:creator>
		<pubDate>Thu, 28 May 2009 15:44:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.markhneedham.com/blog/?p=1258#comment-17788</guid>
		<description>I love the way you illustrate &quot;people problems&quot; (and, particularly, &quot;team problems&quot;) with code symptoms. It&#039;s definitely a major tool in my consulting tool-kit: &quot;Look at code and ask youself, &#039;how did it happen to come out this way?&#039;&quot;

I want to pick a nit with you statement about &quot;code that has been written in such a way that only the person who wrote it is really able to understand it.&quot; There&#039;s a dangerous assumption there, that the person who wrote such code actually understands it. It&#039;s an assumption that&#039;s more often false than true.

Overly complex code that nobody but the writer has ever reviewed is extremely likely to be wrong. Indeed, for several reasons, it&#039;s more likely to be wrong than code that&#039;s produced in full cooperation with the team. I&#039;m sure you know this, but it&#039;s easy to forget in the heat of the battle with the person who won&#039;t let others see what s/he&#039;s doing.

So, when someone claims to be the only one who understands the code they wrote, get rid of the code, then get rid of the person who wrote it.</description>
		<content:encoded><![CDATA[<p>I love the way you illustrate "people problems" (and, particularly, "team problems") with code symptoms. It's definitely a major tool in my consulting tool-kit: "Look at code and ask youself, 'how did it happen to come out this way?'"</p>
<p>I want to pick a nit with you statement about "code that has been written in such a way that only the person who wrote it is really able to understand it." There's a dangerous assumption there, that the person who wrote such code actually understands it. It's an assumption that's more often false than true.</p>
<p>Overly complex code that nobody but the writer has ever reviewed is extremely likely to be wrong. Indeed, for several reasons, it's more likely to be wrong than code that's produced in full cooperation with the team. I'm sure you know this, but it's easy to forget in the heat of the battle with the person who won't let others see what s/he's doing.</p>
<p>So, when someone claims to be the only one who understands the code they wrote, get rid of the code, then get rid of the person who wrote it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy Palmer</title>
		<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/comment-page-1/#comment-17783</link>
		<dc:creator>Andy Palmer</dc:creator>
		<pubDate>Thu, 28 May 2009 13:37:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.markhneedham.com/blog/?p=1258#comment-17783</guid>
		<description>Your point of Absence of Trust was where I was coming from with &#039;&lt;a href=&quot;http://andypalmer.com/2008/08/returning-null-considered-dishonest/&quot; rel=&quot;nofollow&quot;&gt;Returning null considered dishonest&lt;/a&gt;&#039;.
Null checks are a symptom of the fact that you can&#039;t trust that you&#039;ll get back what you want.
I asked for a Drink and you gave me a null!</description>
		<content:encoded><![CDATA[<p>Your point of Absence of Trust was where I was coming from with '<a href="http://andypalmer.com/2008/08/returning-null-considered-dishonest/" rel="nofollow">Returning null considered dishonest</a>'.<br />
Null checks are a symptom of the fact that you can't trust that you'll get back what you want.<br />
I asked for a Drink and you gave me a null!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy Marks</title>
		<link>http://www.markhneedham.com/blog/2009/05/28/the-5-dysfunctions-of-teams-in-code/comment-page-1/#comment-17747</link>
		<dc:creator>Andy Marks</dc:creator>
		<pubDate>Wed, 27 May 2009 20:46:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.markhneedham.com/blog/?p=1258#comment-17747</guid>
		<description>Hiya Mark,

I too have recently read the book and loved it for the accessible tone and brevity.  Kudos for making the connection to coding.

Given the definitions of the dysfunctions above, I might re-cast a couple slightly:

- Lack of commitment.  Some people in team not using agreed upon patterns or layers when coding.  Or not refactoring towards agreed technical vision

- Avoidance of accountability.  When the team doesn&#039;t call out (name and shame, if you will) devs who commit code without tests.

Cheers,
Andy</description>
		<content:encoded><![CDATA[<p>Hiya Mark,</p>
<p>I too have recently read the book and loved it for the accessible tone and brevity.  Kudos for making the connection to coding.</p>
<p>Given the definitions of the dysfunctions above, I might re-cast a couple slightly:</p>
<p>- Lack of commitment.  Some people in team not using agreed upon patterns or layers when coding.  Or not refactoring towards agreed technical vision</p>
<p>- Avoidance of accountability.  When the team doesn't call out (name and shame, if you will) devs who commit code without tests.</p>
<p>Cheers,<br />
Andy</p>
]]></content:encoded>
	</item>
</channel>
</rss>
