While not wishing to extinguish any flames of humor, especially 'round these parts, attitudes like the above from developers -- to the extent they occur in real workplaces as opposed to Internet discussion boards -- are naive and annoying. They are also bad for technocracy; see Jimmy Carter, Herbert Hoover, and why people laugh at nerd rage. While projects of large scale are necessarily inefficient, small organizations are supposed to gain agility by not wasting time and energy.
Meanwhile, program management sucks if it can't bring clarity and consensus to requirements or scope projects rationally. Good development organizations insist on a spec that has been read by developers and QA, who in turn delivered estimates for the work, which were then reviewed by their respective dev and QA manager(s) for sanity. Without a single line of code being written until all this is done. After coding, developers should do unit and integration testing but never QA. Quality Assurance is a separate discipline that should be taken seriously; for example development managers should not be allowed to manage their own QA.
Once PMs are doing their job developers can and should be held to the deadlines imposed by those estimates. When they (developers) fail to do so despite all this preparation it reflects only on their lack of skill; the exceptions being changed requirements, business/personal emergency, or so much unscheduled downtime that the buffers baked wisely into each estimate end up being consumed. It is up to program management to use "the process" to confirm accountability across every single team member, and at every relevant slice of time, because if the outcome is not as requested then PM will have a lot of explaining to do...
BTW, should anyone wonder if I was making any reference to FAS, I wasn't. I bought on a waiting list and never thought I was agreeing to any promised delivery date. But if they were operating under my program, I absolutely would. Of course, many developers would like to be free of deadlines and often go into business for themselves to try and avoid them. Same thing with AXE-FX firmware updates or AE improvements; I have no reasonable expectation for any such thing from Cliff and crew because I bought their product based on its then-current state.
In conclusion, it need not be such an axiom to say Software Development is by default a late and over-budget affair. Yet it so often is, hence this little poast.