On a framework for making preserves, my mom and making decisions
Imagine you need a framework for making preserves. You have only a rough idea what you’ll be making. Say you have fruit to put in, jars and water. If you’re my mom, your thinking goes like this. Trim the apples and pears from the garden, throw them in, cover them with water, and set them to cook for half an hour. If you’re a systematic analyzer of problems by nature, it goes something like this. Analyze the types of trees and fruit in the garden. Work out your average harvest and consumption over ten years and check what’s in stock. Then start deriving the ideal relationship between jar size, fruit size, cooking time and temperature. Even after weighing every criterion, you feel an unpleasant itch of uncertainty at the back of your mind, so you test. Cook two jars in each framework and pick one. Of course, that same wretched uncertainty is still there. Two jars can’t be enough. You need more time, more samples, more…
The difference between my mom and the systematic analyzer, and I couldn’t think of a worse label for a person, is that at our house we’ll be enjoying preserved fruit and vegetables regularly and before long. You’ll stop laughing when it’s time to can Znojmo pickles, because you didn’t account for them at the start. Cucumbers don’t grow on trees and weren’t in the requirements.
The lesson is that if you take too long choosing a framework, two things happen. First, you lose focus on the work that pays your way. Second, you still can’t predict what you’ll actually need. Forget anything that takes more than a week to choose. Take the first thing that fits and build an isolated part of the system with it. If it works, add to it iteratively. Be willing to take a step back. Didn’t work? Fine, here’s what we learned. Choosing a web framework often feels like an exercise in elaborate systems analysis. Too often it ends in tragicomedy when the analysis says we should write our own. That’s the worst thing you can do, for familiar reasons such as maintainability, documentation and the learning curve.
Recently Lukáš Křečan and I faced the classic “Where do we put it?” problem. The data was document-oriented by nature. We picked MongoDB without trying the other five or more database types people suggested, and without spending weeks researching which features we might need where. We basically tried the first thing that fit, and it works.
The world is full of uncertainty and unknowns. If you want to make decisions in it, you can’t count on figuring everything out. Put simply, whoever adapts quickly to changing conditions wins. Keep that in mind whether you’re choosing a canner for fruit and vegetables, a database or a web framework.
Related articles
Related CZ Podcast episodes
- #261 · Leadership
On leading people and teams. · Czech audio