I’m thinking about what progress means.
Progress is hard to quantify. In some cases it’s about going from point A, which is easy to define to point B, which is also easy to define. In most scenarios the path is impossible to define, though. What really is B? Is it clear enough? Is it known? Have we been there before?
The world is hard.
It infuriates me when I see attempts to put processes in place because the notion it makes hard problems simple. That is not what processes are for. Processes are a safety rope.
Processes are to defend against known dangers. They are to keep you safe in a specific environment and are built looking at that specific environment. They are flexible and reusable.
Processes and methodologies are for guaranteeing progress. Nothing in the world guarantees success. Neither are processes useful for reporting on progress.
Imagine Lewis and Clark laying an interstate highway behind them. They never would have made it out of Missouri. Corpses entombed in the cement of unnecessary process. I imagine people would still be dying of boredom in central South Dakota now. This is the vision most developers have when thinking of process.
Hyperbole aside, it’s important that processes exist. The most important aspect of implementing development processes is that it assists in moving faster.
Process is for guaranteeing an acceptable average speed. Processes may slow down and limit maximim output. It normalizes and smooths out the rough edges. The smoother trajectory covers more ground over time. While the peaks are muted, the valleys are not so desolate.
I think bad processes come about by not trusting your employees. There is a fantasy that implementing process and methodologies automatically have performance gains. Fantasies vs. goals, and the dangers of confusing them.
Fantasies may be achievable; but really they’re just a group of inadequately defined goals. A fantasy is a person saying, “I want to make $100,000 a year!”
A goal is declaring, “I will become a subject matter expert to get a job doing what I love in a field that is growing.” (Well, those are two goals.)
The $100,000 a year salary is a symptom of a goal. A by-product.
I believe any sufficiently motivated person can make $100,000 in a year. Motivation is fueled by passion, though. Without passion there is no motivation. Without motivation there is failure. You can’t succeed if you don’t care.
Implementing processes for business and development must follow this pattern. If the goal is really a fantasy it will fail. Nobody will be motivated. If the goal is to be better and the processes are a stepping stone it will succeed.
The real goal is to be better, though. Success is unobtainable if it is tied to a false idol.
And this is why progress is hard to quantify. People quantify, and value, the wrong things.