Testing is … playing on the o-line

(Warning: This post is about some intricacies of American football. Bail out now.) I read “The Hidden Game of Football”, and needless to say, I had an epiphany. Software testing is … playing on the offensive line.



  • O-linemen are notoriously difficult to grade in terms of how good they are. The NFL keeps only one stat: sacks against. Their performance is entirely dependent on the play of their linemates and the skill with which the rest of the offense operates.
  • The lineman’s objective is to enable the “skill players” to maneuver the football downfield in the face of an oncoming rush. They do so by impeding the progress of the defensive players, intercepting and diverting them before they can disrupt the flow of play.
  • O-lines learn a “scheme”, a set of principles for how to coordinate their efforts, that tells them generally how to block on each play. As each play unfolds, the actual maneuvers they make and techniques they employ depend on the actions of the defenders they face in real time.
  • Some schemes require fast o-linemen, others call for big guys. Sometimes a player is so amazingly great at one particular thing that the scheme itself is altered to accommodate his talent. Sometimes the scheme confers such a competitive advantage that other teams consider it “cheating” and declare themselves above using it.
  • It’s easy to ignore line play when watching and talking about football.
  • Unless you play it too.


  • Keep an eye out for the passrush of Bias, Complacency, Habit, and Hubris! The Four Horsemen of the Dev-ocalypse!

    Testing is … raking leaves

    I had to rake a lot of leaves in the back yard last weekend, and as I was raking, raking, making many muddy piles, I had an epiphany. Software testing is … raking leaves.



  • If there are lots of leaves, you can get most of them without digging too deeply and getting your rake all clogged up, just by scraping the top layer. Leave the rest for later, if that’s your style.
  • You can turn a big ol’ yard into a manageable series of “rake areas” by picking some landmarks, say a few trees and the sandbox, spaced somewhat equidistant through the yard, and raking all the leaves between these into a pile, then the leaves between these into another pile, etc.
  • Once you get past the top layer, the leaves are wet, and your rake gets caught up in the roots and stuff. If you’re just going for max bags o’ leaves per hour of raking, you’ll avoid that kind of work.
  • But if your wife is like mine, you quickly understand that the kids need to play on solid ground, so you have to get in there and dig ‘em out, which takes more work, and a more discerning eye to judge how well you did.
  • I get into a rhythm of raking leaves while playing with the kids: push the kids on the swing, then when they’re swinging real good, go and rake a bag of leaves. By the time I’m done with the bag, they’re screaming for another push. Push ‘em, rake ‘em. Push ‘em, rake ‘em. They seem resistant to learning how to pump themselves higher on the swings, but I don’t mind - it’s “dad security”.
  • And of course - next time the trees put out a release, I get to do it again.
  • Second time, though, should be easier.


  • See? It’s uncanny.