E.W.Dijkstra Archive: On hygiene, intellectual and otherwise
cs.utexas.edu
cs.utexas.edu
There was a submission some time ago which used the same device to argue against global warming. Since "the powers that be" had been wrong in the case of Galileo, then obviously the mainstream belief in man-made climate change was the same kind of wrong-headed belief in unscientific dogma. I have seen the same kind of argument for Creationism - since science was wrong in the case of the ether and frenology, then obviously the theory of evolution is also wrong.
These arguments make a lot of sense when there is a common cognitive error. For example, the cognitive error that caused mistake A is also causing mistake B. I don't have enough domain expertise to say whether or not that was the case in this article, for its intended purpose.
http://www.youtube.com/watch?v=vsafOyAdayg&feature=PlayL...
If you've never seen "The Day the Universe Changed," you're in for a treat.
Semmelweis ideas were probably rejected because there were no theroretical framework which could explain how disease could be carried around by doctors or nurses who were not themselves infected (bacteria were not yet dicovered). It was not easy for the medical establishment to accept a theory that relied on the existence of a completly unknown and invisible substance.
Also, the post-napoleonic Austria-Hungary was an extremely conservative society. Revolutionary ideas and paradigm-changes were definitiely not the positive buzzwords they are today.
Here is a wonderful quote by the emperor: (http://www.archive.org/stream/austriahungary00legeiala/austr...): Hold to that which is old, for that is good; if our ancestors were pleased with it to be so, why not we? New ideas are to-day being advanced of which I do not nor ever shall approve. Hold them in suspicion and keep to that which is approved. I have no need of learned men; I want faithful subjects. Be such! that is your duty; he who would serve me must do what I command. He who cannot do this, or who comes with new ideas, may leave us; if not, I shall send him.
Not the best environment in which to promote radical new ideas!
In hindsight, Semmelweis opponents made a great error by rejecting a theory which had strong empirical evidence just because it didn't have a theoretical underpinning. However I fail to see the connection to Dijkstras formal methods. Is there really overwhelming empirical evidence for the superiority of formal methods in software design? No, it actually seems Dijkstras argument for formal methods is that it is a "time-honoured tradition", a line of reasoning akin to that of the the emperor and the opponents of sterialization.
Crazy. What?
Humans never cease to amaze me.
Home schooling empirically works with non-professional instructors. Teach For America will take any warm body with a college degree and subject students to their care for a few years, without negative results. Private schools routinely outperform public schools, even with similar student pools.
But still, the guild controls education with an iron fist, because if you let non-guild teachers teach, then there will be total anarchy. Or if you paid guild teachers based on skill rather than age -- because, after all, the guild warrants that all guild members with ten years of continuous service at one guildhouse are exactly equivalent in skill in every way.
A great read.
THE was the first multiprogramming operating system beating IBM to the punch.
The THE system apparently introduced the first forms of software-based memory segmentation (the Electrologica X8 did not support hardware-based memory management)[1], freeing programmers from being forced to use actual physical locations on the drum memory. It did this by using a modified ALGOL compiler (the only programming language supported by Dijkstra's system -- Dijkstra implemented the first compiler for ALGOL) to "automatically generate calls to system routines, which made sure the requested information was in memory, swapping if necessary."
Apart from this, Dijkstra is the inventor of all shortest path algorithm (used in the link-state routing in the Internet), opened the self-stabilizing systems field, which was again very influential in several internet and sensor networks protocols.
Dijkstra refused to classify himself as a theorist or systems person.
BTW, Knuth would probably be the first person to object to your comment.
From the web pages I've read, it's not clear that THE was ever used. It's also not clear what Dijsktra actually did on Algol. Indeed I always thought it was Naur, not Dijsktra, who is associated with making the first good Algol compiler. Also, Dijsktra is described as having "led the team" on these projects, which is ambiguous.
I'm happy to be wrong, but it would certainly be interesting if Dijsktra's disastrous (to my mind) pronouncements about how to make software were grounded in deep experience with successfully making it. It would be much less surprising if they were grounded in brilliant theoretical work and a habit of telling other people they're doing everything wrong.
Edit: it's my fault for being cryptic, but inventing algorithms does not count as what I meant by "making" something, i.e. building a working software system that people use. Anybody who's heard of Dijkstra knows that he invented algorithms.
Edit: but then I like Beethoven better than Mozart too :)
and
http://www.dgp.toronto.edu/people/JamesStewart/270/9798s/Laf...
I myself coded an implementation of this algorithm for a map itinerary project. It's powerful in my opiniom.