One of your best posts Mydatery. Anyone that doesn't understand your points, probably has never been involved in R&D cycles or the manufacturing of a product. Just because something is not a piece of hardware or something you can pick up and hold, doesn't mean the logical flow of manufacturing is different. When engineering a piece of hardware, you build a prototype, then you test it. You learn from your mistakes, and repeat the process until you get it right. Software/scripts follow the see more same logic... you go through however many prototypes you need to get it right before you sell it.... well.... unless you're Microsoft.
Some things never change. Whether your engineering a piece of hardware, or developing a complex php application, there's always someone that doesn't understand the development cycle asking when you're going to be done with it. They demand an answer, so you give them a guess. Then... shit happens... you overshoot your guess.... then the clueless one comes back and hounds you as to why you didn't deliver when you promised. They don't understand the difference between a guess, and a promise. Most of them wouldn't be able to figure out how to manufacture rubber dogshit, yet they huff and puff every time the schedule slips. In the end, when the product is a great success, they like to credit themselves for one reason or other. It's really nauseating.