Archive for August, 2005
Daffodil
So, each week sometimes I’m posting one of my own photos, sized for use on your desktop. Join in by blogging your own photos and include the phrase [grid::blogpaper] in your post – then everyone can google for them.
This week’s BlogPaper is called Daffodil:

Duplication, Code Re-Use and Effort.
For a long time I believed what most people in the industry seem to believe – that code re-use is a good thing.
I’m not sure that’s the right message any more. Of course I still believe that code re-use is a good thing to aim for, but…
Aardvark, BDUF and Getting your story straight
I’ve got a huge amount of time for Joel. His attitude to businesss, developers, workspace and more are great, but sometimes he writes something that makes me cringe.
Yesterday, he published the spec for Copilot, codenamed project Aardvark, for the world to see. For that I’m truly greatful – it’s always good to see what others are doing.
But in the surrounding blurb, he says:
As I worked through the screens that would be needed to allow either party to initiate the process, I realized that Aardvark would be just as useful, and radically simpler, if the helper was required to start the whole process. Making this change in the spec took an hour or two. If we had made this change in code, it would have added weeks to the schedule. I can’t tell you how strongly I believe in Big Design Up Front, which the proponents of Extreme Programming consider anathema. I have consistently saved time and made better products by using BDUF and I’m proud to use it, no matter what the XP fanatics claim. They’re just wrong on this point and I can’t be any clearer than that.
What XP “fanatics” say is that you don’t need to do BDUF on how you build the thing. What Joel’s talking about is BDUF on _what_ you build. Many XPers call this “getting your story straight”.
Rachel Davies has spoken about this with respect to stories having a cost element. Fuller document is on BCS’ wiki.
Olivier Lafontan talks about this in his excellent post where he discusses eXtreme Analysis and the NoVNoS Framework
And back at XPDay3, David Leigh Fellows and Richard Watt presented on Acceptance Test Driven Development, giving a clear view on how “getting your story straight” preceedes estimates and planning.
Anyway, here’s Joel’s useful post with the spec in…
Updated: Anthony Williams has picked up on the same point. Anthony sites “design at the last responsible moment” as his headline and that’s a great mantra also. The term missing from Anthony’s post, though, is Interaction Design.
This, in my mind, is the biggest hurdle. Joel is talking about refining the Interaction Design of his application. I have long said that this is the major difference between a traditional requirement and a story. A story is a fragment of interaction design; the XP process is predicated on the story being written by someone who knows what that interaction should be, but alos on allowing them to change their mind.
Swan
So, each week I’m posting one of my own photos, sized for use on your desktop. Join in by blogging your own photos and include the phrase [grid::blogpaper] in your post – then everyone can google for them.
This week’s BlogPaper is called Swan:

Sam’s Here
Friday morning at 6.33am my third child arrived. Sam’s a big boy, just half an ounce short of ten pounds. Despite this my wife delivered on just gas & air in a little over three and a half hours. Bloody hell she’s amazing. She was totally in control the whole time, following the midwife’s instructions to the point of managing to not push when told not to…
Search
What I'm Doing...
- @chriskeene Does the uni have it's own local weather system? (http://twitter.com/chriskeene/status/10314171215 and go left) in reply to chriskeene 1 hr ago
- @_philjohn should I expect a late arrival then? in reply to _philjohn 1 hr ago
- I have #md5 working on #arduino thanks to http://jarkko.jukarainen.biz/index.php?i=Projects 17 hrs ago
- More updates...
Recent Comments
- Patents are Property – Like it or Not « Chasing the Power Curve on When Patents Go Wrong…
- Arizona Joe on Fixing a plasma TV
- alex_turner11 on Ground roundup of new eReaders at CES on CNN
- negative_charge on Hacking Into Your Account is as Easy as 123456
- infopeep on Hacking Into Your Account is as Easy as 123456
- BenenhaleyBrian on The 18 Mistakes That Kill Startups
- Brian Benenhaley on The 18 Mistakes That Kill Startups
- infopeep on The 18 Mistakes That Kill Startups
- Rob Styles on Ruby Mock Web Server
- Jim on Fixing a plasma TV
Categories
- .Net Technical (8)
- Blog on Blog (6)
- commands I have issued (9)
- Enterprise Architecture (19)
- event (4)
- Fiction Book Review (2)
- Food (2)
- Intellectual Property (9)
- Interaction Design (27)
- Internet Social Impact (43)
- Internet Technical (16)
- IP Law (10)
- Library Tech (19)
- Music (2)
- New Toy (4)
- Non-Fiction Book Review (7)
- Ontologies (6)
- Open Data (7)
- Other Technical (20)
- Personal (36)
- Random Thought (16)
- Resourcing (4)
- Review (1)
- Security And Privacy (11)
- Semantic Web (30)
- Software Business (10)
- Software Engineering (37)
- Talis Technical (9)
- Uncategorized (44)
- Working at Talis (26)
- [grid::blogpaper] (8)
- [grid::fatherhood] (4)
Archives
- February 2010 (1)
- January 2010 (4)
- November 2009 (10)
- October 2009 (4)
- September 2009 (2)
- August 2009 (9)
- July 2009 (12)
- June 2009 (5)
- May 2009 (6)
- April 2009 (7)
- March 2009 (3)
- February 2009 (6)
- January 2009 (10)
- December 2008 (4)
- November 2008 (4)
- October 2008 (9)
- September 2008 (23)
- August 2008 (8)
- July 2008 (1)
- June 2008 (1)
- May 2008 (6)
- April 2008 (14)
- March 2008 (3)
- January 2008 (5)
- December 2007 (6)
- November 2007 (13)
- October 2007 (9)
- July 2007 (2)
- June 2007 (1)
- May 2007 (10)
- April 2007 (5)
- March 2007 (11)
- February 2007 (10)
- January 2007 (13)
- December 2006 (8)
- November 2006 (8)
- September 2006 (2)
- August 2006 (1)
- June 2006 (2)
- February 2006 (2)
- January 2006 (3)
- December 2005 (3)
- November 2005 (2)
- September 2005 (2)
- August 2005 (5)
- July 2005 (8)
- June 2005 (3)
- May 2005 (2)
- February 2005 (1)
- January 2005 (4)
- December 2004 (3)
- November 2004 (6)
- October 2004 (2)
- September 2004 (2)
- August 2004 (5)
- July 2004 (1)
- June 2004 (4)
- May 2004 (4)
- April 2004 (3)
- March 2004 (13)
- February 2004 (6)
- December 2003 (3)
- November 2003 (1)
- August 2003 (2)
- July 2003 (1)
- June 2003 (2)
- May 2003 (1)
- March 2003 (1)
- January 2003 (1)
- October 2002 (1)
- May 2002 (1)
- March 2002 (1)
- August 2001 (1)
- May 2001 (1)
- April 2001 (1)
- January 2001 (1)
- December 2000 (1)
- November 2000 (1)
- December 1999 (1)
- November 1999 (1)
- July 1999 (1)