<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:planet="http://planet.intertwingly.net/" xmlns:indexing="urn:atom-extension:indexing" indexing:index="no"><access:restriction xmlns:access="http://www.bloglines.com/about/specs/fac-1.0" relationship="deny"/>
  <title>Agile Planet</title>
  <updated>2011-11-21T01:17:10Z</updated>
  <generator uri="http://intertwingly.net/code/venus/">Venus</generator>
  <author>
    <name>Ian Davis</name>
    <email>iand@internetalchemy.org</email>
  </author>
  <id>http://www.agileplanet.org/atom.xml</id>
  <link href="http://www.agileplanet.org/atom.xml" rel="self" type="application/atom+xml"/>
  <link href="http://www.agileplanet.org/" rel="alternate"/>

  <entry xml:lang="en">
    <id>http://feedproxy.google.com/~r/AgileInAction/~3/IQbEVn4afzY/beware-the-coefficient-of-fiction</id>
    <link href="http://feedproxy.google.com/~r/AgileInAction/~3/IQbEVn4afzY/beware-the-coefficient-of-fiction" rel="alternate" type="text/html"/>
    <title>Beware the Coefficient of Fiction</title>
    <summary>There’s a saying: “If it isn’t official, it hasn’t happened”.RAG reports spring to mind. I’ve seen too many RAG reports that have not reflected reality to respect them as a means to report status. Usually, a project sta...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">There’s a saying: “If it isn’t official, it hasn’t happened”.RAG reports spring to mind. I’ve seen too many RAG reports that have not reflected reality to respect them as a means to report status. Usually, a project sta...<img height="1" src="http://feeds.feedburner.com/~r/AgileInAction/~4/IQbEVn4afzY" width="1"/></div>
    </content>
    <updated>2011-11-18T13:48:50Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.energizedwork.com/weblog/2011/11/beware-the-coefficient-of-fiction</feedburner:origLink>
    <source>
      <id>http://www.energizedwork.com/weblog</id>
      <logo>http://creativecommons.org/images/public/somerights20.gif</logo>
      <author>
        <name>Gus Power</name>
        <email>noemail@noemail.org</email>
      </author>
      <link href="http://www.energizedwork.com/weblog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/AgileInAction" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://creativecommons.org/licenses/by/2.0/" rel="license"/>
      <rights>http://creativecommons.org/licenses/by/2.0/</rights>
      <subtitle>This is the blog of Simon Baker and Gus Power of Energized Work.</subtitle>
      <title>Energized Work | agile in action</title>
      <updated>2011-11-18T14:16:58Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://feedproxy.google.com/~r/AgileInAction/~3/h3lk_feBId4/the-un-ethics-of-big-vendor-contracts-with-cost-driven-companies</id>
    <link href="http://feedproxy.google.com/~r/AgileInAction/~3/h3lk_feBId4/the-un-ethics-of-big-vendor-contracts-with-cost-driven-companies" rel="alternate" type="text/html"/>
    <title>The (un)ethics of Big Vendor contracts with cost-driven companies</title>
    <summary>Consider a company looking to procure external software services. This is a company that manages by objectives and spends time and effort micromanaging costs. In a typical procurement situation, probably a tender for services, their fixation on cost pushe...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Consider a company looking to procure external software services. This is a company that manages by objectives and spends time and effort micromanaging costs. In a typical procurement situation, probably a tender for services, their fixation on cost pushe...<img height="1" src="http://feeds.feedburner.com/~r/AgileInAction/~4/h3lk_feBId4" width="1"/></div>
    </content>
    <updated>2011-11-18T10:58:59Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.energizedwork.com/weblog/2011/11/the-un-ethics-of-big-vendor-contracts-with-cost-driven-companies</feedburner:origLink>
    <source>
      <id>http://www.energizedwork.com/weblog</id>
      <logo>http://creativecommons.org/images/public/somerights20.gif</logo>
      <author>
        <name>Gus Power</name>
        <email>noemail@noemail.org</email>
      </author>
      <link href="http://www.energizedwork.com/weblog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/AgileInAction" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://creativecommons.org/licenses/by/2.0/" rel="license"/>
      <rights>http://creativecommons.org/licenses/by/2.0/</rights>
      <subtitle>This is the blog of Simon Baker and Gus Power of Energized Work.</subtitle>
      <title>Energized Work | agile in action</title>
      <updated>2011-11-18T14:16:58Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://agilepainrelief.com/?page_id=682#comment-30867</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/F-IBwL4_mhg/comment-page-1" rel="alternate" type="text/html"/>
    <title>By: Reflections: Co-Training with Mark Levison (CST) July 6-8, 2011 | Agile Guidance via Paul Heidema</title>
    <summary>[...] more and from Mark Levison: http://agilepainrelief.com/notesfromatooluser Be Sociable, Share!           Tweet(function() {var s = document.createElement('SCRIPT'), s1 = [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>[...] more and from Mark Levison: http://agilepainrelief.com/notesfromatooluser Be Sociable, Share!           Tweet(function() {var s = document.createElement('SCRIPT'), s1 = [...]</p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/F-IBwL4_mhg" width="1"/></div>
    </content>
    <updated>2011-11-18T04:04:47Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/comment-page-1#comment-30867</feedburner:origLink>
    <author>
      <name>Reflections: Co-Training with Mark Levison (CST) July 6-8, 2011 | Agile Guidance via Paul Heidema</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Comments on: Blog</title>
      <updated>2011-11-20T22:16:06Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=857</id>
    <link href="http://blog.gdinwiddie.com/2011/11/17/tips-and-advice-test-driven-development/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/17/tips-and-advice-test-driven-development/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/17/tips-and-advice-test-driven-development/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Tips and Advice: Test Driven Development</title>
    <summary xml:lang="en">Yesterday, Bob Payne published one of our informal Tips and Advice discussions on the Agile Toolkit. Check out our Test Driven Development podcast and let me know what you think.</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>Yesterday, Bob Payne published one of our informal Tips and Advice discussions on the Agile Toolkit. Check out our <a href="http://agiletoolkit.libsyn.com/webpage/tips-and-advice-test-driven-development-bob-payne-and-george-dinwiddie" target="_blank" title="Test Driven Development podcast on The Agile Toolkit">Test Driven Development podcast</a> and let me know what you think.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=857&amp;type=feed"/></div>
    </content>
    <updated>2011-11-17T13:34:59Z</updated>
    <published>2011-11-17T13:34:59Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Tools and Techniques"/>
    <category scheme="http://blog.gdinwiddie.com" term="TDD"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=851</id>
    <link href="http://blog.gdinwiddie.com/2011/11/16/who-is/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/16/who-is/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/16/who-is/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Who is…</title>
    <summary xml:lang="en">Yesterday, Yves Hanoulle published his interview of me as part of his Who Is series.  It was a good opportunity for a little introspection about myself and my career. He included a photo of me wearing my Red-Green-Refactor TDD hat. This had may be more famous than I am, having been worn by Uncle Bob [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>Yesterday, Yves Hanoulle published his <a href="http://www.hanoulle.be/2011/11/who-is-george-dinwiddie/" target="_blank" title="Who is George Dinwiddie">interview of me</a> as part of his Who Is series.  It was a good opportunity for a little introspection about myself and my career.<span id="more-851"/></p>
<div class="wp-caption alignright" id="attachment_852" style="width: 250px;"><img alt="Red-Green-Refactor Test Driven Development hat" class="size-full wp-image-852" height="320" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/11/TDD-hat.jpg" title="TDD-hat" width="240"/><p class="wp-caption-text">Hat for Test Driven Development</p></div>
<p>He included a photo of me wearing my Red-Green-Refactor TDD hat.  This had may be more famous than I am, having been worn by Uncle Bob Martin in <a href="http://www.cleancoders.com/codecast/clean-code-episode-6-part-1/show" target="_blank" title="Clean Code, Episode 6, part 1">Episode 6 of his CleanCoders videos</a>.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=851&amp;type=feed"/></div>
    </content>
    <updated>2011-11-16T12:34:18Z</updated>
    <published>2011-11-16T12:34:18Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="About Me"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=847</id>
    <link href="http://blog.gdinwiddie.com/2011/11/07/sad-statements/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/07/sad-statements/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/07/sad-statements/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Sad Statements</title>
    <summary xml:lang="en">I hope this will be done by then. These are sad and scary words to me.  When I hear them in the context of a software development project, I associate them with a project unlikely to meet expectations.  Further, it’s likely that there is no good indicator of what can be delivered when.  With no [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><blockquote><p>I hope this will be done by then.</p></blockquote>
<p>These are sad and scary words to me.  When I hear them in the context of a software development project, I associate them with a project unlikely to meet expectations.  Further, it’s likely that there is no good indicator of what can be delivered when.  With no hard evidence to tell them what’s possible, and to judge the effects of changes they try, people fall back on a strategy of hope. They no longer feel in control of the situation.</p>
<blockquote><p>We’ve done our part.</p></blockquote>
<p>This signals the underlying hopelessness. When you can’t make things come out the way you want, when you can’t even predict how they will come out, one natural response is to give up. Often the cultural expectations don’t allow saying “this project is in trouble.” The person who does so is the person who will attract all the scrutiny. Without the clear data to back up the perception of trouble, why stick your neck out? Others should be noticing the same thing; let them call attention to it. And when things don’t work out as “hoped,” if weve “done our part,” then someone else will get the blame.</p>
<p>You can’t solve a problem that no one wants to see. Instead, we’ve found an acceptable way to fail.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=847&amp;type=feed"/></div>
    </content>
    <updated>2011-11-07T00:37:51Z</updated>
    <published>2011-11-07T10:28:30Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="Collaboration"/>
    <category scheme="http://blog.gdinwiddie.com" term="Progress"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=832</id>
    <link href="http://blog.gdinwiddie.com/2011/11/02/the-code-of-christmas-past/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/02/the-code-of-christmas-past/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/11/02/the-code-of-christmas-past/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">The Code of Christmas Past</title>
    <summary xml:lang="en">When we write code, we’re often thinking about the short term. We need this code to function correctly so we can deliver within our immediate deadlines. I’ve found it important to also think of the long term. Sooner or later, we might encounter our own code, again. I spent a chunk of my career where [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>When we write code, we’re often thinking about the short term. We need this code to function correctly so we can deliver within our immediate deadlines. I’ve found it important to also think of the long term. Sooner or later, we might encounter our own code, again.</p>
<p>I spent a chunk of my career where I often worked solo on projects that might get enhanced every year or two. This taught me a lot about the importance of code readability and what sort of things helped me quickly understand and avoid overlooking important considerations. I’ve also worked on a lot of legacy code bases, so I’m well aware of the pain and problems created by code that’s not readable, or is not organized in a helpful manner.<span id="more-832"/></p>
<p>Last week at the <a href="http://agiledc.org/" target="_blank" title="AgileDC Conference">AgileDC Conference</a>, someone told me they were working on code I had written ten years ago. My first question was, “Are the unit tests still working?” This code was the first production code I ever wrote test-first, and it taught me a lot doing so. I was glad to hear that they had been maintained. When I was writing them, I couldn’t get anyone else interested in test-first development.</p>
<p>Even more gratifying was hearing that they’d recently used some of my code as an example in a discussion of object-oriented programming. The example they’d used was where I’d wrapped an integer in a class. Why would I do that? Because it wasn’t really an integer. It was a database ID. The integer was just an artifact of the database automatically creating ID values using a sequence. It would make no sense to perform arithmetic on it. And there were IDs for various entities that should not be used interchangeably.</p>
<p><img alt="Class diagram for a class wrapping an integer" class="aligncenter size-full wp-image-833" height="304" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/11/NumericID.png" title="NumericID" width="483"/></p>
<p>The integer value was intended to be used only within the Data Access Object that read and wrote the database.</p>
<p>A few years ago, I was asked if I could change an algorithm in some embedded assembly code that I’d written more than ten years prior, and I hadn’t even seen for over ten years. Setting up the development environment wasn’t easy, as much of the hardware was no longer manufactured. The code, however, was not hard to modify. I had implemented the algorithm using state machines and data tables, and had created semi-readable constants for all of the “magic numbers” used.</p>
<p>Code is read much more frequently than it is written. Writing it clearly and expressively pays off when we have to read it next week or next month. Well-written code is also much more likely to be useful for decades into the future. If you write code only for the short term, it’s likely to have only a short life. People will find it necessary to rewrite it rather than maintain it for the long term.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=832&amp;type=feed"/></div>
    </content>
    <updated>2011-11-03T03:01:31Z</updated>
    <published>2011-11-03T02:34:20Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Tools and Techniques"/>
    <category scheme="http://blog.gdinwiddie.com" term="Code"/>
    <category scheme="http://blog.gdinwiddie.com" term="Craftmanship"/>
    <category scheme="http://blog.gdinwiddie.com" term="TDD"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://feedproxy.google.com/~r/AgileInAction/~3/53lNSF5Vgpo/using-spikes</id>
    <link href="http://feedproxy.google.com/~r/AgileInAction/~3/53lNSF5Vgpo/using-spikes" rel="alternate" type="text/html"/>
    <title>Using Spikes</title>
    <summary>The XP practice of ‘spiking’ has been around for a while but there isn’t a whole lot written about it. Why Spike?The XP site states that the purpose of a spike is “to figure out answers to tough technical or design problems”. Spikes are ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The XP practice of ‘spiking’ has been around for a while but there isn’t a whole lot written about it. Why Spike?The XP site states that the purpose of a spike is “to figure out answers to tough technical or design problems”. Spikes are ...<img height="1" src="http://feeds.feedburner.com/~r/AgileInAction/~4/53lNSF5Vgpo" width="1"/></div>
    </content>
    <updated>2011-11-02T13:30:08Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.energizedwork.com/weblog/2011/11/using-spikes</feedburner:origLink>
    <source>
      <id>http://www.energizedwork.com/weblog</id>
      <logo>http://creativecommons.org/images/public/somerights20.gif</logo>
      <author>
        <name>Gus Power</name>
        <email>noemail@noemail.org</email>
      </author>
      <link href="http://www.energizedwork.com/weblog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/AgileInAction" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://creativecommons.org/licenses/by/2.0/" rel="license"/>
      <rights>http://creativecommons.org/licenses/by/2.0/</rights>
      <subtitle>This is the blog of Simon Baker and Gus Power of Energized Work.</subtitle>
      <title>Energized Work | agile in action</title>
      <updated>2011-11-18T14:16:58Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/10/24/Im-sorry-I-didnt-give-you-a-chance-each_cons/3452</id>
    <link href="http://www.codeodor.com/index.cfm/2011/10/24/Im-sorry-I-didnt-give-you-a-chance-each_cons/3452" rel="alternate" type="text/html"/>
    <title>I'm sorry I didn't give you a chance, #each_cons</title>
    <summary>With a name like each_cons , I thought you were going to iterate through all the 
permutations of how I could construct a list 
you operated upon. For example, I thought
 
 
  [ 1 , 2 , 3 , 4 ] . each_cons  do  | x |  # I did not notice the required argument 
   puts x. inspect 
  end 
   
 
 
would output: 
 
 
 [[1,2,3,4], []] 
 [[1,2,3], [4]] 
 [[1,2], [3,4]] 
 [[1], [2,3,4]] 
 [[], [1,2,3,4]] 
 
 
So when I needed to find the ...</summary>
    <updated>2011-10-24T14:45:58Z</updated>
    <category term="Ruby"/>
    <category term="Programming"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/10/17/Algorithmically-recognizing-the-staff-in-sheet-music/3451</id>
    <link href="http://www.codeodor.com/index.cfm/2011/10/17/Algorithmically-recognizing-the-staff-in-sheet-music/3451" rel="alternate" type="text/html"/>
    <title>Algorithmically recognizing the staff in sheet music</title>
    <summary>It's a small step, but emcee-3PO can now identify the 
staves in an image of sheet music for my single test case of "My Darling Clementine." I need to include 
hundreds more test cases, and I plan to when I implement code to make the tests mark the sheet music 
with what emcee3po detected so I can visually inspect the accuracy. 
 
 Ichiro Fujinaga's "Optical Music Recognition using Projections" 
(PDF)
explains the process in detail, but it turns out to be relatively simple.
 
To locate the staves:
 
  
   Do a y-projection on the image. 
  ...</summary>
    <updated>2011-10-17T21:20:33Z</updated>
    <category term="AI/Machine Learning"/>
    <category term="Programming"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/10/scrum-master-tales-more-interruptions.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/ahMUXKS-IAM/scrum-master-tales-more-interruptions.html" rel="alternate" type="text/html"/>
    <title>Scrum Master Tales – More Interruptions</title>
    <summary>Part of an ongoing series called Scrum Master Tales. The series covers ScrumMaster John and his team as they develop an online bookstore. Last time we read about our team they were suffering from a very high rate of interruptions after the product had gone live: The Story of Production Support. After another couple of [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.sxc.hu/photo/1240397" target="_blank" title="Interruptions Prohibited"><img align="left" alt="Prohibitory traffic sign" src="http://www.sxc.hu/pic/m/m/mz/mzacha/1240397_prohibitory_traffic_sign.jpg" style="margin: 0px 5px 5px 0px; display: inline; float: left;"/></a>Part of an ongoing series called <a href="http://agilepainrelief.com/notesfromatooluser/category/agile/scrum/scrummaster-tales">Scrum Master Tales</a>. The series covers ScrumMaster John and his team as they develop an online bookstore.</p><p>Last time we read about our team they were suffering from a very high rate of interruptions after the product had gone live: <a href="http://agilepainrelief.com/notesfromatooluser/2011/10/scrummaster-tales-the-story-of-production-support.html">The Story of Production Support</a>.</p><p>After another couple of sprints using the one “person off” strategy the production support problem wasn’t completely fixed but the team was starting to spend less time on support. However John started to notice a new problem, even though production support wasn’t the primary cause there were still alot of interruptions, he still noticed that team members were being interrupted (a mix of drop by, phone calls and email).</p><p>John spent the next few days just taking notes on the interruptions. Discounting friends dropping by for coffee or smokes and calls on personal phones (presumably family or friends), he could still see that his team members were being bothered 2-3 times a day. Taking the best notes he could without outright spying on people, some of the interruptions were obvious:</p><ul><li>a couple of people called Martin every time there was a database problem (big or small)</li><li>team members attended meetings (corporate, HR, …) sometimes more than one</li><li>Tonia (the world’s best Agile Tester) has become a focus for Agile testing questions with people stopping by her desk 2-3 times a day to ask questions about Agile testing.</li></ul><p>To track these issues John didn’t need to spy, he just watched the flow of people in and out of the team space, listened for phone calls and read the email trail that filled his inbox.</p><p>Once John noticed the issue he mentioned into a standup and asked people to start tracking what sort of interruptions they had. In the retrospective the team discussed sources of interruptions (again using a <a href="http://www.energizedwork.com/weblog/2006/10/timeline-retrospective" target="_blank">timeline</a> as reminder).<span id="more-1291"/></p><p>Discoveries:</p><ul><li>Corporate meetings that don’t aid directly in the delivery of software</li><li>Several team members are the only ones who know their respective areas (Database Architecture, QA), as a result for issues big or small everyone asks them for help.</li><li>People outside of the development group don’t appreciate the cost of interrupting the team. In particular they don’t understand the costs of context switching (allow 20-30 minutes to recover if working on a complex task).</li></ul><h1>Analysis</h1><p>Caveat Emptor: Remember the Lean Principle: “Optimize the Whole”. In this case ensure that the strategies benefit the whole system and not just one team.</p><p>The key issue at play is that your brain can sustain 4-5 hrs of focused “<a href="http://en.wikipedia.org/wiki/Flow_(psychology)" target="_blank">Flow</a>” work in a day. The question at hand is how can we help team members utilise that time?</p><p>First the team needs to make the cost of the interruptions visible to the organization. Very often these things happen because people think about their own needs: i.e. Martin knows the database and can answer my question quickly. vs. I can spend 15 minutes trying to figure things out for myself before turning to Martin yet again. <em>This assumes the person with the question isn’t on Martin’s team, perhaps not even in the development organization.</em></p><p>Things the team can do:</p><ul><li>Implement Core Hours – example 9:30 – 3:30 (with a break for lunch). During this time the team will focus on development (includes Test/Documentation/…) work. Interruptions from other development teams are expected but people from outside development are asked to wait. <em>This does risk setting up an us vs. them relationship so it has to be handled well. The key is good communications: explain the problem, give specific example of the effects, tell people how core hours will work and seek their feedback after 2-3 sprints.</em></li><li>Email is turned off during core hours. Its best if email is checked ~3 times a day.</li><li>Pairing to share knowledge i.e. people from other teams should pair with Martin and Tonia to learn more about the specifics of their work.</li><li>Run lunch and learns to share knowledge that’s known by only key people</li><li>Reduce committee involvement. For corporate meetings and other events that won’t help the team deliver ask how many people from <strong>all of development</strong> need to attend.</li><li>Move meetings outside core hours. Most meetings don’t require the same amount of mental energy as development. Consider moving them after core hours.</li><li>Consider removing company phones from team members desks. <em>This may just shift the problem to people’s cell phones.</em></li><li>Get people to spend at least 15 minutes trying to solve their own problem before asking for help. <em>If nothing else this will deepen a persons knowledge in that area making it less likely they will have to call for help next time.</em></li></ul><p>Perhaps most important make the cost of interruptions visible to the organization. I often use signs at the edge of the team area.</p><p><em>Update: When I say development team I don’t mean coding I mean the people involved to getting the application out the door (Coding, QA, Docs, UX, … – assuming you have separate roles still).</em></p><p><em><span style="font-size: xx-small;">Image Credit: MZacha “</span></em><a href="http://www.sxc.hu/photo/1240397" target="_blank"><em><span style="font-size: xx-small;">Prohibitory Traffic Sign</span></em></a><em><span style="font-size: xx-small;">”</span></em></p><p>Next up:<br/> An aside on tracking sprint and release progress, burndowns and interruptions</p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/ahMUXKS-IAM" width="1"/></div>
    </content>
    <updated>2011-10-13T16:12:03Z</updated>
    <category term="Scrum"/>
    <category term="ScrumMaster Tales"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/10/scrum-master-tales-more-interruptions.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:24Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/10/12/plupload-rails3-available-as-gem-works-on-31/3450</id>
    <link href="http://www.codeodor.com/index.cfm/2011/10/12/plupload-rails3-available-as-gem-works-on-31/3450" rel="alternate" type="text/html"/>
    <title>plupload-rails3 available as gem; works on 3.1</title>
    <summary>plupload-rails3 is ...</summary>
    <updated>2011-10-12T19:58:34Z</updated>
    <category term="Rails"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=828</id>
    <link href="http://blog.gdinwiddie.com/2011/10/10/5-minutes-to-process-improvement-success/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/10/10/5-minutes-to-process-improvement-success/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/10/10/5-minutes-to-process-improvement-success/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">5 Minutes to Process Improvement Success</title>
    <summary xml:lang="en">Most of my recent writing has not yet been published. That, and work on the upcoming AgileDC Conference and Agile India beyond that, have meant relatively little output on my blog. I apologize for that. I’d like to share with you an interview conducted by Bill Fox for his 5 Minutes to Process Improvement Success [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>Most of my recent writing has not yet been published. That, and work on the upcoming <a href="http://agiledc.org/" target="_blank" title="AgileDC Conference">AgileDC Conference</a> and <a href="http://agileindia2012.agilealliance.org/" target="_blank" title="Agile India 2012">Agile India</a> beyond that, have meant relatively little output on my blog. I apologize for that.</p>
<p>I’d like to share with you an interview conducted by Bill Fox for his <a href="http://5minutespisuccess.com/" target="_blank" title="Bill Fox's 5 Minutes to Process Improvement Success">5 Minutes to Process Improvement Success</a> project. My interview, “Measure Progress in a Way that’s Visible and Reliable,” is found on page 69 of the PDF.  You’ll also find interesting interviews with Karen Base, Kevin Schaaff, Hillel Glazer, Scott Ambler, Neil Potter, Bob Payne, Mike Bonamassa, Mario Hyland, Jeff Dalton, Paul E. McMahon, Karl Wiegers, Mary Lynn Penn, Ally Gill, Alan Shalloway, and Tom Cagley. And there are more to come in the future.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=828&amp;type=feed"/></div>
    </content>
    <updated>2011-10-08T15:35:27Z</updated>
    <published>2011-10-10T12:20:33Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Uncategorized"/>
    <category scheme="http://blog.gdinwiddie.com" term="Progress"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/10/neuro-agile-quick-links-2.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/x0eVvAh2qbc/neuro-agile-quick-links-2.html" rel="alternate" type="text/html"/>
    <title>Neuro Agile Quick Links #2</title>
    <summary>At Agile2011 Kevlin Henney provactively suggested that we don’t learn from mistakes (see: Why we don’t learn from our mistakes, The Optimism Bias), suggesting that we learn more from our successes. This seems to against the core agile principle that we learn from our mistakes (i.e. my motto “Fail Fast” etc). It also seemed to contradict [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.agilepainrelief.com/images/2011/10/Missing-the-target.jpg"><img align="left" alt="" border="0" height="180" src="http://www.agilepainrelief.com/images/2011/10/Missing-the-target_thumb.jpg" style="background-image: none; margin: 0px 5px 5px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="" width="240"/></a>At Agile2011 Kevlin Henney provactively suggested that we don’t learn from mistakes (see: <a href="http://www.wired.co.uk/news/archive/2009-08/12/why-we-dont-learn-from-our-mistakes">Why we don’t learn from our mistakes</a>, <em><a href="http://www.time.com/time/health/article/0,8599,2074067-4,00.html" target="_blank">The Optimism Bias</a></em>), suggesting that we learn more from our successes. This seems to against the core agile principle that we learn from our mistakes (i.e. my motto “Fail Fast” etc). It also seemed to contradict the message in Linda Rising’s keynote that followed Kevlin. This makes me very happy to have seen a pair of articles in the past few days that bridge the gap: <a href="http://www.sciencedaily.com/releases/2011/09/110930153048.htm">How Your Brain Reacts to Mistakes Depends On Your Mindset</a> (a short summary from Science Daily) and <a href="http://m.wired.com/wiredscience/2011/10/why-do-some-people-learn-faster-2/">Why Do Some People Learn Faster?</a> (a longer item from Jonah Lehrer that ties several ideas together). The upshot both Kevlin and Linda were right. We do learn from our mistakes but not everyone has the mindset to do it.</p><p><span id="more-1287"/></p><p><a href="http://www.sciencedaily.com/releases/2011/09/110928110012.htm">High Social Status Makes People More Trusting, Study Finds</a> – trust is important in the world of Agile software development and this summary from Science Daily gives some more insights as when trust is conferred.</p><p><a href="http://www.sciencedaily.com/releases/2011/09/110922102236.htm">Men and Women Cooperate Equally for the Common Good, Study Finds</a> – its a well known fact that women are better than men when it comes to cooperation. This item summarizes a meta-study, which does make clear there are still some differences between the sexes. (Also Science Daily)</p><p><a href="http://www.spring.org.uk/2011/09/the-problem-with-narcissistic-leaders.php">The Problem With Narcissistic Leaders</a> (Jeremy Dean @ PsyBlog) – talks about the negative effects of Narcissistic leaders – they reduce the flow of information between groups but perhaps most insidiously the group members may think the narcissists were doing a good job. See also <a href="http://www.spring.org.uk/2010/02/why-we-loves-narcissists-at-first.php">Why We Love Narcissists (At First)</a>.</p><p><a href="http://www.google.com/hostednews/ukpress/article/ALeqM5jByA8cDMvbsZaFm7Y5TFW_zh95tQ?docId=N0782241317832341656A">Playing games ‘engages whole brain’</a> – (from the UK Press Association), the short item is provocative and appears to support the use of Agile Games/Simulations in training, coaching and improving engagement in solving problems. Having struggled to read the paper (neither neuroanatomy nor statistics are specialities of mine), I can see how the UK Press drew its conclusion at this stage I would like to see the follow-up research from <a href="http://timvickery.cogneurolab.org/">Timothy Vickery</a> to see where this applies and what benefits we can claim.</p><p>This is part of an ongoing series I refer to as Neuro Agile – which is my attempt to find ideas from the world of neuroscience that are applicable to world of software development.</p><p><em>Update Added another link to better represent Kevlin’s point: </em><em><a href="http://www.time.com/time/health/article/0,8599,2074067-4,00.html" target="_blank">The Optimism Bias</a></em></p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/x0eVvAh2qbc" width="1"/></div>
    </content>
    <updated>2011-10-06T19:21:43Z</updated>
    <category term="Links"/>
    <category term="NeuroAgile"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/10/neuro-agile-quick-links-2.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:24Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/10/scrummaster-tales-the-story-of-production-support.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/nfsYJ2NPA4s/scrummaster-tales-the-story-of-production-support.html" rel="alternate" type="text/html"/>
    <title>ScrumMaster Tales – The Story of Production Support</title>
    <summary>When we left John and the team they were just getting the shipping features ready and were waiting to go live with the site. This turns out to be a blessing and a curse. Its a blessing because the business is making money, a curse because with it come support issues. John spends some of [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.sxc.hu/photo/582114"><img align="left" alt="Mini Trip&#xE9; 11 - Image Credit: Leo Cinezi http://www.sxc.hu/photo/582114" src="http://www.sxc.hu/pic/m/c/ci/cinezi/582114_mini_trip_11.jpg" style="margin: 0px 5px 5px 0px; display: inline; float: left;" title=""/></a>When we left John and the team they were just getting the shipping features ready and were waiting to go live with the site. This turns out to be a blessing and a curse. Its a blessing because the business is making money, a curse because with it come support issues.</p><p>John spends some of his time and energy just watching the team and their flow everyday. In the first two sprints after the release the team struggles and fails to meet its planning commitments. At first he’s ok and just says its the inevitable post release hiccups (<em>I don’t agree with John on this one, its not inevitable I think it was a first warning sign – ed</em>), but when its clear that its continuing into the 3rd sprint he starts to get worried. John notices that team members are being interrupted often several times a day. Most of the interruptions are support issues.</p><p><span id="more-1281"/></p><p>During the retrospective John chooses a <a href="http://www.energizedwork.com/weblog/2006/10/timeline-retrospective">timeline</a> to help the team remember/discover what happened in the past two weeks. Its worse than even John realized, team members spent most of their time on Production Support. After some more discussion they discovered there were three major classes of issue:</p><ul><li>Issues where a team member just had to help support understand how to help the customer</li><li>Issues that required a small code change and could be made by most team team members</li><li>Issues that required the specialized skills of one or two team members</li></ul><h1>Analysis</h1><p>The team can do a number of things:</p><ul><li>Choose one team member per sprint and they become the first point of contact for support. Some issues they can deal with themselves and others they will have to find help. <em>NB this job should rotate so its never just one person.</em></li><li>If there are multiple teams, in any one sprint one team takes the support hit. <em>This is the same strategy as the first at scale.</em></li><li>Wait until the days end before interrupting another team member for help on a support issue</li><li>Monitor the production support issues and track their effects on the teams productivity. Example usually in the days that follow handling a support issue the team is able to complete fewer stories. Remember its not just the cost of fixing the issue that needs to be tracked, but additional costs: deployment, <a href="http://www.infoq.com/articles/multitasking-problems">multitasking cost</a>,</li><li>Based on historical needs acknowledge in planning that there is a tax of 20-30% to be paid for support. <em>This is my least favourite solution because it doesn’t help make the situation better it just increases awareness of it.</em></li></ul><p>No matter what we every time a support issue comes up, do a <a href="http://www.energizedwork.com/weblog/2006/01/root-cause-analysis-using-5-whys">root cause analysis</a> or use <a href="http://www.crisp.se/lean/a3-template">A3 Problem solving</a> to identify the real issue and reduce the number times it hits the team in the future. In addition we have to help the organization see the costs of what is happening, the support calls might be what the organization needs at the moment but needs feedback as to the impact.</p><p><em>Update: One of my readers (<a href="http://ru.linkedin.com/pub/sergey-kotlov/31/966/690" target="_blank">Sergey Kotlov</a>) pointed out that in some cases the frequent production support issues are of a database/admin support type and suggest that the team has missed an opportunity to provide support with tools to help. He’s absolutely right, in that case the PO might want to prioritize work to create support tools so the development team can stay focused. Thanks to Sergey for his suggestion.</em></p><p>Image Credit:  Mini Tripé 11 – Leo Cinezi http://www.sxc.hu/photo/582114</p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/nfsYJ2NPA4s" width="1"/></div>
    </content>
    <updated>2011-10-04T19:19:25Z</updated>
    <category term="Scrum"/>
    <category term="ScrumMaster Tales"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/10/scrummaster-tales-the-story-of-production-support.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:23Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-144.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-144.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #144: Cost vs. Benefit</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>29 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/f957e5a23fa9e73bd019c4d62abd6b74f0d93b28">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-144.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-29T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-143.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-143.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #143: File → Save As...</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>27 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/478c9c2cae4ec5fd23d9b29b7d17cccc7dbc16a8">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-143.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-27T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=825</id>
    <link href="http://blog.gdinwiddie.com/2011/09/26/calling-all-coaches-and-mentors/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/26/calling-all-coaches-and-mentors/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/26/calling-all-coaches-and-mentors/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Calling All Coaches and Mentors</title>
    <summary xml:lang="en">If you coach Agile teams, if you mentor your peers in better software development practices and processes, or if you are just learning to do these things, the Agile India Coaching and Mentoring stage needs your help.  Please propose sessions about your work and your experiences.</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>If you coach Agile teams, if you mentor your peers in better software development practices and processes, or if you are just learning to do these things, the <a href="http://submit2012india.agilealliance.org/node/8734" target="_blank">Agile India Coaching and Mentoring stage</a> needs your help.<em/>  Please propose sessions about your work and your experiences.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=825&amp;type=feed"/></div>
    </content>
    <updated>2011-09-26T19:48:01Z</updated>
    <published>2011-09-26T19:48:01Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="Conferences"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-142.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-142.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #142: Good Enough</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>22 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/5c57708aaa02cf8b7b5ab2c2d125afd1b4d85834">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-142.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-22T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-141.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-141.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #141: Domain-Specific Language</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>20 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/ce0b24252871d71f7fbab04d12b0e9f1cd5ccb24">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>This episode refers to <a href="http://www.orfjackal.net/">Esko Luontola's</a> video commentary on <a href="http://jamesshore.com/Blog/Lets-Play/Episode-132.html">Episode 132</a>. His commentary is below and <a href="https://github.com/orfjackal/lets_play_tdd/commit/20f4074890b9c37187b5d9729cddb3dd1e854858">the source code is here</a>. You can find <a href="http://www.orfjackal.net/lets-code">his Let's Code series here</a>.</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-141.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-20T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=820</id>
    <link href="http://blog.gdinwiddie.com/2011/09/19/independent-interpretation/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/19/independent-interpretation/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/19/independent-interpretation/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Independent Interpretation</title>
    <summary xml:lang="en">Many organizations segregate their programmers and testers in order to achieve independent validation of requirements.  If the system is tested according to an independent interpretation of the requirements than used for implementation, then errors in those interpretations may be detected. This course of action is obviously prudent when the requirements are handed down to the [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>Many organizations segregate their programmers and testers in order to achieve independent validation of requirements.  If the system is tested according to an independent interpretation of the requirements than used for implementation, then errors in those interpretations may be detected.</p>
<p>This course of action is obviously prudent when the requirements are handed down to the development organization in the form of a document. <span id="more-820"/>It does not, of course, detect errors in the requirements document itself. Nor does it detect errors of interpretation if both the programmers and the testers read the requirements in the same, incorrect way. When there is significant distance between writer and readers, this is distressingly common.</p>
<p>It’s difficult work to write clearly in prose. Publishing industries have developed the roles of editor and proofreader to check documents so that erroneous or unclear segments may be rewritten before they’re seen by potential readers. People who write requirements documents are frequently better versed in the desired functionality than in the process of writing them. And, they frequently don’t have so much help.</p>
<p>It’s also difficult to precisely interpret the writings of others, particularly of people you don’t know. A word may have an obvious and precise meaning in the context of the business, but an obvious and different meaning in the context of software development. In the fields of literature and law, expert interpreters may spend years or centuries honing a consensus interpretation of the written word. In software development, we rarely have time for lengthy discussion of complicated passages. If the writing is ambiguous or contradictory, faithful interpretation of the intent is even less certain.</p>
<p>We often seek clarification of the requirements to back up our reading of the document. Sometimes it’s difficult to get sufficient access to the document authors, and the programmers and testers may turn to each other for what clarification they each offer. I’ve had testers from a different company ask me how my software was supposed to work because they had insufficient access to the requirements document author.</p>
<p>Cross-checking the interpretation of programmers and testers punches holes in the wall of independence, of course. This sad state of affairs is a major source of defects in which the software “works as designed” but not as desired.</p>
<p><em>We can do better than this!</em></p>
<p>Instead of the business representative writing the requirements and handing them off as a document, imagine the business representative telling them to a programmer and tester (everyone taking notes as needed to keep things from being forgotten). Imagine the programmer and tester testing their understanding in real time with questions made directly to the business representative while things are still fresh on everyone’s mind. In doing so, they can not only challenge each others interpretation of the requirements, but also the assumptions of the business representative. Together they can hone the requirements to a sharper edge than possible when working separately.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=820&amp;type=feed"/></div>
    </content>
    <updated>2011-09-18T01:25:56Z</updated>
    <published>2011-09-19T12:00:24Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Customer Collaboration"/>
    <category scheme="http://blog.gdinwiddie.com" term="Requirements"/>
    <category scheme="http://blog.gdinwiddie.com" term="Testing"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/09/scrum-master-talesthe-story-of-the-changing-needs.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/eDGDUVx6PfA/scrum-master-talesthe-story-of-the-changing-needs.html" rel="alternate" type="text/html"/>
    <title>Scrum Master Tales–The Story of the Changing Needs</title>
    <summary>Caveat – given the way I’m writing this series occasionally things will happen out of order, i.e. I will be reminded of points I wish I had made earlier. John, Sue and the rest of the team have started another sprint this time they committed to fewer stories and part way through the sprint are [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.agilepainrelief.com/images/2011/09/Stories-Dickens.jpg"><img align="left" alt="Stories-Dickens" border="0" class="alignright" height="180" src="http://www.agilepainrelief.com/images/2011/09/Stories-Dickens_thumb.jpg" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-color: initial; border-width: 0px; margin: 5px;" title="Stories-Dickens" width="240"/></a>Caveat – given the way I’m writing this series occasionally things will happen out of order, i.e. I will be reminded of points I wish I had made earlier.</p><p>John, Sue and the rest of the team have started another sprint this time they committed to fewer stories and part way through the sprint are well on the way to getting stories completed. This time they committed to 8 stories with sizes ranging from 2 – 8 points. Every couple of days they get a story accepted. Things are going awesomely well.</p><h1>Story</h1><ul><li>As a Canadian book buyer I want to Amazon to ship my book to Canada so I can get my book home – <strong>Story Points</strong>: 8</li><li>As a Canadian book buyer I want to Amazon to calculate the import duty on my books – <strong>Story Points</strong>: 3</li><li>As a Canadian book buyer living in Ontario I want Amazon to calculate the local sales tax (HST) – <strong>Story Points</strong>: 2</li><li>…</li></ul><p><span id="more-1270"/></p><p>Five days into the sprint Sue comes to the team and asks to add a new story. One that the team has previously sized as 5 Story Points: As an American book buyer I would like to use premium shipping so I can get my books sooner. She says its really important because she’s getting a lot of pressure to help get books to American customer’s sooner. John shots back that Scrum team’s make a commitment for the Sprint and once set can’t be changed without cancelling the sprint. Sue continues to press saying this is a really important story.</p><h1>Analysis</h1><p>What are the team’s options?</p><ul><li>They can refuse.</li><li>If its an occasional event the team might trade out a larger story for smaller story, that hasn’t yet been started. This respects the fact that even though it hasn’t “started” the story effort has gone into analysis/design etc. In addition it recognizes that no switch is free.</li><li>Small changes to existing stories just happen. Sometimes as we gain a deeper understanding of a story and see it implemented the acceptance criteria or layout change. This is a good moment to remember the ‘N’ in INVEST (**link**). Stories should be negotiable. Small changes should probably just be accommodated. Larger changes maybe in the scope of the original story but in that case we might have to drop another story.</li><li>Cancel the Sprint – If a radical change in direction is required. <em>Not in this case but perhaps the company has been acquired.</em></li></ul><div>Update:</div><div>Clearly in the example the Story isn’t “pressing” in the context I’ve imagined I can’t imagine anything that would be so pressing that the PO couldn’t wait for another sprint. Maybe a good bug.</div><div>Also if this happens more than very very rarely we would want to do some root cause analysis and see why the PO’s needs change so frequently. Maybe there is some external pressure that we can’t see (Investors, other stakeholders). If the pressure means that the PO will need to make changes on a regular basis then that is a hint that the team might need shorter sprints.</div> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/eDGDUVx6PfA" width="1"/></div>
    </content>
    <updated>2011-09-16T01:14:47Z</updated>
    <category term="Scrum"/>
    <category term="ScrumMaster Tales"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/09/scrum-master-talesthe-story-of-the-changing-needs.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:24Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-140.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-140.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #140: Cleaning Up the Menu Code</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>15 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/c333bf4387dfafd71f824184242135681ba6913b">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-140.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-15T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-139.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-139.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #139: File → Close</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>13 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/a1ca5f16a804495bee91d92ed9c3fe84168e30b8">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-139.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-13T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://me.andering.com/?p=860</id>
    <link href="http://me.andering.com/2011/09/11/a-puzzled-skeptics-trip-to-ale2011/" rel="alternate" type="text/html"/>
    <title>A puzzled skeptics trip to ALE2011</title>
    <summary>As a frustrated and puzzled skeptic I went to the Agile Lean Europe conference to work on my frustration and puzzles. As a frustrated and puzzled skeptic I returned. To my delight with different frustrations, puzzles and some highlights. Regardless of what I say next: creating a pan-european agile/lean event that is not tied to [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>As a frustrated and puzzled skeptic I went to the Agile Lean Europe conference to work on my frustration and puzzles. As a frustrated and puzzled skeptic I returned. To my delight with different frustrations, puzzles and some highlights.</p>
<p>Regardless of what I say next: creating a pan-european agile/lean event that is not tied to one of the schools of thought, nor any functional silo (looking at you, coachcamps and testing days!) is a major achievement. I tried to pull it off with about twenty other folks a couple of years ago, and failed (early, but nevertheless. It is not something I bake cake for <img alt=";)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_wink.gif"/>  ).</p>
<p>First highlight: I found a community that welcomes skepticism without suffocating it. Thanks, amongst others, to @OlafLewitz and @ojuncu for open discussion on twitter beforehand, and to those who offered help instead of rotten tomatoes after I threatened to put trainers and coaches out of a job in a lightning talk <img alt=":)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_smile.gif"/> . And those who took my call for more coaches combining hands-on work with coaching (too?) seriously. More on that in follow up posts.</p>
<p>Although many of the scheduled talks rehashed things I hoped would have vanished from agile / lean conference agenda’s to make place for new things, I was pleasantly surprised by a number of talks. (See below in talks)</p>
<h3>Building a car using a distributed team.</h3>
<p>Wikispeed is a collaborative, distributed effort to build a fuel efficient car (one that is also efficient at high speed, unlike some other fuel efficient car). Thorsten Kalnin described how they use whatever works to get there. At this moment that includes for instance aspects of kanban, scrum, using object oriented principles for mechanical engineering and finding storage boxes that can be rented for cheap, while still being suitable to do engineering work.</p>
<p>I’m listening to vinylbaustein’s wikispeed dreams while writing this. Finding new music at a conference, what do you want more <img alt=";)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_wink.gif"/><br/>
 <span><a href="http://soundcloud.com/vinylbaustein/vinylbaustein-wikispeed-dream">Vinylbaustein – WIKISPEED dream – SGT01 mix</a> by <a href="http://soundcloud.com/vinylbaustein">vinylbaustein</a></span></p>
<p>The <a href="http://youtu.be/lzOhTOznksM">inside wikispeed</a> video is worth watching if you want to see more:</p>
<h3>Your baby is ugly</h3>
<p>Seeing Stephen Parry in action again, during his talk and afterwards during dinner. <a href="http://www.agile42.com/en/blog/2011/09/10/awesome-coach-week-stephen-parry/">Olaf Lewitz has described other aspects of Stephens’ session</a>. What I particularly liked was ‘your baby is ugly’ – get employees to analyze the companies performance as seen through their customers’ and describe that to their peers and managers (also mostly employees, lets’ not forget that). This is probably a lot more effective than outsiders saying that (e.g. Yours truly tweeting about how SAP is going lean but their products prevent their clients from evolving), and I guess it takes a lot of time and patience. Something I would like to try, nevertheless.</p>
<h3>A3.</h3>
<p>I stayed out of the <a href="http://t.co/LouV1rU">Claudio Perrone’s A3 presentation</a> after seeing the intro slides from outside which looked so heroic (Big Agile Transition), that I was afraid I would not be able to shut up during the presentation and heckle ehm excite. Turns out the rest of the slide deck is a lot more to my liking, including a pragmatic use of the satir change model somewhere in the middle. So I was wrong. Looking forward to see the video of it.</p>
<p>In the meantime I would recommend reading <a href="http://www-personal.umich.edu/~mrother/Homepage.html">Toyota Kata by Mike Rother</a>. I took it on the road this week and am pleased by how it does not try to make this kind of open ended coaching look easy, and uses storytelling plus questions to you, the reader, to show how this might work in your practice.</p>
<h3>One more for the skeptic</h3>
<p>It was only talks. Tip for next years’ organisers: if you want more hands-on sessions make some space for scheduled sessions that last longer than thirty minutes, some sessions that require preparation don’t magically happen in open space. Stephan Eggermont and I enjoy the challenge of seeing what of a three hour session we can meaningfully cram in thirty minutes, but we may be the exception. It seemed most people were watching as opposed to downloading the zip and following along.</p>
<p>I was looking forward to ‘exciters’, Walldorf and Statler from the muppets were given as example, and bar tables were placed in front of the presentations for people to heckle from. I haven’t seen that happen, and didn’t dare to either, preferring the safety of my twitter feed instead <img alt=";)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_wink.gif"/> . I asked Stephan Eggermont to heckle during my lightning talk, which he did, but I was so focused I didn’t hear him do it…</p>
<p>It seems the open space explanation left out the butterflies. When I described my open space experience to another participant at the end, he stared blankly at me. It also seemed mostly open space veterans where butterflying and bumblebeeing around, as well as applying the law of two feet (sorry, the politically correct wording used in the opening was so complicated I failed to remember it <img alt=";)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_wink.gif"/> . Shorter PC versions I’ve seen include ‘the law of motion’ or ‘when in doubt, move out’ ).</p>
<p>So I butterflied, mostly, except to host an open space session because someone wanted to pick my brain about session selection processes. The best suggestion in that session came from @LLillian, who stated the obvious thing I’d missed before: besides playing a perfection game, encourage session organizers to Ask for Help, to lower the barrier for new session organisers. Duh. Why didn’t I think of that before! Other than that, it struck me that few of the open space topics were original. It seems we have been struggling with the same problems for a couple of years. Maybe it is rotation of participants, maybe we are asking the wrong questions. Of course, I could have taken responsibility by posing a question as a session. It seems the stuff I’m struggling with right now is in a stage where I don’t know how to formulate the questions yet. It seems grumpy tweets, responses to that and hallway discussions help me move forward <img alt=":)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_smile.gif"/> .</p>
<p>It will probably take a week or so to pinpoint my newfound frustrations and puzzles, at least I feel my time in Berlin was well spent. Especially now the <a href="http://www.qwan-learning-community.com" target="_blank">QWAN Learning Community</a> has some more first followers, I got over the scariest two minutes presenting I’ve done in quite a while, and I got useful feedback on the idea from various people. So thanks everybody for making it happen.</p>
<div class="shr-publisher-860"/></div>
    </content>
    <updated>2011-09-11T16:21:59Z</updated>
    <category term="people &amp; systems"/>
    <category term="agile"/>
    <category term="community"/>
    <category term="conference"/>
    <category term="lean"/>
    <author>
      <name>Willem</name>
    </author>
    <source>
      <id>http://me.andering.com</id>
      <link href="http://me.andering.com/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://me.andering.com" rel="alternate" type="text/html"/>
      <subtitle>Systems thinking about software development</subtitle>
      <title>me.andering - Willem van den Ende</title>
      <updated>2011-10-29T14:17:13Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/9/9/How-to-save-your-ass-when-tech-support-tells-you-the-best-way-to-solve-your-problem-is-to-start-over-with-a-new-server/3438</id>
    <link href="http://www.codeodor.com/index.cfm/2011/9/9/How-to-save-your-ass-when-tech-support-tells-you-the-best-way-to-solve-your-problem-is-to-start-over-with-a-new-server/3438" rel="alternate" type="text/html"/>
    <title>How to save your ass when tech support tells you the best way to solve your problem is to start over with a new server</title>
    <summary>If you follow me on twitter , you already know I ran into some trouble compiling Ruby and OpenSSL the other day. Calling it "Some Trouble" might be a bit of an understatement. The next morning, I likened it to this title bout:
 
  
 
Not only was Ruby and OpenSSL giving me trouble, in my quest to get it working, I totally messed up everything that depended on OpenSSL .
  
Email with TLS? Gone. SSH? Yep, gone as well.
 
Tech support's first recommendation was to requisition a new server.
 
  
 
Of course I wasn't going ...</summary>
    <updated>2011-09-09T19:43:40Z</updated>
    <category term="Mac OS"/>
    <category term="Linux"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/09/scrummaster-talesthe-story-of-an-incomplete-sprint.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/9RYM15gFxB4/scrummaster-talesthe-story-of-an-incomplete-sprint.html" rel="alternate" type="text/html"/>
    <title>ScrumMaster Tales – the Story of an Incomplete Sprint</title>
    <summary>Last time we met John (ScrumMaster) and the team, they had just discovered that their backlog had many large stories and no-estimates. The team delayed the start of their first sprint, did some Product Backlog Grooming. When we meet them again their first sprint in is in progress. Story Coming out of the planning meeting [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://agilepainrelief.com/notesfromatooluser/2011/07/the-scrummaster-tales.html"><img align="left" alt="puzzle" border="0" height="180" src="http://www.agilepainrelief.com/images/2011/09/puzzle.jpg" style="background-image: none; margin: 0px 5px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="puzzle" width="240"/>Last time</a> we met John (ScrumMaster) and the team, they had just discovered that their backlog had many large stories and no-estimates. The team delayed the start of their first sprint, did some <a href="http://www.romanpichler.com/blog/product-backlog/grooming-the-product-backlog/">Product Backlog Grooming</a>. When we meet them again their first sprint in is in progress.</p><h1>Story</h1><p>Coming out of the planning meeting the team committed to five stories totalling 42 Story Points. Their overall Sprint Goal get the customer’s book home:</p><ul><li>As a book buyer I want to add my book to my shopping cart so that I can purchase it – <strong>Story Points</strong>: 13</li><li>As a book buyer I want to tell Amazon where I want my book shipped to so I can get it – <strong>Story Points</strong>: 8</li><li>As a book buyer I want to see the price for my books with shipping and tax so I can see whether I’m ok with the price – <strong>Story Points</strong>: 3</li><li>As a book buyer I want to choose my payment type (MasterCard, Visa, Amex or Paypal) so that I can pay for my book(s) – <strong>Story Points</strong>: 3</li><li>As a book buyer I want to pay for my book(s) so I can get it home – <strong>Story Points</strong>: 13</li><li>As a book buyer I want a confirmation message so I can see that the purchase was successful – <strong>Story Points</strong>: 2</li></ul><p><span id="more-1263"/></p><p>The team (7 team members including John) started work on the first four stories right away (27 Story Points in total). Tonia the team’s on QA specialist spent the first few days with Brad (the BA) clarifying the acceptance criteria for the stories and designing her manual test cases. She also worked with a couple of developers to clarify the details of the stories. By Monday (Day 5 of the Sprint) she had completed all of this work and was hungry for an application to test. In fact she was wondering why she hadn’t seen it as promised on Friday. Lacking an application to test she found other things to do outside the team. It wasn’t until Wednesday (Day 7) that she finally had the first story (“add my book to my shopping cart”) ready for test. Tonia scrambled but it was a big story and took much of the day just to get the environment ready to test. By day’s end she had found a dozen issues and shared them with Ian. “Add my book to my shopping cart” was clearly not ready yet. In the meantime other stories were piling up in front of Tonia and she was unable to keep up with the testing. At the end of the Sprint Sue only accepted two stories as complete “see the price for my books with shipping and tax” and “choose my payment type” for a total of 5 Story Points. Everything else was incomplete.</p><p>In the retrospective the team identified a number of things that contributed to the problem:</p><ul><li>They over-committed</li><li>They took on large stories with splitting them down more</li><li>They had too much work in progress</li></ul><p>For the next sprint they identified several improvements they could make:</p><ul><li>Always split stories of size 13 or larger</li><li>Never have more 3 stories in progress at once (that forces people to collaborate on Stories)</li><li>Handoff incomplete Stories for early testing. Early feedback on partially complete work will help save team members going down many dead ends.</li><li>When working on larger stories 5 and 8 swarm them</li></ul><h1>Analysis</h1><p>Nearly every time I’ve seen a team take on a story of 13 points or more the team doesn’t succeed in completing it in that Sprint. Usually because stories of that size have alot of hidden complexity and surprises.</p><p>I’ve also noticed that limiting the number of stories in progress to less than half the team size i.e.</p><table border="1" cellpadding="2" cellspacing="0" width="500"><tbody><tr><td valign="top" width="250"><strong>Team Size</strong></td><td valign="top" width="250"><strong>Limit on # of Stories in Progress</strong></td></tr><tr><td valign="top" width="250">5</td><td valign="top" width="250">2</td></tr><tr><td valign="top" width="250">6</td><td valign="top" width="250">3</td></tr><tr><td valign="top" width="250">7</td><td valign="top" width="250">3</td></tr><tr><td valign="top" width="250">8</td><td valign="top" width="250">4</td></tr><tr><td valign="top" width="250">9</td><td valign="top" width="250">4</td></tr></tbody></table><p>Helps ensure that work is completed before new work is started. Kanban folk achieve the same effect by setting up their Kanban board and setting WIP limits.</p><p>Finally when a team is new and is having trouble seeing the effects I create a simple table on a white board:</p><p><strong>Story Points by Day</strong></p><table border="1" cellpadding="2" cellspacing="0" width="500"><tbody><tr><td valign="top" width="45"/><td valign="top" width="45">M</td><td valign="top" width="45">T</td><td valign="top" width="45">W</td><td valign="top" width="45">T</td><td valign="top" width="45">F</td><td valign="top" width="45">M</td><td valign="top" width="45">T</td><td valign="top" width="45">W</td><td valign="top" width="45">T</td><td valign="top" width="45">F</td></tr><tr><td valign="top" width="45"><strong>Development</strong></td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">27</td><td valign="top" width="45">14</td><td valign="top" width="45">9</td><td valign="top" width="45">9</td></tr><tr><td valign="top" width="45"><strong>QA</strong></td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">0</td><td valign="top" width="45">13</td><td valign="top" width="45">18</td><td valign="top" width="45">9</td></tr></tbody></table><p>N.B. The QA/Development split isn’t meant to encourage this to happen its just a reflection of what most teams deal with when they first start.</p><p>Combined with a Sprint Burndown (in Story Points) it help the team spot problems as they start to happen and diagnose them in the Retrospective.</p><p>What tools do you use to help teams see these problems?</p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/9RYM15gFxB4" width="1"/></div>
    </content>
    <updated>2011-09-09T14:45:03Z</updated>
    <category term="Scrum"/>
    <category term="ScrumMaster Tales"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/09/scrummaster-talesthe-story-of-an-incomplete-sprint.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:23Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-138.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-138.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #138: New Windows</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>08 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/5ce940bfb3cf8c69b6eb64a9737edf2ffa7a3077">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-138.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-08T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=817</id>
    <link href="http://blog.gdinwiddie.com/2011/09/07/invest-in-yourself/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/07/invest-in-yourself/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/09/07/invest-in-yourself/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Invest in yourself</title>
    <summary xml:lang="en">I write this post from Loveland Colorado, the current location of Consultants Camp. This is an international gathering of consultants who share information and lessons with each other. It’s part of my practice of self-improvement. I invest a lot in my own professional development every year. I attend conferences such as this one. I read. [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>I write this post from Loveland Colorado, the current location of <a href="http://www.consultantscamp.org/" target="_blank" title="about Consultants Camp">Consultants Camp</a>. This is an international gathering of consultants who share information and lessons with each other. It’s part of my practice of self-improvement.</p>
<p>I invest a lot in my own professional development every year. I attend conferences such as this one. I read. I converse with colleagues.</p>
<p>My career has spanned a number of decades, and I expect to continue to do so indefinitely. I gave a talk at XPDay Manhattan in 2007 on <a href="http://idiacomputing.com/pub/SustainableCareer-XPDayManhattan.pdf" title="PDF of slides">Sustainable Career</a> where I explored this topic. To do so, you not only need to continue learning, you need to learn things that have a long half-life. Learning specific technologies may be valuable, but those technologies quickly become obsolete. Be sure to also learn things with lasting value, such as the principles behind specific techniques.</p>
<p>You need for your career to last a lifetime. Invest in yourself.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=817&amp;type=feed"/></div>
    </content>
    <updated>2011-09-07T19:33:20Z</updated>
    <published>2011-09-07T19:33:20Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Responding to Change"/>
    <category scheme="http://blog.gdinwiddie.com" term="Learning"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://me.andering.com/?p=857</id>
    <link href="http://me.andering.com/2011/09/07/we-are-uncovering-better-ways-of-moving-post-its/" rel="alternate" type="text/html"/>
    <title>We are uncovering better ways of moving post-its</title>
    <summary>Ten years after the agile manifesto I believe we’re better of with it, than without it. To me, it served as a rallying cry for those who were developing software to improve themselves by looking at what works in practice. Remember? “We are uncovering better ways of developing software by doing it and helping others do it.”. The reason [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div>
<p>Ten years after the <a href="http://www.agilemanifesto.org">agile manifesto</a> I believe we’re better of with it, than without it. To me, it served as a rallying cry for those who were developing software to improve themselves by looking at what works in practice.</p>
<p>Remember? “We are uncovering better ways of developing software by doing it and helping others do it.”.</p>
<p>The reason this appealed to me, was that I was working at the time, and had been working before, with good willing, hard working people who advised others on building and delivering software, but they didn’t get their hands dirty (and if they did, their practices looked nothing like what they advocated for clients). With Agile, I believed we had a fighting chance to do better than what came before, prevent methodology wars by finding what unites us and market ‘lightweight methods’ a lot more effectively.</p>
<p>These days, when I travel to an agile or lean related conference (and even to some craftsmanship related events) most participants are full time managers or coaches, occasionally coding at night if they are so inclined. In the early days, if I would run into a fellow coach, it would be someone like me, who worked at all levels, with all stakeholders while also working hands-on with and in teams. These days, if I get cynical, it is, more often than not, someone who helps a team to move post-its better, either through kanban or scrum.</p>
<p>Not that the intentions behind scrum or kanban are bad (‘improving the world of work’ and ‘Evolutionary change for your technology business), it’s just that obsessing over the mechanics, such as the right way to move post-its or the best practice for stand-ups costs less energy than thinking for ourselves about how we work, and what we can improve.</p>
<p>As I’m leaving for ALE2011, which on the surface looks like it’s packed with post-it moving folks, I hope to be proved wrong and be surrounded by complex systems thinking hackers, like  I was at XP2001, just after the agile manifesto had launched. That ALE opens with a massive coding dojo gives me some hope.</p>
<p>Otherwise, it’s just going to be 3M who benefited the most from lean and agile software development <img alt=";)" class="wp-smiley" src="http://me.andering.com/wp-includes/images/smilies/icon_wink.gif"/> </p>
</div>
<div class="shr-publisher-857"/></div>
    </content>
    <updated>2011-09-07T13:18:22Z</updated>
    <category term="people &amp; systems"/>
    <author>
      <name>Willem</name>
    </author>
    <source>
      <id>http://me.andering.com</id>
      <link href="http://me.andering.com/feed/" rel="self" type="application/atom+xml"/>
      <link href="http://me.andering.com" rel="alternate" type="text/html"/>
      <subtitle>Systems thinking about software development</subtitle>
      <title>me.andering - Willem van den Ende</title>
      <updated>2011-10-29T14:17:13Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-137.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-137.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #137: How Many Frames?</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>06 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/bd56c9d871f1535c8614a0a9bb66828142380631">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-137.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-06T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/9/2/Dealing-With-Embarrassing-Breaking-Changes/3429</id>
    <link href="http://www.codeodor.com/index.cfm/2011/9/2/Dealing-With-Embarrassing-Breaking-Changes/3429" rel="alternate" type="text/html"/>
    <title>Dealing With Embarrassing Breaking Changes</title>
    <summary>Frequent changes and deprecations to technology you rely upon cause dependencies to break 
if you want to upgrade. In many cases, you'll find yourself hacking through someone else's code
to try to fix it, because a new version has yet to be release (and probably never will). That can be 
a chore.
 
I get embarrassed when something I've recommended falls prey to this cycle. Backwards compatibility 
is one way to deal with the issue, but in the Rails world, few seem worried about it. It doesn't bother 
me that code and interface quality is a high priority, but it does cause ...</summary>
    <updated>2011-09-02T20:18:23Z</updated>
    <category term="Rails"/>
    <category term="Programming"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:02Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-136.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-136.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #136: Accelerators</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>02 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>It's the one-year anniversary of <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play TDD</a>! In celebration, new episodes are going up every day this week.</p>

<p>The source code for today's episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/1fc7872345f719cf7687d2be67980d985c58e795">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-136.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-02T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-135.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-135.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #135: File → New</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>01 Sep 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>It's the one-year anniversary of <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play TDD</a>! In celebration, new episodes are going up every day this week.</p>

<p>The source code for today's episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/909544ebf24cb4ac827824d3ed89335cf21c6174">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-135.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-09-01T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-11-21T01:17:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=811</id>
    <link href="http://blog.gdinwiddie.com/2011/08/31/on-failure-success-and-learning/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/31/on-failure-success-and-learning/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/31/on-failure-success-and-learning/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">On Failure, Success, and Learning</title>
    <summary xml:lang="en">When I was a kid, I decided to invent a new kind of battery. I had a pretty good idea of what was required, having cut open my share of batteries and even built them with a lemon, copper, and zinc. It’s just a matter of two metals (or one metal plus carbon) and a [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>When I was a kid, I decided to invent a new kind of battery. I had a pretty good idea of what was required, having cut open my share of batteries and even built them with a lemon, copper, and zinc. It’s just a matter of two metals (or one metal plus carbon) and a corrosive liquid. How hard could it be to create the battery of the future?</p>
<p>I mentioned my aspirations to my father, who was a chemistry professor. “What do you know about valence?” he asked.</p>
<p>“What’s ‘valence’?”</p>
<p>He proceeded to explain about electron clouds and the tendency of atoms to fill or empty their outer ring of electrons.</p>
<p>“So the valence of oxygen is 2.”</p>
<p>“Yes, except when it’s 1 or 4 or 6 or some other value. It’s not always simple.”</p>
<p>I’ve been thinking about that conversation since the end of the Agile 2011 Conference. <span id="more-811"/><a href="http://submit2011.agilealliance.org/files/session_pdfs/Code.pdf" target="_blank" title="Presentation PDF">Kevlin Henney gave a great keynote talk</a> about, among other things, learning about code by reading successful code. “<a href="http://twitter.com/#%21/quicola/status/102051802471596032" target="_blank" title="quoted in a tweet">We’re not wired up to learn from failure.</a>”</p>
<p>Yes, that’s absolutely right.</p>
<p>Then <a href="http://submit2011.agilealliance.org/files/session_pdfs/Mindset.pdf" target="_blank" title="Presentation PDF">Linda Rising gave her keynote</a> (which I unfortunately missed, having to leave for the airport) where where exhorted us to learn from failure. “<a href="http://twitter.com/#!/kiwihoria/status/102079414975741952" target="_blank" title="quoted in a tweet">Try again. Fail again. Fail better! – Samuel Beckett</a>”</p>
<p>Yes, that’s true, too. How can I agree with two seemingly contradictory points?</p>
<p>That’s what made me think about my plans to invent the next-generation battery. Had I continued with those plans, I could have tried 10,000 combinations and been no nearer to success than when I started.</p>
<p>Yet Thomas Edison did invent a successful light bulb. After many failures, he was reported to say, “I have not failed 10,000 times. I have successfully found 10,000 ways that will not work.” If that was all he knew, then he’d have been little better off than I was with my battery. In fact, he’d learned more than he admitted.</p>
<p>During the course of those 10,000 experiments, he built up a model of what was needed and how various materials did and did not fit that model and supply those needs. If we’re paying attention and are very persistent, we can learn from most series of failures as long as each attempt varies from the others.<br/>
It’s just not very efficient that way.</p>
<p>We can turn a series of failures into a string of successes quite simply. Instead of expecting each attempt to produce a working light bulb or battery or whatever it is we want, expect each attempt to be an experiment that will teach us something and refine our model. A successful experiment is one that teaches, whether or not it confirms our expectations.</p>
<p>Looking at it that way, we’ll want to design better experiments to maximize the learning rather than trying to minimize the number of trials. This is the heart of “Fail better!”</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=811&amp;type=feed"/></div>
    </content>
    <updated>2011-08-31T11:06:07Z</updated>
    <published>2011-08-31T10:49:33Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Responding to Change"/>
    <category scheme="http://blog.gdinwiddie.com" term="Learning"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-134.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-134.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #134: Persistence!</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>31 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>It's the one-year anniversary of <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play TDD</a>! In celebration, new episodes are going up every day this week.</p>

<p>The source code for today's episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/d39a32326f686048802e4b80faa0c0b500bd4f91">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-134.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-31T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-29T18:17:00Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-133.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-133.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #133: Towards an Agile Architecture</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>30 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>It's the one-year anniversary of <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play TDD</a>! In celebration, new episodes are going up every day this week.</p>

<p>The source code for today's episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/8c2eae3a6b7ab2d23fee39c0c286011930ab9107">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-133.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-30T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-27T16:17:00Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-132.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-132.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #132: Fresh Eyes on the Domain</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>29 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>It's the one-year anniversary of <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play TDD</a>! In celebration, new episodes are going up every day this week.</p>

<p>The source code for today's episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/3322fc89ce0cb1f0c9ec03daf332f06de412f3a2">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>

<p><a href="http://www.orfjackal.net/">Esko Luontola</a> has posted a video response to this episode. Find his response and my commentary in <a href="http://jamesshore.com/Blog/Lets-Play/Episode-141.html">Episode 141</a>.</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-132.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-29T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-22T18:16:57Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-131.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-131.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #131: JComponent vs. JPanel</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>25 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/68815de37e342d9c82ba1e7840176065d6914f25">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-131.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-25T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-20T18:16:52Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://agilepainrelief.com/notesfromatooluser/2011/08/books-for-newly-minted-scrum-masters.html</id>
    <link href="http://feedproxy.google.com/~r/NotesFromAToolUser/~3/gqWXvlncN2s/books-for-newly-minted-scrum-masters.html" rel="alternate" type="text/html"/>
    <title>Books for newly minted Scrum Masters</title>
    <summary>You’ve just finished your Scrum Master training and to start exploring some issues we didn’t have time to cover? I spent the afternoon putting together a list of 29 books that I think you will find interesting. As part of the process I decided to experiment with doing the list as a mind map. Let [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.xmind.net/share/mlevison/books-for-new-csm-s/"><img align="left" alt="image" border="0" height="554" src="http://www.agilepainrelief.com/images/2011/08/image.png" style="background-image: none; margin: 0px 5px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border: 0px;" title="image" width="331"/></a>You’ve just finished your Scrum Master training and to start exploring some issues we didn’t have time to cover? I spent the afternoon putting together a list of 29 books that I think you will find interesting. As part of the process I decided to experiment with doing the list as a <a href="http://www.xmind.net/share/mlevison/books-for-new-csm-s/">mind map</a>.</p><p>Let me know if this was helpful or if there was a key book I missed. In addition give some ideas of how you might have presented this.</p> <img height="1" src="http://feeds.feedburner.com/~r/NotesFromAToolUser/~4/gqWXvlncN2s" width="1"/></div>
    </content>
    <updated>2011-08-24T23:31:54Z</updated>
    <category term="Books"/>
    <category term="Scrum"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://agilepainrelief.com/notesfromatooluser/2011/08/books-for-newly-minted-scrum-masters.html</feedburner:origLink>
    <author>
      <name>Mark Levison</name>
    </author>
    <source>
      <id>http://agilepainrelief.com</id>
      <link href="http://agilepainrelief.com" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/NotesFromAToolUser" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Best practices for your goals</subtitle>
      <title>Agile Pain Relief » Blog</title>
      <updated>2011-10-25T23:16:24Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-130.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-130.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #130: The Great Negative Color Debacle</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>24 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/967f7101757bc58f775c8bd7b9a7e232b885167f">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-130.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-24T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-15T17:16:51Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=806</id>
    <link href="http://blog.gdinwiddie.com/2011/08/22/hire-a-coach-not-a-crutch/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/22/hire-a-coach-not-a-crutch/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/22/hire-a-coach-not-a-crutch/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Hire a Coach, Not a Crutch</title>
    <summary xml:lang="en">More and more, I see advertisements and hear people asking for a Coach to come for a period of time and help their organization on a full-time basis. They seem to assume that it’s necessary to Coach the team 5 days a week, every week. This makes little sense to me. Teams need time to [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>More and more, I see advertisements and hear people asking for a Coach to come for a period of time and help their organization on a full-time basis. They seem to assume that it’s necessary to Coach the team 5 days a week, every week. This makes little sense to me.</p>
<p>Teams need time to acclimate to new knowledge. They need to try it on their own, making decisions without immediate help. Otherwise they come to depend on the coach making the decisions, and they don’t learn how to make them, themselves. I’ve seen this happen when I’ve been working too steadily with one team.</p>
<p>It’s also important to limit the presentation of new information to the rate at which it can be absorbed. Time the team spends practicing without the presence of the coach is an important part of this absorption. Without such “soak time,” the team will get lost in the details, trying to climb the proficiency ladder without learning to practice the simple things fluently.</p>
<p>If you try to go faster than you can, you’ll only end up going slower.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=806&amp;type=feed"/></div>
    </content>
    <updated>2011-08-22T13:56:30Z</updated>
    <published>2011-08-22T11:50:47Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Responding to Change"/>
    <category scheme="http://blog.gdinwiddie.com" term="Coaching"/>
    <category scheme="http://blog.gdinwiddie.com" term="Learning"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/8/19/Pipe-music-through-a-Markov-Model-to-generate-new-similar-music/3420</id>
    <link href="http://www.codeodor.com/index.cfm/2011/8/19/Pipe-music-through-a-Markov-Model-to-generate-new-similar-music/3420" rel="alternate" type="text/html"/>
    <title>Pipe music through a Markov Model to generate new, similar music</title>
    <summary>emcee-3PO takes a text file of music, runs it through a Markov Model, and generates new music to be played with 
 Archaeopteryx .
 
It's an idea I've had for a while, which _why day gave me a good excuse to start.
 
There's not much there yet -- the first sentence above tells you exactly what it does -- but I hope to add some features to it as time allows:
 
 Read from sheet music 
 Use different instruments instead of simply playing the notes as written / make it symphonic 
 Choose probabilities in some smart way to ...</summary>
    <updated>2011-08-19T22:46:33Z</updated>
    <category term="Programming"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:02Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-129.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-129.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #129: Root Cause Analysis</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>18 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>There's no source code for this episode, but the previous episode's code <a href="https://github.com/jamesshore/lets_play_tdd/tree/5d43b649889912c3ee5a8f98714f38563b15d046">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-129.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-18T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-13T18:16:50Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=795</id>
    <link href="http://blog.gdinwiddie.com/2011/08/15/home-again-from-agile-2011/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/15/home-again-from-agile-2011/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/15/home-again-from-agile-2011/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Home, again, from Agile 2011</title>
    <summary xml:lang="en">It’s been a wonderful, busy week in Salt Lake City at the Agile 2011 Conference. It was great to see so many friends and to make new ones. I had an incredible number of fascinating conversations. This weekend I was saddened, though not surprised, by the number of tweets with complaints about the conference, often [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>It’s been a wonderful, busy week in Salt Lake City at the <a href="http://program2011.agilealliance.org/" target="_blank" title="Agile 2011 schedule, with links to session descriptions and slides">Agile 2011 Conference</a>. It was great to see so many friends and to make new ones. I had an incredible number of fascinating conversations.</p>
<p>This weekend I was saddened, though not surprised, by the number of tweets with complaints about the conference, often tweeted by people who didn’t go. To paraphrase Yogi Berra</p>
<blockquote><p>Nobody goes to the Agile Conference anymore. It’s too crowded.<span id="more-795"/></p></blockquote>
<p>It’s true that the Agile Conference doesn’t have a tight, narrow focus. It casts a wide net and is as inclusive as possible. This means that, no matter what your interest, it doesn’t concentrate on that. This means that it’s almost certain to have more interesting sessions than you can possibly attend. On top of that, there are many interesting conversations and side-sessions in Open Jam and in the hallways that are often worth as much or more than the sessions. It’s an embarrassment of riches.</p>
<p>I no longer worry about the things that I’m missing. Instead, I concentrate on the fact that my time there is bringing me value. I can’t optimize the value I receive, but I can use the “Law of Mobility” to get up and go somewhere else if I’m not getting enough value. This year, I found I rarely had to do that. Even when I wanted a bit of peace and quiet, I got sucked into valuable conversations. Even walking down the hall, I got sucked into Jim Shore and Arlo Belshee’s “<a href="http://program2011.agilealliance.org/event/b7f981d0743ae7a0b2a9c874b796565f" target="_blank">Stages of Practice: the Agile Tech Tree</a>.”</p>
<p>It was a conference of connecting ideas for me.  The Agile Tech Tree session tied right into the levels of proficiency from Willem Larsen’s “<a href="http://program2011.agilealliance.org/event/441f86e7a2bb9502b849fe1b55a4c184" id="441f86e7a2bb9502b849fe1b55a4c184" target="_blank">Fluency over Proficiency: Accelerating Agile Learning and ‘Hunting Fluency’</a>.” Barbara Fredrickson’s keynote, ” <a href="http://program2011.agilealliance.org/event/183c0864b16a8473933b1a68594aaf07" id="183c0864b16a8473933b1a68594aaf07" target="_blank">Why Care about Positive Emotions?</a>” contained many key points that dovetailed with my workshop on ” <a href="http://program2011.agilealliance.org/event/7273b70d4a2e3936b2dddbd1a635811e" id="7273b70d4a2e3936b2dddbd1a635811e" target="_blank">Team Swarming–Why and How</a>.” (<del>Those in my session know there were no slides, but I’ll be uploading the flipcharts we generated in the workshop.</del> I’ve uploaded the <a href="http://submit2011.agilealliance.org/files/session_pdfs/Team%20Swarming.pdf" title="Presentation PDF">flipcharts, as well as the slides I didn’t use</a>.)</p>
<p>Yes, I missed many, many sessions that I would like to have seen. Sometimes I missed sessions not because of the conference design, but because of the limitations of my own body.</p>
<p>To be sure, there are things that could be improved about the conference. That’s always true. Every year, the current organizers hold a retrospective to notice things they want to change, or continue, in the next year. As Linda Rising says, “<a href="http://program2011.agilealliance.org/event/e8970f198c9f6b901d5a53dbd1e00b86" target="_blank" title="Linda's keynote, The Power of an Agile Mindset">We are all a work in process.</a>” It’s futile to ever expect optimization of a system composed of people, though. And this conference is an extremely distributed work by many volunteers, some of whom are new to the process. There are a wide variety of goals among those who work to put on the conference. Far from being disappointed in its imperfections, I’m amazed at how it soars.</p>
<p>But now the conference is over and I’m back at home. There are many things I want to pursue while the ideas and passion are fresh. There are two ideas, especially, that I’d like to collaborate with others who have passion in the same area.</p>
<ul>
<li>Applying the ideas and techniques from Willem Larsen’s <a href="http://www.languagehunters.org/" target="_blank">Language Hunting</a> to learning and training Agile concepts and techniques.</li>
<li>Exploring team swarming and collaborative team formation.</li>
</ul>
<p>If you have passion and energy in these areas, please contact me, and let’s see where we can go with it. And if you want to stay in touch less energetically, sign up for my occasional <a href="http://idiacomputing.com/newsletter/" target="_blank" title="iDIA Newsletter subscription">email newsletter</a>.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=795&amp;type=feed"/></div>
    </content>
    <updated>2011-08-16T23:59:26Z</updated>
    <published>2011-08-15T18:09:55Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="Conferences"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://feedproxy.google.com/~r/AgileInAction/~3/krC4ccT15Rg/some-thoughts-on-collaboration</id>
    <link href="http://feedproxy.google.com/~r/AgileInAction/~3/krC4ccT15Rg/some-thoughts-on-collaboration" rel="alternate" type="text/html"/>
    <title>Some thoughts on collaboration</title>
    <summary>“Alone we can do so little; together we can do so much.” - Helen KellerOver the years and in a number of different roles, I’ve participated in and been responsible for facilitating collaboration. And some other things that were meant to ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">“Alone we can do so little; together we can do so much.” - Helen KellerOver the years and in a number of different roles, I’ve participated in and been responsible for facilitating collaboration. And some other things that were meant to ...<img height="1" src="http://feeds.feedburner.com/~r/AgileInAction/~4/krC4ccT15Rg" width="1"/></div>
    </content>
    <updated>2011-08-15T14:41:46Z</updated><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.energizedwork.com/weblog/2011/08/some-thoughts-on-collaboration</feedburner:origLink>
    <source>
      <id>http://www.energizedwork.com/weblog</id>
      <logo>http://creativecommons.org/images/public/somerights20.gif</logo>
      <author>
        <name>Gus Power</name>
        <email>noemail@noemail.org</email>
      </author>
      <link href="http://www.energizedwork.com/weblog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/AgileInAction" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://creativecommons.org/licenses/by/2.0/" rel="license"/>
      <rights>http://creativecommons.org/licenses/by/2.0/</rights>
      <subtitle>This is the blog of Simon Baker and Gus Power of Energized Work.</subtitle>
      <title>Energized Work | agile in action</title>
      <updated>2011-11-18T14:16:58Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/8/11/WTFs-by-programming-language-repository-on-github/3395</id>
    <link href="http://www.codeodor.com/index.cfm/2011/8/11/WTFs-by-programming-language-repository-on-github/3395" rel="alternate" type="text/html"/>
    <title>WTFs by programming language repository on github</title>
    <summary>I was curious to see how many WTFs are in programmers' code and compare it across languages, so I wrote 
a script to figure it out using github as the source 
data.
 
I couldn't figure out a way to do it using github's API , so 
I had to screen scrape the search instead . Therefore, as the markup
on that page changes, it will break the script. But, you can fork it and fix it later if you'd like.
 
Another caveat is that I used the search string 'a' to determine the total number of repositories for a language. If ...</summary>
    <updated>2011-08-11T15:57:54Z</updated>
    <category term="Miscellany"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Ask-Me-Anything-on-Reddit.html</id>
    <link href="http://jamesshore.com/Blog/Ask-Me-Anything-on-Reddit.html" rel="alternate" type="text/html"/>
    <title>Ask Me Anything on Reddit</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>04 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/">James Shore/Blog</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>For the rest of the day today (Thursday, August 4th), I'm doing an AMA on Reddit. <a href="http://www.reddit.com/r/IAmA/comments/j930y/iama_awardwinning_agile_software_development/">Come ask me anything!</a></p>

<p><em>Update:</em> All done! Thanks to dfjones and keturn for participating.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Ask-Me-Anything-on-Reddit.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-04T08:02:00Z</updated>
    <category term="/Blog"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-08T21:16:57Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Calendar/2011-08-11b.html</id>
    <link href="http://jamesshore.com/Calendar/2011-08-11b.html" rel="alternate" type="text/html"/>
    <title>August 11th at Agile 2011: "Agile Tech Tree" Workshop</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>04 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Calendar/">James Shore/Calendar</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>I'm helping Arlo Belshee out with his session on Agile engineering practices at Agile 2011. It's called "Stages of Practice: the Agile Tech Tree." I'm not entirely sure what Arlo has planned, but it's sure to be interesting and thought-provoking.</p>

<p>The Agile 2011 <a href="http://program2011.agilealliance.org/event/b7f981d0743ae7a0b2a9c874b796565f">schedule entry is here</a>. We'll be in the Murano room from 9:00 to 10:30 on Thursday. Here's the blurb:</p>

<blockquote>
	<p>There are many stages of practice for each practice. These are the details that get lost in most discussions. What does it mean to practice Continuous Integration, TDD, or Pairing? If you use a CI server, are you doing CI? That depends. The Civiliation games have a "Tech Tree" that show the hundreds of technologies available. They are broken into branches (sea exploration, flight, etc), with dependencies between the branches. We will build a similar tech tree for agile practices, showing how the agile practices interleave and how they change as you develop each branch further.</p>
</blockquote>

    
    
    <p><a href="http://jamesshore.com/Calendar/2011-08-11b.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-04T08:01:00Z</updated>
    <category term="/Calendar"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-06T14:16:58Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Calendar/2011-08-11.html</id>
    <link href="http://jamesshore.com/Calendar/2011-08-11.html" rel="alternate" type="text/html"/>
    <title>August 11th at Agile 2011: "Slackers and Debtors" Hands-On Session</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>04 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Calendar/">James Shore/Calendar</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>I'm doing a neat hands-on activity at Agile 2011 called "Slackers and Debtors: Meet Commitments, Reduce Debt, and Improve Performance." It's a fun activity that illustrates how iteration velocity, technical debt, and iteration slack interact. Diana Larsen and I have used it in our <a href="http://jamesshore.com/Training/Art-of-Agile-Planning.html">Art of Agile Planning</a> course for quite a while and it's always a hit.</p>

<p>The Agile 2011 <a href="http://program2011.agilealliance.org/event/bb9addf5f5ded8920e08178d1c8f047d">schedule entry is here</a>. I'll be in the Imperial Ballroom A from 3:30 to 5:00 on Thursday. Here's the blurb:</p>

<blockquote>
	<p>Does your team have trouble finishing its stories every iteration? Is your "done done" actually a "maybe maybe?" Are you constantly removing stories from your plan? If so, this session will help. We take a close look at the relationship between technical debt, velocity, and iteration slack. We teach you how to use slack to achieve a stable iteration velocity, increase team performance, and get your stories "done done" every time.</p>
</blockquote>

    
    
    <p><a href="http://jamesshore.com/Calendar/2011-08-11.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-04T08:01:00Z</updated>
    <category term="/Calendar"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-02T16:17:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Rabu/Rabu-Schedule-Now-Available.html</id>
    <link href="http://jamesshore.com/Blog/Rabu/Rabu-Schedule-Now-Available.html" rel="alternate" type="text/html"/>
    <title>Rabu Schedule Now Available for Download</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>03 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Rabu/">James Shore/Blog/Rabu</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>A few months ago, <a href="http://jamesshore.com/Blog/Announcing-Rabu.html">I announced Rabu</a>, a project focused on creating wonderful relationships between Agile teams and their customers. Today I'm proud to announce that our first tool, <a href="http://www.teamrabu.com/">Rabu Schedule</a>, is now available.</p>

<p>Rabu Schedule helps you delight your customers by telling them what will be done and when. It's interactive, so they can try out "what-if" scenarios and explore the schedule consequences of including or excluding various features. And as a command-line tool configured with a text file, it's easy to fit into your existing build automation.</p>

<p>I'm pretty excited about what we've achieved with Rabu Schedule, and this is only the beginning. <a href="http://www.teamrabu.com/">Check it out</a> and let me know what you think.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Rabu/Rabu-Schedule-Now-Available.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-03T08:00:00Z</updated>
    <category term="/Blog/Rabu"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-09-01T16:16:52Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-128.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-128.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #128: 2^7</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>02 Aug 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/5d43b649889912c3ee5a8f98714f38563b15d046">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-128.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-08-02T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-08-31T17:16:45Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/8/1/Combatting-merge-fatigue-in-revision-control-rookies/3388</id>
    <link href="http://www.codeodor.com/index.cfm/2011/8/1/Combatting-merge-fatigue-in-revision-control-rookies/3388" rel="alternate" type="text/html"/>
    <title>Combatting merge fatigue in revision control rookies</title>
    <summary>When you first introduce someone to source control, things often go smoothly until the first time they have to merge conflicting changes. Then they wonder, 
 
What's the point of this? I thought it was supposed to be easy but it's a PITA.
 
Two responses on how to combat this immediately come to mind.
 
The first thing that can help in this situation is to ensure they aren't having to merge useless files. I'm thinking of files here like the CSS generated from SASS: they change frequently but the changes don't affect them one way or the other. (In this ...</summary>
    <updated>2011-08-01T14:12:44Z</updated>
    <category term="Programming"/>
    <category term="Tools"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:02Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=761</id>
    <link href="http://blog.gdinwiddie.com/2011/08/01/specialized-skills/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/01/specialized-skills/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/08/01/specialized-skills/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Specialized Skills</title>
    <summary xml:lang="en">Whether we’re talking about revolutionary new web services, IT systems to automate internal procedures, or products to sell in boxes, there are many different sorts of things that need to be done. We need to envision the product, decide what’s required to be done, design it, build it, make sure it works, and put it [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>Whether we’re talking about revolutionary new web services, IT systems to automate internal procedures, or products to sell in boxes, there are many different sorts of things that need to be done. We need to envision the product, decide what’s required to be done, design it, build it, make sure it works, and put it into production where we can reap the benefits. Except in the smallest of circumstances, doing all of these things requires the work of multiple people. And, given that we need multiple people, and that we need a variety of skills, it’s natural that some people specialize in some thing and others specialize in different things.</p>
<p>But we can take that specialization too far. And if we over-specialize, then we do these different things in isolation. <span id="more-761"/> It’s like having a small box of crayons. <img alt="Stamp with 6-color Crayon Box" class="size-thumbnail wp-image-762 alignleft" height="150" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/07/CrayolaStamp-150x150.png" title="CrayolaStamp" width="150"/> One person takes the red crayon, others orange, yellow, green, blue, and violet. With that, we try to create a glorious full-color work of art. It’s no surprise that’s hard to do.</p>
<p>Colors in the real world flow from one named color to another, without a discernible boundary. It’s a continuous spectrum <a href="http://xkcd.com/273/"><img alt="credit: XKCD used under Creative Commons license" class="size-full wp-image-763 alignright" height="64" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/07/Spectrum.png" title="Spectrum" width="200"/></a> to which we’ve given names at certain approximate points. You just can’t draw the world as we see it using only six crayons.</p>
<p>The typical corporate response is to add more crayons. <a href="http://www.flickr.com/photos/abennett96/3878034252/"><img alt="credit: BenSpark used under Creative Commons license" class="size-full wp-image-764 alignleft" height="192" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/07/64Crayons.png" title="64Crayons" width="240"/></a> And more people to hold those crayons. And more delays caused by passing things from one person to another. And… we still don’t get the picture we want. The more people we have, and especially the more specialists, the harder it is to get a pleasing cohesive picture.</p>
<p>We <a href="http://www.123rf.com/#gdinwiddie"><img alt="Painting Palette" class="alignright size-medium wp-image-768" height="199" src="http://blog.gdinwiddie.com/wp-content/uploads/2011/07/7796906_s-300x199.jpg" title="PaintingPalette" width="300"/></a> don’t need to eliminate specialization, though. Just blur the boundaries a little. We can get the full-color rendition we want with our limited palette if we blend the colors where they meet.</p>
<p>Rather than pass the work from one type of the work to the next, let the people doing those different types of work work together. They might even swap colors with each other from time to time. Odds are, they’ll do a much better job at producing the picture you want.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=761&amp;type=feed"/></div>
    </content>
    <updated>2011-07-28T21:51:24Z</updated>
    <published>2011-08-01T14:35:08Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="Productivity"/>
    <category scheme="http://blog.gdinwiddie.com" term="Relationships"/>
    <category scheme="http://blog.gdinwiddie.com" term="Teams"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-17T13:34:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-127.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-127.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #127: Yearly Spending Field</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>28 Jul 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/df0b947ef1d18e6a162177b0846bdeed60a9aa54">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-127.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-07-28T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-08-30T17:17:13Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=756</id>
    <link href="http://blog.gdinwiddie.com/2011/07/27/a-virtue-of-imprecise-measurements/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/07/27/a-virtue-of-imprecise-measurements/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/07/27/a-virtue-of-imprecise-measurements/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">A Virtue of Imprecise Measurements</title>
    <summary xml:lang="en">I’ve talked about The Importance of Precise Estimates. In that post, I said, My advice is to measure your progress watch the trends project the trends tentatively into the future and relax.  It’ll work out the best it can.  False precision won’t make it any better. Now I just read The Virtues of the Imprecisely [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>I’ve talked about <a href="http://blog.gdinwiddie.com/2010/04/19/the-importance-of-precise-estimates/" title="The Importance of Precise Estimates">The Importance of Precise Estimates</a>. In that post, I said,</p>
<blockquote><p>My advice is to</p>
<ul>
<li>measure your progress</li>
<li>watch the trends</li>
<li>project the trends tentatively into the future</li>
</ul>
<p>and relax.  It’ll work out the best it can.  False precision won’t make it any better.</p></blockquote>
<p>Now I just read <a href="http://blogs.forbes.com/alexknapp/2011/07/25/the-virtues-of-the-imprecisely-measured-self/" target="_blank" title="The Virtues of the Imprecisely Measured Self">The Virtues of the Imprecisely Measured Self</a> by Alex Knapp at Forbes. He tells the tale of <a href="http://pss.sagepub.com/content/early/2011/04/15/0956797611407208" target="_blank" title="In Praise of Vagueness Malleability of Vague Information as a Performance Booster">a study </a>in the journal <cite><abbr title="Psychological Science">Psychological Science</abbr> April 2011</cite> that indicates that precision, whether false or not, inhibits success.  Alex summarizes,</p>
<blockquote><p>Precision can actually be the enemy of performance goals. To be sure, feedback is definitely a positive thing. But it appears that if you want to keep yourself motivated, it’s best to get a more generalized, imprecise feedback that lets you know you’re heading in the right direction, rather than the precise coordinates of where you are on the path.</p></blockquote>
<p>It’s something to think about.</p>
<p> </p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=756&amp;type=feed"/></div>
    </content>
    <updated>2011-07-27T15:29:36Z</updated>
    <published>2011-07-27T15:29:36Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Tools and Techniques"/>
    <category scheme="http://blog.gdinwiddie.com" term="Estimation"/>
    <category scheme="http://blog.gdinwiddie.com" term="Feedback"/>
    <category scheme="http://blog.gdinwiddie.com" term="Progress"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-16T12:34:18Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.codeodor.com/index.cfm/2011/7/26/Responding-to-the-OPTIONS-HTTP-method-request-in-Rails-Getting-around-the-Same-Origin-Policy/3387</id>
    <link href="http://www.codeodor.com/index.cfm/2011/7/26/Responding-to-the-OPTIONS-HTTP-method-request-in-Rails-Getting-around-the-Same-Origin-Policy/3387" rel="alternate" type="text/html"/>
    <title>Responding to the OPTIONS HTTP method request in Rails: Getting around the Same Origin Policy</title>
    <summary>I'm working on a website analytics tool, and in pursuit of that goal, I wanted to POST some data from a series of websites to the one that's doing the tracking. If you've tried to do that before, you've run afoul of the same origin policy , as I did, so you'll need to specify how your application handles Cross-Origin Resource Sharing .
 
I won't go into all the details about why that is the case - for that you can read the Wikipedia links above. Instead, I'm going to show a short example of how I handled this in ...</summary>
    <updated>2011-07-26T19:51:22Z</updated>
    <category term="Rails"/>
    <category term="Web Development"/>
    <author>
      <name>Sammy Larbi</name>
    </author>
    <source>
      <id>http://www.codeodor.com/</id>
      <link href="http://www.codeodor.com/" rel="alternate" type="text/html"/>
      <link href="http://www.codeodor.com/rss/" rel="self" type="application/rss+xml"/>
      <subtitle>Posts about Ruby, Java, Coldfusion, OOAD, TDD, DSLs, and more (some not TLAs!)...</subtitle>
      <title>My Secret Life as a Spaghetti Coder</title>
      <updated>2011-11-21T01:16:02Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-126.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-126.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #126: Following Patterns</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>26 Jul 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>There's no source code for this episode, but the previous episode's code <a href="https://github.com/jamesshore/lets_play_tdd/tree/fac9bd28a8286b82115450a240e9a4455750ac19">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-126.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-07-26T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-08-29T21:17:31Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.gdinwiddie.com/?p=750</id>
    <link href="http://blog.gdinwiddie.com/2011/07/25/process-metrics/" rel="alternate" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/07/25/process-metrics/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.gdinwiddie.com/2011/07/25/process-metrics/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Process Metrics</title>
    <summary xml:lang="en">My good friend Jack Ganssle commented over at EETimes (also available on the TechOnline India site, with different comments) about my recent post on process standards.  In it, Jack cautions against relying on “a strong feeling that ‘things are better.’” He recommends using measurements to bring it back to the realm of engineering. Bob Pease, [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>My good friend Jack Ganssle <a href="http://www.eetimes.com/discussion/other/4217939/On-design-metrics" target="_blank" title="On Design Metrics">commented over at EETimes</a> (also <a href="http://www.techonlineindia.com/Blogs/DesignPerspectives/11-07-21/On_design_metrics.aspx" target="_blank" title="On Design Metrics">available on the TechOnline India site</a>, with different comments) about my <a href="http://blog.gdinwiddie.com/2011/07/11/process-standards/" title="Process Standards">recent post on process standards</a>.  In it, Jack cautions against relying on “a strong feeling that ‘things are better.’” He recommends using measurements to bring it back to the realm of engineering.</p>
<p>Bob Pease, analog engineer at National Semiconductor and writer at EDN Magazine, used to say, “when something seems funny, measure the amount of funny.” That’s easier done in the engineering domain than the people domain, of course.</p>
<p>These two simple guidelines will help:<span id="more-750"/></p>
<p>1. <strong>Measure the things you really care about.</strong> Too many people collect numbers that are based on guesses or on indefinable units. If you’re measuring productivity, figure out a way to measure delivered, working features, not “story points” or other estimates. Jack gave an example where, to increase the number of circuit boards being produced, the technicians were not bothering to repair the boards that didn’t work. They were tossing them aside, creating a pile of waste inventory. In Jack’s example, the productivity measurement only measured part of what was desired.</p>
<p>2. <strong>Use measurements to illuminate, not as a goal.</strong> As <a href="http://www.developsense.com/blog/2009/01/meaningful-metrics/" target="_blank" title="Michael Bolton on Meaningful Metrics">Michael Bolton</a> says, good metrics allow you to ask better questions. They don’t answer them. The productivity numbers mentioned above didn’t say how productive the workers were being, because it didn’t show the wasted inventory.</p>
<p>Measuring things is a great way to sharpen the observations. It’s still an observation, though. Sometimes you can observe things that you can’t measure. In that case of a “strong feeling of ‘things are better,’” you may not be able to measure how much better. But you can still ask the data question, “What have you seen or heard that makes you think things are better?”</p>
<p>Observations without measurements are still valuable.</p>
<hr/>
<p>In the course of writing this post, I’ve just discovered that <a href="http://www.edn.com/article/518568-Analog_engineering_legend_Bob_Pease_killed_in_car_crash.php" target="_blank" title="EDN notice of Bob Pease' death">Bob Pease died last month in an automobile accident</a>. The world has lost a great analog engineer, and a man who eloquently cared about engineering.</p>
          <img alt="" src="http://blog.gdinwiddie.com/?ak_action=api_record_view&amp;id=750&amp;type=feed"/></div>
    </content>
    <updated>2011-07-25T18:05:31Z</updated>
    <published>2011-07-25T15:04:24Z</published>
    <category scheme="http://blog.gdinwiddie.com" term="Individuals and Interactions"/>
    <category scheme="http://blog.gdinwiddie.com" term="Metrics"/>
    <category scheme="http://blog.gdinwiddie.com" term="Productivity"/>
    <author>
      <name>George Dinwiddie</name>
      <uri>http://blog.gdinwiddie.com/</uri>
    </author>
    <source>
      <id>http://blog.gdinwiddie.com/feed/atom/</id>
      <link href="http://blog.gdinwiddie.com" rel="alternate" type="text/html"/>
      <link href="http://blog.gdinwiddie.com/feed/atom/" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Effective software development</subtitle>
      <title xml:lang="en">George Dinwiddie's blog</title>
      <updated>2011-11-07T10:28:30Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://jamesshore.com/Blog/Lets-Play/Episode-125.html</id>
    <link href="http://jamesshore.com/Blog/Lets-Play/Episode-125.html" rel="alternate" type="text/html"/>
    <title>Let's Play TDD #125: The Cost Basis Field</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><table border="0" width="100%">
      <tbody><tr>
        <td align="left">
          <b>21 Jul 2011</b>
        </td>
        <td align="right">
          <i> <a href="http://jamesshore.com/Blog/Lets-Play/">James Shore/Blog/Lets-Play</a> </i>
        </td>
      </tr>
    </tbody></table>
  
    
    
      
<p>The source code for this episode <a href="https://github.com/jamesshore/lets_play_tdd/tree/fac9bd28a8286b82115450a240e9a4455750ac19">is available here</a>. Visit the <a href="http://jamesshore.com/Blog/Lets-Play/">Let's Play archive</a> for more episodes!</p>





<p>Many thanks to <a href="http://blog.jonesed.net/">Danny Jones</a> for figuring out the HD Youtube embed code.</p>

    
    
    <p><a href="http://jamesshore.com/Blog/Lets-Play/Episode-125.html#comments">Comments</a><a/></p><p/></div>
    </summary>
    <updated>2011-07-21T08:01:00Z</updated>
    <category term="/Blog/Lets-Play"/>
    <source>
      <id>http://jamesshore.com</id>
      <author>
        <name>James Shore</name>
      </author>
      <link href="http://jamesshore.com" rel="alternate" type="text/html"/>
      <link href="http://www.jamesshore.com/Blog/index.rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2000-2006, James Shore</rights>
      <subtitle>The Art of Agile</subtitle>
      <title>James Shore</title>
      <updated>2011-08-25T20:17:12Z</updated>
    </source>
  </entry>
</feed>

