Zach Peters

created: 2022-06-06T07:46:12 (UTC -05:00) tags: good-articles source: https://biggestfish.substack.com/p/planning-is-for-doing?s=r

author: Nicholas Broune

Planning is For Doing - by Nicholas Broune

Excerpt

Welcome from Hacker News! I have 10+ years experience in software engineering at a variety of companies from “Big N” to startups. I write a weekly blog post discussing various topics about working as a software engineer, running a company, and ideas on tech. It’s completely free to subscribe, so please do so if you find this content interesting.


Welcome from Hacker News! I have 10+ years experience in software engineering at a variety of companies from “Big N” to startups. I write a weekly blog post discussing various topics about working as a software engineer, running a company, and ideas on tech. It’s completely free to subscribe, so please do so if you find this content interesting.

There is a parable I heard recently that goes like this:

A driver is passing through a small town, along the main street. As they pass each intersection there are no stop signs, but they see other cars stopped along the way angry and shaking their fists at the driver. As they are about to leave the town, a police officer pulls them over. The officer says, “Do you know why I stopped you?” And the driver says, “I don’t know, I saw everyone angry, but I assumed that I had the right of way since I was going along the main street.” 

“I could tell you were new here,” the officer explains. “See, in this town we have a system for deciding who gets right of way. At each intersection everyone stops and gets out of their cars. They then discuss who has a more urgent reason for driving. After everyone has agreed, the drivers go back into their cars, and then the driver with the most urgent need goes first, followed by the second most, and so on. This process repeats with the next set of drivers.”

This situation is clearly meant to appear silly to us, but let’s examine why. The common way of determining right of way on roads is some combination of right of way, stop signs, and traffic lights. None of these take into account the needs of the drivers, so should characterize them as unjust. For example, one driver might be late to catch their flight (costing them hundreds of dollars), while another might be on a leisurely cruise around town with no particular destination. Naively we might think this is terrible, we should be able to have a better system.

The system in the parable is clearly more just, because it allows the actors to negotiate properly as to who would go first, so that whoever needs it first gets priority. But everyone immediately grasps the obvious downside–the process takes much longer for everyone. At a normal intersection, even if you unjustly have to go last, you still only wait, at most, a couple minutes (and in the best case you go immediately). But with this negotiation system, you never get to go immediately, and in the worst case could be stuck there arguing for hours. 

This is a great illustration of the high cost of planning, and an example of how it’s not always better to plan something. We should avoid entering the trap in which the cost of planning exceeds the cost of making the wrong decision (this is exactly what the parable illustrates). Another example of this is bikeshedding, in which far too much time is spent debating trivial issues. In these cases it would be better to pick arbitrarily to minimize time spent deciding.

Another case in which planning can be overdone is when the cost of planning is incommensurate with the potential benefit. For example, most would agree that it doesn’t make sense to spend four hours researching the best place to have lunch. That’s because the difference between the average choice and the best choice is not likely to be so significant as to make the time spent worth it (and, in any case, even after four hours you might not pick the best choice). You could spend a few minutes and get an outcome almost as good.

Finally, the third, and most pernicious situation in which there is too much planning is when planning becomes its own end. This can happen because individuals in organizations get more reward for planning work than actually executing on it. It might be seen that the execution is the “easy part”, and can be done by anyone, whereas the grand visionary (or “architect”) is the real cause of success. As a result, everyone has the incentive to be seen as planning, and no one actually does anything. Plans spiral out of control, meetings leading to more endless meetings, until this process consumes all available time. Ironically, this can happen when planning is actually the most valuable, for more complex situations in which the difference between a good and bad plan matters. But even so, we must make sure that the time we are spending is for the right purpose.

The psychologist and philosopher William James famously wrote:

My thinking is first and last and always for the sake of my doing, and I can only do one thing at a time. […] the art of being wise is the art of knowing what to overlook.

I use a variant of this quote to summarize my philosophy: “planning is for doing”. The only purpose of a plan is to ensure better results, it has no value in itself. And as James wrote, we must know what to overlook, as sometimes it is better to have no plan at all.

Subscribe to Catching the Biggest Fish

Observations on various aspects of working in tech, focusing on software engineering