Kent Beck's Sigmoid Curve

4 Jun 2019

I am so very grateful to have found this talk. Thanks to the person who put this either in Slack or on Twitter so I could watch it. Thanks to Etsy for publishing it.

I never had a word for my particular affliction. But let me set up the scenario. There are two worlds: convex, and concave (for the details see the talk). Kent utters a phrase that I identify with deeply:

For me projects are over the first time somebody says “That might work!” Ugh, I gotta find a new project now.

I suffer from this. Once the project I am working on has no more tough puzzles. Nothing that needs research or figuring out. All that is left is typing and moving the code around on the screen until its “pretty”, or refactored, or “architected”, whatever description you prefer really. That is when it becomes tediously boring. I know how to get through it; I’ve shipped a lot of software in my day. But as Marie Kondo would ask: “Does this bring you joy?” No, it does not. I am addicted to the endorphin hit of learning something from a tangled problem and getting to a point of clarity and zero-tangles.

Kent goes on to describe three phases of company development; Explore, Expand, Extract. (I think he was partially inspired by the 4X game-type if you ask me.) He offers a lot of wisdom for workers and founders here. But to me, the most important take-away is that the skills required in each of those stages are different. Different people enjoy different stages, and are good at different stages.

Working in Extract mode may make perfect sense and be the most natural thing in the world to you. But I am going to start getting a tickle in my throat and my leg is going to start twitching. To me, extract mode feels like there is “Nothing. To. Do. At. All.”

I am most comfortable in Expand mode. I’ve spent most of my career there. I know what to do there. Take what works today, make it break less, make it bigger, better, faster, and shiny-er. I have not been able to accomplish everything I’ve wanted to there—but I have learned a ton about how not to do it.

I am most interested in moving closer to Explore mode. In pushing the envelope on what works today. Figuring out why it works—rather than just accepting that it does in fact work. It may work…or maybe you’re being tricked. Whatever you think, you’re probably wrong. I love being wrong. If you never think you’re wrong it means you can get blindsided at any moment. And that hurts.

#Software Engineering  #Lifestyle  #Company Culture