Getting to On-Time Software Projects

How the economy works, to me, is kind of like riding a bicycle. You have to keep it going forward for it to work correctly. If everyone in the economy stopped buying and selling, then just like a bicycle when we stop peddling, things stop working as expected. We have to have a bit of momentum for the bike to work. This is why I would tell my kids to try and peddle their way out of a problem. Don’t slam on the brakes, such as for a bump, but diligently continue to peddle through the bump. Keeping the bike in motion, just like the economy or a project, is what gives us the ability to work our way out of any problem.

I watched amazed as a manager came into the meeting and told everyone to stop working. He said to stop working because we had an issue and we didn’t yet know what we were going to do to fix it. Letting everyone continue working was, to his way of thinking, not useful as we may tell a lot of people to do things differently. To my way of thinking, he had a limited notion of how a successful organization worked and functioned.

Needless to say, no one stopped working and we figured out and fixed our issue. Some things had to change but most of the things we had to do on this project remained the same. It was, after all, a familiar product. We had done this type of project many times before. Also, most people were use to these kind of changes throughout the project, so making some changes to things we’ve already done was normal. We knew how to do it and we knew we had to keep moving forward.

Some recently popular techniques such as Kanban suggest we should stop working on other things when a tough issue arises. This is a great technique for not overloading our teams and for getting needed support when a particularly difficult problem arises. However, having people quit working (“you, go get coffee!”) reflects a deterministic view of projects that at least in my experience rarely exists. I’ve been amazed and grateful for teams who while blocked by issues got inventive in order to keep making progress in the face of major issues. Some of our best quality results (e.g., it worked the first time) came from teams that were told they weren’t going to get everything they needed to do their job.