Sir – your Nov 25 special report “Managing Complexity†asked whether the manifest failures of software can be fixed by giving developers better tools. Some of the tools you discuss, so-called Lifecycle Management, will actually make things worse. Lifecycle Management is an ill-concealed attempt to impose a totalitarian regime upon software development. As such, it will inevitably fail, but only after having first caused much damage. Experience has shown time and again that successful software development results from the freedom to innovate, not the discipline of control.
To investigate the problems of software, you might examine the role of “standardsâ€. Software standards have become a relentless fad-driven fashion cycle. IT executives who acquire software often value the latest fashionable buzzwords over how well the software actually works. Incredibly, standard trumps good. Perhaps this is because it is a lot easier to tell whether something is standard than whether it is good. The result is that developers squander precious resources keeping up with irrelevant technology fads, neglecting the difficult business of making software actually work. The only interests served by this arrangement are those of the software tool vendors. Coincidentally, it is these same vendors that control the software standards.
My modest proposal is to place a moratorium upon new software standards. The pursuit of ever-shifting standards hampers our ability to build large, complex, long-lived software systems.
Yes!
Say it brother! 😉
Unfortunately your letter assumes all programmers are good programmers. Letting someone use your system and resources as an emotional expression exersize is akin to disaster.
Furthermore standards are the defacto for communication. You arent considering the long term implications of maintenance and understanding.
Use the analogy of architects vs. structural engineers. The architect want expressional freedom, but the engineer is the bell of reality. Without standards we wouldnt have bridges.
“My modest proposal is to place a moratorium upon new software standards. The pursuit of ever-shifting standards hampers our ability to build large, complex, long-lived software systems.” – that’s the key. Software companies DO NOT want long-term software. They need to sell new stuff regularly. New technology -> new requirements -> new projects -> continous income.