Ask HN: Why does software development take so long?
8 comments
I came across this analogy recently and found it very appropriate https://www.quora.com/Why-are-software-development-task-esti.... It is a fictional story of two friends who want to walk from San Francisco to LA down the coast in 10 days and how all their assumptions are shown wrong when they start doing it.
Compared to what? Making a pizza or building a Space Shuttle?
Because most customers does not know what exactly has to be done in order to solve their problem, and you have to re-develop stuff multiple times. Or to adhere with some odd practices/requirements which are only to sign some papers or other unrelated stuff most of the time...
Because in most cases it needs to function correctly and to spec. This takes time to agree, write and test
Why do you think so? Compared to other fields it's extremely fast
Because everyone’s waiting for all the npm packages to finish downloading.
This. Aside from identifying specs and implementing them correctly.
The development toolchain becomes inherently slow and things like CI/CD are often brittle and not implemented until their returns have severely diminished.
The development toolchain becomes inherently slow and things like CI/CD are often brittle and not implemented until their returns have severely diminished.
Because a lot of development is paid by the hour/week, and managers' collective conscious took decades to perfect the art of pulling projects along - otherwise market forces (cost to land a customer vs revenue) won't make their businesses viable.
Also, because many projects are initiated by mistake or by sheer Dunning and Kruger effect (customers having more money than brains in general, and pouring it into the fields they have no idea about), that makes framing project in some coherent way, keeping it at least somewhat sensible looking to keep the money flowing, difficult, requiring a lot of back and forth and grudges, and makes keeping decent developers difficult because they are forced to do obvious bs, thus complicating completion.
Also, because many projects are initiated by mistake or by sheer Dunning and Kruger effect (customers having more money than brains in general, and pouring it into the fields they have no idea about), that makes framing project in some coherent way, keeping it at least somewhat sensible looking to keep the money flowing, difficult, requiring a lot of back and forth and grudges, and makes keeping decent developers difficult because they are forced to do obvious bs, thus complicating completion.