Why software projects run late, and the part that's on you
Late software is almost a law of physics. Some of it is the builder's fault, and a big chunk is on the client. Here's the uncomfortable truth.
There's an old joke among developers: take the estimate, double it, and move up to the next unit of time. Two days becomes four weeks. It's an exaggeration, but it hides something true about how bad we are at guessing how long it takes to build something new.
Part of the delay is on whoever builds the software, and it's worth saying plainly. We estimate badly for things we haven't done before. Problems show up that nobody could foresee until they were inside the work. Sometimes a date gets promised to close the sale while everyone knows it's optimistic. All of that is real, and it's on us.
But there's another part that sits with the client, and people talk about it less. The project stalls because a key question has gone three weeks without an answer. You change what you wanted halfway through, which is fair, except every change moves the date. The person who had to sign off is always travelling. None of this is in the contract, yet it weighs just as much.
In most projects that run late, the bottleneck is the decisions nobody makes in time. A team waiting for someone to choose between two options costs the same as a team working, except it isn't moving forward. Those waits pile up quietly.
As a client there are two things you can do that change the outcome more than anything else. Answer fast when you're asked, even if the answer is 'give me a day'. And lock the scope of each stage before it starts, resisting the urge to add 'one small thing' mid-build.
A delay almost never has a single culprit. It comes from optimism on one side and slow decisions on the other. The good news is that half of that equation is in your hands, and it's the cheaper half to fix.
