February 12, 2024
MarkBernstein.org
 

A Plea For Lean Software

By Niklaus Wirth (1995)

5. .... A system that is not understood in its entirety, or at least to a significant degree of detail by a single individual, should probably not be built.

This is interesting! I think “understood” is doing a lot of work here. Writing is complicated: did Shakespeare understand Hamlet? Wirth’s plea for lean software is an explanation for Oberon, his lean operating system. But A Midsummer Night’s Dream is a story of miscommunication and failure to follow instructions.

9. Programs should be written and polished until they acquire publication quality. It is infinitely more demanding to design a publishable program than one that “runs.” Programs should be written for human readers as well as computers. If this notion contradicts certain vested interests in the commercial world, it should at least find now resistance in academia.

To my eyes, the second sentence tends to contradict the first. I do agree that polishing — or at any rate tidying — programs is a good idea.