Sponsored Link •
|
Summary
...Wherein we explore what makes a paper Top Notch, primarily by example.
Advertisement
|
Some papers in Computer Science are somehow transcendent. They combine striking insight with clear and bright writing. They change how you think about things. They are a pleasure to read again and again. You tell your friends about them: "Gotta read this!"
Here are most of my Top Notch papers. What are yours?
[1] Possibly this view is heretical. St. Thomas Aquinas (Summa Theologica, quoted by Bertrand Russell, 1, 480) states that God cannot make a man to have no soul. But this may not be a real restriction on His powers, but only a result of the fact that men's souls are immortal, and therefore indestructible.(The URL I've used is to a CS course's notes, but the more permanent location of the same text has a butt-ugly color scheme, and the other common form has more scanning errors and no footnotes. Sigh.)
I have to note one paper that doesn't quite make it for me: "Go To Statement Considered Harmful" by Edsger W. Dijkstra (Communications of the ACM, Vol. 11, No. 3, March 1968, pp. 147-148). This has been very influential, but it just not as crisp and "wow"-ish. I mostly mention this not to dis Dijkstra, a great observer, but to define my criteria. His opening line is fun, but it shows why it's merely on my list of "must read" papers, not the truly top notch:
For a number of years I have been familiar with the observation that the quality of programmers is a decreasing function of the density of go to statements in the programs they produce.This is very biting and erudite, but it is denser than required. Compare this to Turing's:
I propose to consider the question, "Can machines think?" This should begin with definitions of the meaning of the terms "machine" and "think."Strunk & White would clearly prefer the second, and so would I. The sentences are short and clear, the words simple and direct, and it is immediately clear that something interesting is going on (doesn't everyone know what those words mean, so why would he ask?).
That's my line anyway.
Have an opinion? Readers have already posted 2 comments about this weblog entry. Why not add yours?
If you'd like to be notified whenever Ken Arnold adds a new entry to his weblog, subscribe to his RSS feed.
Ken Arnold is a recognized loose cannon in the software business, whose previous fusilades include being an inventor of Jini, designing JavaSpaces, writing books on Java and distributed systems, helping design CORBA 1.0, and (while at Berkeley on the BSD project) the curses library package, co-authoring rogue, and generally enjoying himself. His interests include designing APIs and programming languages using general principles of human factors design because of his radical hypothesis that programmers are human, and other applications of this same principle to software design, management, and production. |
Sponsored Links
|