Steve Freeman Rotating Header Image

Not a charter for hackers

Just had to turn off comments since this post has become a spam target. Sorry.

Update: Kent since tweeted this nice one-liner:

a complete engineer can code for latency or throughput and knows when and how to switch


Kent Beck’s excellent keynote at the Startup Lessons Learned Conference has been attracting some attention on The Interweb. In particular, it seems like he’s now saying that careful engineering is wasteful—just copy and tweak those files to get a result now. I can already hear how this will be cited by frustrated proprietors and managers around the world (more on this in a moment).

What I think he actually said is that we should make engineering trade-offs. When we’re concerned with learning, then we want the fastest turnaround possible. It’s like a physics apparatus, it’s over-engineered if it lasts beyond the experiment. But, if we’re delivering stuff that people will actually use, that we want them to rely on, then the trade-off is different and we should do all that testing, refactoring, and so on that he’s been talking about for the last ten years. Kent brushes over that engineering stuff in his talk, but it’s easy to forget how rare timely, quality delivery is in the field.

My favourite part is Kent’s answer to the last question. A stressed manager or owner asks how to get his developers to stop being so careful and just ship something. Kent’s reply is to present the developers with the real problem, not the manager’s solution, and let them find a way. What the manager really wants is cheap feedback on some different options. The developers, given a chance, might find a better solution altogether, without being forced into arbitrarily dropping quality.

Good developers insist on maintaining quality, partly to maintain pride in their work (as Deming proposed), but also because we’ve all learned that it’s the best route to sustained delivery.

As Brian Marick pointed out recently, it’s about achieving more (much more) through relationships, not one side or another achieving dominance.

9 Comments

  1. […] This post was mentioned on Twitter by Roy Osherove and Tim Ross, SteveF . SteveF said: Longer thoughts on @kentbeck's video. http://bit.ly/bikJg7 He turned around a tweet first. […]

  2. Bob Marshall says:

    I so agree with all you’ve posted here, except possibly the relative likelihood of managers quoting Kent Beck in support of their arguments! :)

    – Bob (@FlowChainSensei)

  3. Oh, I think this one will make the rounds…

  4. Social comments and analytics for this post…

    This post was mentioned on Twitter by sf105: Longer thoughts on @kentbeck’s video. http://bit.ly/bikJg7 He turned around a tweet first….

  5. […] more on Kent’s talk, read beyond agile development. Good perspective from Steve Freeman: Not a Charter for Hackers This entry was posted in general. Bookmark the permalink. Post a comment or leave a trackback: […]

  6. Great write up and spot on.

    A successful business is one where there’s an open & frank dialogue in the company – good engineers understand the trade-off. What’s important, and often overlooked, is that management also needs to understand the costs of any trade-off.

  7. Bob MacNeal says:

    I too appreciated Kent Beck’s recognition that we need to make engineering trade-offs depending on whether we’re Learning or Building.

    This is a key recognition from someone with such a well-established engineering bent.

  8. […] Steve Freeman “Not a Charter for Hackers“ […]

  9. […] Deixo também mais dois quotes provocantes que geraram alguns debates interessantes. […]