No, they aren't. What is unique though is that we have such a complete reliance on software without any sense of how to do it well. We know how to build skyscrapers without them falling down when the first real "user" steps through the front door. We don't know any sort of thing for software development.
...and, let's face it, the relative complexity of a skyscraper compared to a computer software program, given equal cost, is very, very low. A skyscraper costs hundreds of millions to construct. An equally costly software project would be something like the entire lifespan of the .NET Framework including the CLR, Standard Library, C#, VB.NET, Silverlight, all of the "Enterprise" features, etc.
Also, software isn't really construction. It's built by the people who design it, for the most part. Imagine a skyscraper (or car, bridge, etc) built entirely by engineers. Yikes.
We can't afford a single skyscraper collapse, but we can usually afford to use bad software.
In fact techniques exist to produce software with near-zero defect rates (primarily relying on extremely thorough code inspection, IIRC), but they're far too expensive for commercial use.
Comments
No, they aren't. What is unique though is that we have such a complete reliance on software without any sense of how to do it well. We know how to build skyscrapers without them falling down when the first real "user" steps through the front door. We don't know any sort of thing for software development.
We can't afford a single skyscraper collapse, but we can usually afford to use bad software.
The article sounds like Dijkstra in 1988. My bet is another 22 years won't change anything.
...and, let's face it, the relative complexity of a skyscraper compared to a computer software program, given equal cost, is very, very low. A skyscraper costs hundreds of millions to construct. An equally costly software project would be something like the entire lifespan of the .NET Framework including the CLR, Standard Library, C#, VB.NET, Silverlight, all of the "Enterprise" features, etc.
Also, software isn't really construction. It's built by the people who design it, for the most part. Imagine a skyscraper (or car, bridge, etc) built entirely by engineers. Yikes.
We can't afford a single skyscraper collapse, but we can usually afford to use bad software.
In fact techniques exist to produce software with near-zero defect rates (primarily relying on extremely thorough code inspection, IIRC), but they're far too expensive for commercial use.