If I need to defeat a group of men terrorizing a circus family, then Chuck Norris is the man to call.  The tough guy, martial artist, action hero has become an internet meme – Chuck Norris Facts attest to the true bad-a**-ness of the one called Chuck.  For example one of my favorites is:

There is no theory of evolution. Just a list of creatures Chuck Norris has allowed to live.

However if I were building a world-class team for developing software, I’d have to pass on Chuck (but I would have someone else tell him).  On Twitter the hash tag #scrumnorris will reveal a whole new world of Chuck…Chuck the Agilista.  My gratitude to Markus Gärtner who took the time to collect these and translate them from German.  Do any of these look familiar?

Chuck Norris can do 6-month sprints.

Right about now some people (too may people) are going “I don’t get it”, and not because they don’t know Scrum.  “How can you get anything done in one month?” it starts, “We tried short sprints but it was too painful to finish something demo-able in that time so we made the sprint longer.” 

The point of short sprints is to get rapid-feedback on what you are doing.  You do not have to finish the feature or project, just produce a vertical “slice” that can be demoed and tested.  You absolutely will need to do subsequent re-work and throw away code as you add more functionality and get more feedback (except Chuck Norris doesn’t re-factor because he built it right the first time). The alternative however is to crank away for six months and then find out what you did was wrong – fundamentally wrong right from the original requirements.  Short sprints too painful? If it hurts do it more often.

Chuck is the only one who can do a 6-month sprint… Chuck Norris does not have to meet the customer’s requirements, they have to meet his!

Chuck Norris does not estimate, he knows

If only…. 

Perfect estimation is the holy grail of project management.  But pursuing perfect also runs you afoul of diminishing returns.  What we need are estimates that are on average correct.  Some high and some low and in the sprint they come out to a wash.  The pain many teams feel is over-optimism and under-estimating the time it takes to get things done.  Then all tasks are under-estimated and then the sprint is underestimated.   The solution here (as for most things in agile) is to engage the power of the team.  A popular team estimation exercise is planning poker (Chuck Norris always wins at planning poker).  However I will admit that for teams where knowledge is not well distributed (an offense to agile in itself) it can be wasteful to have everyone estimate everything.  We have found some success with smaller teams estimating tasks together.  The method is poker-light with the intent to not bias any individual before they give their estimate (light because we are not using the cards).

Chuck is the only one who can estimate alone…. the deadline is when Chuck Norris says it is!

Chuck Norris pairs alone

I don’t have too much experience with pair-programming myself, but from talking to colleagues I understand it is at once very painful and very effective.  See my previous quote about pain…

Chuck is the only one who can pair alone because Chuck Norris is not afraid of bugs, bugs are afraid of him!

Chuck Norris is allowed to appear late at the stand-up –+- Chuck Norris sits on the stand-up meetingimage

Wow, have you ever had a generally good engineer working for you, but he just was incapable of showing up on-time at a meeting?  Now let’s talk about a 15 minute stand-up where everyday engineers go to decide as a team what they will do and how than can help each other do it.  If someone is 5 minutes late to a stand-up then they have missed one-third of what’s happened, or worse they have cost everyone else who was waiting for them one-third of their time.  Many teams implement penalties for being late to stand-up ranging from the monetary ($5 to the beer fund) to the comical (sing I’m a Little Teapot, or alternatively I’m a little HTTP 418).

Chuck is the only one who can appear late at stand-up because he takes less time... Chuck Norris answers just two questions on the stand-up meeting. Nothing blocks Chuck Norris! 

When Chuck Norris says “done”, then it’s “done”

“Done means done” is the agile principal that counter-points the more common slap some bits down, throw them in the build and call it a day.  “Done” also needs to mean tested – not necessarily BUFT but tested to the degree that we understand what the risks are and know how to handle them.  “Done” means that before code was even started that the requirements were determined to meet the product owner’s needs, and after code is complete that what was produced still does.  I’ve often heard “Done means shippable” but in light of my advocacy of shorter sprints I think “Done means demo-able” is more clear.

Chuck is the only one who can be “done” simply by saying so…“It works on my machine” always holds true for Chuck Norris.  (And if web developing… Chuck Norris doesn’t use web standards as the web will conform to him.)

Chuck Norris does not deploy, he develops on the production environment

Ken Johnston, when talking about Testing in Production (TiP) like to tease audiences by saying, “let’s not test at all before we deploy – just put it out there”.  Well, Chuck just saved you some time there Ken.

Chuck is the only one who can develop in production… [need a little help here folks…leave suggestions in the comments section]

Chuck Norris has no burn-down chart. Around him everything is already burnt down –+- Chuck Norris does not move story  cards, he moves the taskboard.

imageI always say to my team, “Bring me a big thorny problem and I will work with you to fix it – no problem.  But fail to do the simple little things like record your task hours and no forgiveness!”  I know some agile folk are cringing now as the only real reporting should be story points and not hours, and at the stand-up and nowhere else.  For hours I will simply ask forgiveness, but for having the team report into an automated system I make no apologies.  The stand-up still happens and three questions are still answered.  Giving each team member the opportunity and responsibility to account for their progress/remaining  from the comfort of their desk just seems like a good idea to me.

Chuck is the only one who does not have to record his remaining time…. time waits for no man, but it damn well better wait for Chuck Norris.

In Conclusion

Or should it be “in memoriam” after Chuck gets a hold of me.  You may fear Chuck Norris, but don’t be afraid to stand up to any engineer (or manager) who tries to be Chuck Norris on your software team.

 

Special Thanks to:

Markus Gärtner: for collecting and translating many of these from Twitter

Brian Flink: Chuck Norris always wins at planning poker, Chuck Norris doesn’t re-factor because he built it right the first time

Max Pool: …“It works on my machine” always holds true for Chuck Norris, Chuck Norris doesn’t use web standards as the web will conform to him, and the “Chuck the Geek” picture above.