<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Peter Armstrong comments on Coming Soon, the Steve Yegge vs. Dave Thomas Smackdown!?</title>
    <link>http://peterarmstrong.com/</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Peter Armstrong comments</description>
    <item>
      <title>"Coming Soon, the Steve Yegge vs. Dave Thomas Smackdown!?" by peter</title>
      <description>&lt;p&gt;In the (ruby) red corner, Dave Thomas.  He:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;is an excellent writer of books&lt;/li&gt;
&lt;li&gt;wrote &lt;em&gt;The Pragmatic Programmer&lt;/em&gt; (hooray!)&lt;/li&gt;
&lt;li&gt;wrote &lt;em&gt;Programming Ruby&lt;/em&gt; (huzzah!)&lt;/li&gt;
&lt;li&gt;co-wrote &lt;em&gt;Agile Web Development with Rails&lt;/em&gt; (hooray and huzzah!)&lt;/li&gt;
&lt;li&gt;co-authored the &lt;a href="http://www.agilemanifesto.org/"&gt;Agile Manifesto&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In the blue corner, Steve Yegge.  He:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;is an excellent writer of essays (his blog posts are essays, much like Paul Graham's)&lt;/li&gt;
&lt;li&gt;writes lots of pro-Ruby blog posts (hooray!)&lt;/li&gt;
&lt;li&gt;is an Emacs user (huzzah!)&lt;/li&gt;
&lt;li&gt;works at Google (ka-ching!)&lt;/li&gt;
&lt;li&gt;slammed "Agile Development" in &lt;a href="http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html"&gt;this&lt;/a&gt; and &lt;a href="http://steve-yegge.blogspot.com/2006/10/egomania-itself.html"&gt;this&lt;/a&gt; blog post&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The funny thing is that if you actually read the &lt;a href="http://www.agilemanifesto.org/"&gt;Agile Manifesto&lt;/a&gt; it does not read like Egomania Itself.&lt;/p&gt;

&lt;p&gt;In fact, I suspect that Steve Yegge probably agrees with the following four tenets of the Agile Manifesto:&lt;/p&gt;

&lt;pre&gt;
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
&lt;/pre&gt;

&lt;p&gt;They sound a lot like how Google works, according to Steve Yegge's description of it.  (I have no knowledge of how Google actually works.)&lt;/p&gt;

&lt;p&gt;I like to think of what happened to Agile Development as kind of a microcosm of what happens elsewhere.&lt;/p&gt;

&lt;p&gt;You start with four truths:&lt;/p&gt;

&lt;pre&gt;
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
&lt;/pre&gt;

&lt;p&gt;Most talented software developers in a business setting will look at these and either agree with these outright or at least see where the authors were coming from.&lt;/p&gt;

&lt;p&gt;Then, you move on to some &lt;a href="http://www.agilemanifesto.org/principles.html"&gt;principles&lt;/a&gt;, which are still pretty good.  Here are some of my favorites:&lt;/p&gt;

&lt;pre&gt;
Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.
...
Working software is the primary measure of progress.
...
Simplicity--the art of maximizing the amount
of work not done--is essential.
...
The best architectures, requirements, and designs
emerge from self-organizing teams.
&lt;/pre&gt;

&lt;p&gt;At this point, most of the value has been created.&lt;/p&gt;

&lt;p&gt;If you were an intelligent software development manager and you read--and thought deeply about--the ideas on those two web pages (and &lt;em&gt;nothing else&lt;/em&gt; that the Agile community produced), you would probably become a better software development manager.&lt;/p&gt;

&lt;p&gt;However, no money has been made yet!&lt;/p&gt;

&lt;p&gt;And so, human nature comes into play.  You can't just take the &lt;em&gt;message&lt;/em&gt;, you need a &lt;em&gt;medium&lt;/em&gt; to sell it to you.  &lt;em&gt;Repeatedly.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And when this is applied to software development, hilarity ensues.&lt;/p&gt;

&lt;p&gt;So, since all you need to create your own software development methodology is &lt;a href="http://www.robbyonrails.com/articles/2006/08/02/dialogue-driven-development"&gt;a blog&lt;/a&gt; or &lt;a href="https://gettingreal.37signals.com/"&gt;a PDF-only book&lt;/a&gt;, I'll do it too!  I have a blog (obviously), so here we go:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Pragmagile Development&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Pragmagile Development will be the subset of Agile Development that I could imagine both Dave Thomas and Steve Yegge (and the cool 37signals kids for that matter) agreeing on.  (I'm sure it would appeal to Dave Thomas since Pragmagile derives from Pragmatic as well as Agile :-)&lt;/p&gt;

&lt;p&gt;There will be no original ideas in it, which means that it's totally in keeping with the Zeitgeist of Web 2.0.&lt;/p&gt;

&lt;p&gt;I've created a Brand New Software Development Methodology and I still haven't eaten lunch yet!&lt;/p&gt;

&lt;p&gt;Time to go fix that, and also buy a Dyson vacuum at Costco.  (It sucks more than most software development projects!)&lt;/p&gt;

&lt;p&gt;Ah, the Saturday Routine of the Domesticated Suburban Father.&lt;/p&gt;

&lt;hr/&gt;

&lt;p&gt;Update 2006-10-23:  I've revised this post to be a tiny bit more measured in tone.  Also, the Dyson vacuum is the greatest appliance ever created.  If only most software development practices worked as well as it does instead of sucked as much as it does...&lt;/p&gt;

</description>
      <pubDate>Sat,  7 Oct 2006 12:00:00 PDT</pubDate>
      <guid>&lt;a href="/articles/2006/10/07/coming-soon-the-steve-yegge-vs-dave-thomas-smackdown"&gt;Coming Soon, the Steve Yegge vs. Dave Thomas Smackdown!?&lt;/a&gt;</guid>
      <link>&lt;a href="/articles/2006/10/07/coming-soon-the-steve-yegge-vs-dave-thomas-smackdown"&gt;Coming Soon, the Steve Yegge vs. Dave Thomas Smackdown!?&lt;/a&gt;</link>
    </item>
  </channel>
</rss>
