Hacker News new | ask | show | jobs
by saghm 49 days ago
That's a whole lot of text that does absolutely nothing to justify the stuff the parent comment is talking about. Let's be honest here: he was really smart and got away with being kinda an asshole a lot because of that (probably because at least some of the time his arrogance wasn't pointed at anyone and instead was genuinely funny, like his comments about not being able to lie about being "the world's greatest computer scientist" because he was under oath on a jury.

I personally don't think that being right ever excuses the method of delivery; there's always a way to be just as right and convincing without being an asshole, but it requires conscience choice. Dijkstra probably would have found this sort of insistence tedious and beneath him, and he wouldn't be wrong about being smarter than me and probably anyone else who would have expressed this to him, but like I said, I don't think that excuses it.

1 comments

In OP's post, Dijkstra explicitly points out that APL aficionados don't seem to be able to write programs without an implementation (i.e. computer+special characters keyboard) while according to him Programming is about humans manipulating symbols and hence should be doable with pencil and paper.

The reason why is what EWD1036 elaborates beautifully. My second comment with excerpts here https://news.ycombinator.com/item?id=47985605 follows on the previous (which talked about Programs) with Dijkstra's views on Programming Language.

This is what should have been discussed in this thread since it shows quite clearly the reasons for Dijkstra's uncompromising stand in the note. Roger Hui then argues that Dijkstra may have been hasty in his conclusion since Ken Iverson clearly invented APL explicitly as a notation for mathematical communication (his famous paper "Notation as a Tool of Thought") and therefore Dijkstra's insistence on writing a program formally (i.e. with proof) should be natural in APL. He then demonstrates it with a couple of examples making it a nice teaching lesson.

But "adregan" focused on some trivial phrase that Dijkstra had employed, imagined a silly slight in his head and labelled Dijkstra a "miserable ass" without having understood anything in the note (his comment has no relevance to the post). Apparently Dijkstra has not demonstrated any "positive attitude" in any of his voluminous writings! The ignorance was so breathtaking that i could not resist throwing a wall of excerpts from EWD1036 for his (and others) edification.

> I personally don't think that being right ever excuses the method of delivery; there's always a way to be just as right and convincing without being an asshole ...

This is more nuanced then you seem to think. One can be aphoristic/pithy/sharp/biting/assertive/etc. all without being an asshole. When it comes to communication, particularly of difficult scientific/mathematical abstract concepts/ideas one needs to be precise/specific so that the listener's attention is focused on the essence and not on the frills. Dijkstra did this masterfully and that is why people love to read his EWDs. When he makes a sharp observation or gives a biting opinion, it grabs your attention and you immediately start asking why/what-does-he-mean which more often than not leads to great insights.

I also pointed to the influence of time and context on Dijkstra's writings. Programming was at its infancy with Computers/OSes/Compilers/Languages/Tools all being unreliable since there was no unifying scientific principles underlying them. His knowledge of Mathematics gave him the one solid foundation on which he could build the "Science of Programming" which he did with masterful finesse and uncompromising attitude.

Lastly, Dijkstra was Dutch and culturally their society is known for their "straightforwardness" i.e. "say it as it is" way of communication - https://www.bbc.com/travel/article/20180131-where-dutch-dire...

I apologize for taking the conversation off course as it wasn’t my intention, and I also thank you for providing examples of Dijkstra‘a writing. In asking for a recommendation, I was admitting a great blind spot, so you needn’t be breathless from the ignorance.

The only thing that I feel bears repeating is that I also compared Dijkstra to Ken Iverson—a mathematician who worked in the same time period and also taught in North America—who didn’t (as far as I have seen) muddy the waters of his writings/teachings with superfluous insults.

Note that Roger Hui here foregrounds the fact that

> Ken Iverson invented his notation as a means of communications among people

(Emphasis mine) and I think that it is important that this fact of APL is conflated against one’s desire to prove a program. A fact which Hui says has little to do with the correctness of the result.

One aspect of the original which I believe you are eliding over, but which I focused on and tacitly referenced (wouldn’t be an APL discussion without a little tacit programming reference), is that in conveying one’s ideas or proofs, one can distract from their point by introducing unrelated jabs or insults. I believe this fact is present in Roger Hui’s writing.

The OP's post does not have enough data for you to make the conclusions that you made. You are merely extrapolating from your preconceived bias which is wrong. A few issues;

Comparing greats like Dijkstra, Iverson etc. is silly; each is great in his own way. However Dijkstra definitely wrote much more than any of his peers thus allowing us to better understand his modes of thinking and reasoning behind his statements. Hence your comparison is purely subjective bias.

I have already pointed out that Dijkstra placed the ability to formally reason a program over everything else. What Hui is implying is that APL's design focus on communication aids in the above which is true to a certain extent. Dijkstra draws a hard line here stating that it must not be at the expense of formal reasoning. In EWD1036 Dijkstra explicitly calls this out w.r.t. visual programming languages/systems.

I don't think Hui is comprehending any insults/slights which for some reason you seem fixated on. He merely, diplomatically implies that perhaps Dijkstra is wrong w.r.t. his comments about APL programmers. Dijkstra's note is primarily about APL aficionados and their shortcomings; there is nothing about his views on APL itself except to note that a language influences its practitioner. We also don't know what was in the original note to which Dijkstra penned this response; this Dr.Caplin might have made some snide remarks (probable given the phrase And you, too, write to me that you would like to meet me in your part of the world, so that you can “demonstrate APL” to me.) and so the sharpness of Dijkstra's response can be justified.

Regardless of any/all of the above; it is quite silly to focus on trivial and ephemeral human behavioural aspects and neglecting the very real knowledge to be gained. All greats have some behavioural quirks which one must learn to overlook if we are to learn from them. In the case of Dijkstra, he wrote so prodigiously that not only can you gain new knowledge, but can learn modes of thinking and reasoning which are applicable universally i.e. the meta-knowledge of "learning to learn". Few authors have the genius to provide you with this essence of education.

To conclude, i recently came to know of an author named Trevanian and some of his quotes, one of which seems very pertinent here.

“Your scorn for mediocrity blinds you to its vast primitive power. You stand in the glare of your own brilliance, unable to see into the dim corners of the room, to dilate your eyes and see the potential dangers of the mass, the wad of humanity. Even as I tell you this, dear student, you cannot quite believe that lesser men, in whatever numbers, can really defeat you. But we are in the age of the mediocre man. He is dull, colorless, boring — but inevitably victorious. The amoeba outlives the tiger because it divides and continues in its immortal monotony. The masses are the final tyrants. ... The roar of the plodders is inarticulate, but deafening. They have no brain, but they have a thousand arms to grasp and clutch at you, drag you down.”

― Trevanian, Shibumi

This is what we need to guard against i.e. "not become mediocre" (and add to the noise on the Internet) in our own communications/behaviour on social media and elsewhere. We need to focus on the s/n ratio always.