Software crisis

Try and try to summarize them

The roots of the software crisis are complexity, expectations, and change.

See software engineering.

Indeed, the problem of trying to write an encyclopedia is very much like writing software. Both running code and a hypertext/encyclopedia are wonderful turn-ons for the brain, and you want more of it the more you see, like a drug. As a user, you want it to do everything, as a customer you don't really want to pay for it, and as a producer you realize how unrealistic the customers are. Requirements will conflict in functionality vs affordability, and in completeness (get everything in) vs timeliness (meet the deadline).

The notion of a software crisis emerged at the end of the 1960s. An early use of the term is in Edsger Dijkstra's ACM Turing Award Lecture, "The Humble Programmer" (EWD340), given in 1972 and published in the Communications of the ACM. Dijkstra says,

[The major cause of the software crisis is] that the machines have become several orders of magnitude more powerful! To put it quite bluntly: as long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computers, programming has become an equally gigantic problem. [ Edsger Dijkstra: The Humble Programmer [PDF, 473Kb]]

copyright 2004