On 06/16/12 18:11, Walter Bright wrote: > On 6/16/2012 8:26 AM, Guillaume Chatelet wrote: >> And then we wonder why software is >> notorious for being delivered late and full of bugs, while other >> engineers routinely deliver finished bridges, automobiles, electrical >> appliances, etc., on time and with only minor defects. > > I have a nit to pick with that statement, as a former mechanical > engineer who has done professional mechanical designs and has taken > apart a lot of others. > > Bridges, automobiles, electrical appliances, etc., are full of design > errors. > > The engineers who design them aren't any smarter, more professional, or > rely on mathematical precision any more than software engineers do. In > fact, quite a large fraction of them can do math little more advanced > than simple arithmetic.
Thanks for sharing your experience, it's definitely an interesting point of view. > They don't catastrophically fail that often simply because they are way, > way overdesigned. A bridge, for example, can withstand several times its > design load. That covers an awful lot of sins. Software, on the other > hand, can catastrophically fail with the slightest mistake - a single > bit being off. Yes. My former studies were also in mechanical engineering so I tend to agree - even if I never done it professionally. Security margins are 'everywhere' from pins to ball bearings... > The "on time" is equally misinformed. The more new design there is in > other engineering projects, the more certain it is to be late. Completely agree here, because you can't rely on a previous experience it's almost impossible to have an accurate estimation of the schedule, even with huge margin on your side :)
