Successful Scrum

November 15, 2008 by Dave Ross

I have so many things to blog about today, I don’t know where to start.  And, I really don’t want to spend all day blogging.  So, here’s one thing on the list that really stood out, almost as much as the cat poop recycler from the previous post.

James Shore, an Agile development consultant and author, has a post with the attention-grabbing title The Decline and Fall of Agile.  He laments the number of teams out there who have adopted “agile practices” and ended up with an unmaintainable system.  He fears, as one who makes his living off Agile might, that this will be seen as a failure of Agile methods, Scrum in particular.  Really, he thinks the real problem is that teams are adopting the “fun” parts of Agile, and leaving out the parts that really make it work:

It’s human nature to only do the stuff that’s familiar and fun, and that’s what has happened with Agile. People look at agile methods as a chinese menu of practices, choose the few that look cool, and ditch the rest. Unfortunately, the parts they leave out are the parts that make Agile work. 

The article’s comments are great, too.  There lots of good insight there.  For example:

People want a software, a CD-ROM to install something, a tool, a template, and they don’t understand that Agile is not about a process or a tool.  
 
It’s a cultural change.  
 
Different mindset.

The discussion reminds me of my post, The Process is Your God Now, where I talk about the need to treat the less fun aspects of programming like rituals.  For example, treat checking code into source control like saving in a video game:

Now, back to my game, what if I come to a fork in the road.  I can go left through the ominous looking sewer, or I can go right through the abandoned city.  Well at this point I’ll go and save my game with some sort of name like “Taking the sewer”.  That way I can continue playing, quick-saving as I go, but I can always get back to that fork if it turns out I made a mistake

 

I highly recommend this podcast from IT Conversations.  It’s by Ken Beck, “the father of Extreme Programming and JUnit”, and one of the earliest supporters of Test Driven Development.  Ken was asked to share stories with the audience, and gave some great advice in the process.

One part (about 58 minutes in) really stood out to me, as it ties into my post on developers getting “religion”:

That’s why I like that word “responsible”. “What is the responsible thing to do in this moment?” That is a wonderful, wonderful question to ask. “How would I do this if this was my money?” Boy, that’ll focus the mind on documentation.

Listen to Test Driven Development, Patterns and Extreme Programming at IT Conversations.

 

State Table

August 14, 2008 by Dave Ross

statetable.com screenshotAs they say, I had an itch to scratch.

When someone registers on a site and you want their address, it’s good practice to have a “state/province” selector.  Building that requires you to have a list of states somewhere, usually in your database, and usually in a table called “state”.

So, I whipped up a little site called statetable.com, which generates the SQL script you need to create that table.  It can also include Canadian provinces, US territories, and even US Minor Outlying Islands (atolls & reefs nobody really gives a damn about).  Don’t want SQL?  It’ll spit out a CSV file you can open in Excel, OpenOffice.org Calc, Numbers, etc.