Why numbering should start at zero (1982)
Dijkstra is of course brilliant and I recognize much of his tone is tongue in cheek and irreverant but sometimes I find his writing so nasty, pompous and arrogant that it becomes irritating; claiming, after a series of opinions about what he personally finds &quot;nice&quot; or &quot;natural&quot; that there is a &quot;most sensible&quot; way of doing things and that everyone else is being ridiculous. A tamer one of his offenses but still unpleasant.<p>I agree on the numbering but many people don&#x27;t. He doesn&#x27;t mention how nicely it works with the modulo operator, which is I think the most compelling reason. But having L[2] be the third index in an array is horribly counterintuitive and leads to countless mistakes. CS students when they begin do not like it, it is not natural. It is beaten into them by scary red error messages and instructors over months and years until they finally accept it.