Samuel Johnson's famous Dictionary of English was written hundreds of years ago. Nonetheless, it has a great deal to teach us about software.
English is a language, of course, and we know there are numerous computer languages. Each kind of language has words, and it's essential to spell the words correctly so that the reader of what you write knows what you mean to say. Similarly with grammar and usage. When explaining the use of words, it's helpful to give examples. Of course there are more words in human languages than in computer languages, so the book defining a human language tends to be longer, as you can easily see by picking up a copy of Kernighan & Ritchie's The C Programming Language and any English dictionary.
The Dictionary
In 1755, Samuel Johnson published "A Dictionary of the English Language."
His was far from the first such dictionary -- there were already dozens in existence. But his became the most influential dictionary of English for over 150 years.
Much like a top modern programmer, he furiously wrote away with great energy and concentration. He originally claimed he would finish it in 3 years, but it ended up taking him seven. He did everything himself, with just a small amount of clerical help.
Meanwhile, L'Academie Francaise had forty scholars working for forty years to do a similar job for French. Johnson is said to have commented on this:
This is the proportion. Let me see; forty times forty is sixteen hundred. As three to sixteen hundred, so is the proportion of an Englishman to a Frenchman.
In software, there is sometimes talk of programmers who are 10X more productive than the average programmer. Johnson claimed to be more than 500X! When he was "really" only over 200X. Such an exaggerator... Of course in programming, there are people and small teams that perform 100X better than the ancient, lumbering giants "competing" against them.
With such a vast amount of work, it's not surprising that some humor managed to find its way into the work. For example:
Lexicographer: A writer of dictionaries; a harmless drudge, that busies himself in tracing the original, and detailing the signification of words.
Oats: a grain which in England is generally given to horses, but in Scotland supports the people.
Software
If you're a high-productivity programmer, I suspect the parallels have leaped out at you. Here are a couple:
- Programmers have strong opinions, and sometimes express them with wonderful humor. Here are dictionary examples and language opinions.
- The productivity difference between a top-down typical big-company MBA-driven software project tends to take 10 to 100's of times more effort than a similar project done by a great programmer or small team. See this and this.
The lesson here is clear: when it comes to writing software, be more like Samuel Johnson and less like the French Academy.
Comments