I’m a self-diagnosed control freak. Sometimes I struggle with the urge of adding an already done task to my to-do list. Just so I can cross it and make my list look right. Look perfect. Look like it mattered. Doing something without a plan makes me feel uneasy. And this is in my “unprofessional” life. In professional one I’m far worse.
So Fred George really hit a nerve, when he said that the only reason we have plans and management is that we don’t trust each other.
I really loved it when he said they use only one metric, which is how much money they’re making. As long as they make more money, devs can do whatever they want and consider valuable. That’s it. Can’t get any simpler than that. Keeps you focused on the big picture.
But claiming that plans are esentially useless tools, that are mainly used for keeping track who should be blamed if things go wrong… Claiming that managers are simply people, that make sure the right person is blamed… Now, this is a completely different kettle of fish.
At first I dissmissed it as a standard wishful thinking of yet another Agile nut. We got rid of documentation, why stop there? Let’s cut the costs even further and get rid of nearly all the people apart from devs. There’s nothing they can’t do, so why waste money on all the other “specialists”? After all only devs are the “true” Agile stars. Let’s make an all stars team…
Two weeks later I’m still thinking about it. Each and every day I’m more convinced that the guy nailed it and what he said applies to “non-product” companies even more.
I know that plans never work out anyway. Trust the control-freak. But it’s even worse when they actually do work. Plans give you a direction and keep you focused, but when you take them too seriously, they slow you down at best or make you miss the target altogether at worst. Sometimes we manage to complete a project “right on time”. Does it mean that our planning was so perfect? Or maybe we killed the goose that laid the golden eggs by working like crazy to meet the deadline? Or maybe we could get there way faster, but we looked at the board and Parkinson’s law kicked in? How much time have we wasted for tweaking and managing the plan, for making sure the plan is working, for assuring stakeholders we’re not sleeping all the time? Could we be faster without all this? Did we actually reached our goals? Heck, who knows what our goals are?
We might argue that without requirements we don’t know what to do. Yet, I’ve never seen requirements that perfect they don’t need any clarification, or don’t benefit from conversations. On the other hand, I’ve heard often things like “I’m not really sure what that means, but if they can’t get their requirements right it’s not my problem”. It’s their fault. They always complain, they don’t know what they want, they change their mind all the time. They, they, they… Just give us your money and go away, don’t disturb. It becomes hilarious, when it applies in exactly the same way to internal clients, even if they are devs as well. Isn’t it some kind of universal magic? Once you stand on the other side of the computer screen, you’re nothing like me. You’re exactly like them.
We might argue that without a deadline we never get anything done, that it motivates people. Yet, there are so many projects done after hours, for free, just for the joy of it. Yet, there are so many devs that hate their jobs and keep programming at home to keep their sanity.
We did our job perfectly, we followed all the rules, we met all our yearly goals, the project is finished according to the plan, we moved all thousand tasks to “done done”, we celebrated the success and threw an awesome party for our “dream team”.
Yet, somehow we failed the client.
But who cares anyway? It’s nobody’s fault… The “how” and “what” are defined perfectly, we follow them to a tee, it’s our job after all, we know what we’re doing. You say that we missed the “why”? This is not our problem. We are happy spinning our hamster wheels, going nowhere, benefiting no one.
And so everybody has their ass covered.
See: Fred George “Leaner Programmer Anarchy”