Rediscovering Lost Knowledge
You might think that, with software being such a fast-moving field, everything we're doing now is based on everything we were doing last year, with induction proving that there's a continuous unbroken history linking current practice to the "ENIAC girls" and Colossus wrens of the 1940s. In fact, the truth is pretty much the exact opposite of that; practices seen as out of date are just as likely to be rejected and forgotten as to be synthesized into modern practice.
As an example, I present my own experience with programming. I was born into the microcomputer revolution, and the first generation of home computers. Programming taught on these machines was based on either the BASIC language of the 1960s or using assemblers. The advances made by structured programming, object-oriented programming, procedural programming, and functional programming were all either ignored or thought of as advanced topics inappropriate to microprogramming. It wasn...