Dijkstra's Manuscripts Available Online
Bodrius writes "Salon has a short but interesting article called GOTO considered joyful, about E. W. Dijkstra's manuscripts, as published by the University of Texas, and their bloggish nature.
I'm not sure if the blog analogy is that accurate, but the articles are a must read for computer scientists and geeks in general." (Annoying but free click-through system for non-subscribers.)
GOTO considered joyful
... use of such titles has remained as a persistent minor in-joke (the 'considered silly' found at various places in this lexicon is related).
On his proto-blog archive, the words and spirit of the late computer scientist Edsger Dijkstra live on, inspiring new generations of geeks.
- - - - - - - - - - - -
By Rachel Chalmers
July 9, 2003 | considered harmful: adj. [very common] Edsger W. Dijkstra's note in the March 1968 "Communications of the ACM," "Goto Statement Considered Harmful," fired the first salvo in the structured programming wars
That entry in Eric Raymond's edition of the Hacker's Dictionary was my first encounter with pioneering computer scientist Edsger Wybe Dijkstra, but thanks to the dedicated work of volunteers at the University of Texas at Austin, it was very far from my last. These volunteers maintain the massive and growing EWD archive. It's a tremendous and erudite proto-blog, the extraordinary record of an exemplary life, and it's one of my favorite places on the Web. A year after his death, a computer scientist who devoted himself to teaching people how to think is still on the podium, delivering gem after gem of insight.
Born in the Netherlands in 1930, Dijkstra was a witty and thoroughly engaging writer in his nonnative English ("I have learned to be very suspicious of ideas I cannot express well in both Dutch and English," he noted, late in life. "As nice as it is to have the union at one's disposal, it is wise to confine oneself to the intersection.")
Over a 40-year period that began in the early 1960s, Dijkstra wrote prolifically on timely and compelling topics: from his experience of the evolution of universities on both sides of the Atlantic from the post-WWII era to the beginning of the 21st century; to meditations on the science and art of teaching; to incredibly rich and detailed accounts of his own intellectual methods (don't miss EWD 666: "A problem solved in my head," which contains the endearing aperçu: "Goldbach's Conjecture -- I had never thought that I would ever use that!")
Like entries in a modern weblog, many of the informal pieces collected in the EWD archive were never published in any traditional sense. Instead they were copied (and later photocopied), numbered sequentially from EWD 0 (sadly lost to history) to EWD 1317 ("From van IJzeren's correspondence to my aunt & uncle," written a few months before his death in August 2002) and circulated from the greedy hands of one computer scientist to another like Eastern European samizdat or fourth-generation copies of the Lions books.
For years I have been dipping into this priceless archive (or at least its English language subset; is there a great Dutch-English translator out there who would do the world the incalculable favor of translating the rest?) and I have yet to scratch the surface of its treasures. But I continue to follow the trail; the archive is redolent of the spoor of Dijkstra's intellectual evolution, the physical evidence of a great mind thinking aloud. A fine, clear light shines through it all, the light of intelligence unmarred by any particular arrogance or egotism -- the set of personal qualities I tend to think of as integrity.
Dijkstra is at his iconoclastic best on, for example, academic hypocrisy:
"Today's mathematical culture suffers from a style of publication, in which the results and the reasoning justifying them are published quite explicitly but in which all the pondering is rigorously suppressed, as if the need to ponder were a vulgar infirmity about which we don't talk in civilized company."
Or the relationship between programming and mathematics:
"Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians."
Or the truth itself, however unpalatable:
"French science is poisoned by politics."
One particularly apposite piece (EWD 696) is titled "Written in
"Men lie."
"Yeah, about sleeping with other women, but never about bioluminescent plankton."
-Dan Brown
Here is a brief bio on Edsger Dijkstra.
Unique signatures are rare.
Oh wait......*
You could change the expiration on the temporary cookie they give you to get perminent access. Of course, this would be illegal.
Does anyone know if he routinely let people know what type of pen he was using when he wrote that particular document? Here's one of the ones I found.
Why did he do this? For his own personal notes on which pens were good (I guess important if you are frequently writing things).
Why did he use pens and not electronic formats? For a CS person that surprises me.
Sometimes I wonder when I hear people complain about how the CS industry tends to shun the old timers when the truth is that a lot of these old timers are trying to hang on to legacy technology like C++ or perl when the industry has moved onto bigger and better things.
If I've learned one thing it's that in IS/IT/CS you either adapt and move on or you end up doing tech support on the midnight shift. Plain and simple. I think Fred Brooks touched on this in his book "The Mythical Man Month" when he said that computer programming will never be a mature field because to excel in it you must always be changing your language focus.
Warmest regards,
--Jack
Wagner LLC Consulting Co. - Getting it right the first time
It is official; Salon.com confirms: GOTO is dying One more crippling bombshell hit the already beleaguered GOTO community when IDC confirmed that GOTO market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Salon.com survey which plainly states that GOTO has lost more market share, this news serves to reinforce what we've known all along. GOTO is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be a Bjourne Stroustrop to predict GOTO's future. The hand writing is on the wall: GOTO faces a bleak future. In fact there won't be any future at all for GOTO because GOTO is dying. Things are looking very bad for GOTO. As many of us are already aware, GOTO continues to lose market share. Red ink flows like a river of blood.
GOSUB is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time GOSUB developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: GOSUB is dying.
Let's keep to the facts and look at the numbers.
JMP leader Theo De Raadt states that there are 7000 users of JMP. How many users of BRANCH are there? Let's see. The number of JMP versus BRANCH posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 BRANCH users. RETURN posts on Usenet are about half of the volume of BRANCH posts. Therefore there are about 700 users of RETURN. A recent article put GOSUB at about 80 percent of the GOTO market. Therefore there are (7000+1400+700)*4 = 36400 GOSUB users. This is consistent with the number of GOSUB Usenet posts.
Due to the troubles of QBASIC, abysmal sales and so on, GOSUB went out of business and was taken over by VISUAL BASIC.NET who sell another troubled OS. Now VISUAL BASIC.NET is also dead, its corpse turned over to yet another charnel house.
All major surveys show that GOTO has steadily declined in market share. GOTO is very sick and its long term survival prospects are very dim. If GOTO is to survive at all it will be among OS dilettante dabblers. GOTO continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, GOTO is dead.
Fact: GOTO is dying
The article states that Dijskstra has said:
"Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians."
I do not agree with this. I mean, in pure mathematics there are not much to think about besides mathematics. Programming includes many other aspects, for example creativity. So if you are a poor mathematican but have other qualities that are needed for programming, you would have an easier time doing programming than pure mathemtaics I think.
Only in the United Corporations Of America my friend...
It's not accurate, because that would make the material self-important, tedious, badly written nonsense.
Damn!! I haven't finished mastering C++ and now you tell me it's dead. So where does that leave C. I guess that it is dead too.
Ok then. I'm off to learn Visual Basic and C#. Oh, one more thing. Can you tell me how to get VB and C# running on my Linux, Mac, Solaris, HP-UX, SGI, machines? I can't figure it out.
I heard it's still pretty popular in the routing of traffic on the internet.
Funny, and I thought Salon was the one dying...
"Salon has a history of significant losses and expects to incur operating losses in the near future. For the year ended March 31, 2003, Salon had net losses attributable to common stockholders of $5.7 million and had an accumulated deficit of $82.3 million." -- SEC Annual Report
How can you tell what colour someone is at the other end of a web browser?
Stick Men
There is some saucy stuff in there that he's written about wife swapping and you thought CS was dull.
Tom.
What comes to mind right at first is Dijkstra's Shortest Path Algorithm. And hey, look...that page has java programs. In fact, take a look at a Java applet to better understand the algorithm.
Warning: Opinions known to be heavily biased.
I used your troll generator for my "Goto is Dying" post. Do you like it?
In most civilized countries of which I know, fraud (i.e., falsifying information to get access to goods and/or services to which one is not normally entitled) is illegal.
my pet machine
> You could change the expiration on the temporary cookie they give you to get perminent access. Of course, this would be illegal.
I was winding myself up to sneer, but then I realized that this would be [circumventing] a technological measure that effectively controls access to a work protected under [Title 17].
While we're at it, remember that "No person shall [...] offer to the public [or] provide [...] any technology [...] or part thereof that is primarily designed or produced for the purpose of circumventing a technological measure that effectively controls access to a work protected under [Title 17]."
Citizen, remain at your console while the Secret Service analyzes the case against you and decides your guilt and an appropriate punishment.
If you were blocking sigs, you wouldn't have to read this.
The EWD archive is looking for volunteers to convert the handwritten articles to google-able HTML. See here if you are interested.
...before. Two days after he passed away to be precise.
I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
the forest for the trees
If you can read this sig - the bitch fell off.
Not illegal, just immoral. A bit like this is immoral.
Also the Microsoft-like problems that he faces with IBM. His disdain is clearly shown by labelling IBM the devil!
Dijkstra - trolling since 1975 ;)
I decided to pick one at random, and chose How "they" try to corrupt "us".
It's his discussion on an attempt by Microsoft to pressure his department into
using their products by offering fame and fortune (uhh... I mean graduate
fellowships). He was truly a wise man!
Check out our infosecurity industry blog: http://securitymusings.com/
that support's the KISS principal when it comes to CS
If you can read this sig - the bitch fell off.
And that wasn't "offtopic" either.
Stick Men
> In most civilized countries of which I know, fraud (i.e., falsifying information to get access to goods and/or services to which one is not normally entitled) is illegal.
But falsifying information to justify the invasion of another country is OK.
Sheesh, evil *and* a jerk. -- Jade
I had the pleasure of going to a Q&A session with Djikstra hosted by our university CSClub. It was interesting - he talked about shortest path, algol, and a whole bunch of other stuff.
One of the major points he made before he left, and somewhat adamantly at that, was that software is so poor in quality nowadays because developers don't really bother to come up with formal proofs of correctness for their programs.
There was some back and forth from the audience on this point, with people wondering wether it was feasible for large pieces of software (e.g. OS kernels) to be proven, because of their size and complexity. He didn't seem to think that it should really be a problem, and attributed the lack of correctness proofs to laziness on the part of programmers.
It was an interesting talk.
No point to this post, really.
-Laxitive
(1) He obviously can't tell the difference between pure and applied mathematics and
That conclusion is not obvious. Given that the real world introduces complications that can be ignored in the world of pure mathematics, his (presumed) premise that "if applied is hard, the weaker might better stick with pure" makes logical sense.
(2) How come all the loser mathematicians who can't hack it end up becoming programmers?.
Both of your premises of "loser" and "can't hack it" are just some sort of pejorative that mean nothing in practice if you're trying to make a logical argument, and the "end up becoming programmers" is patently false. So the statement is just plain empty of value.
I've never had much respect for Dijkstra. I have even less now.
Well, as a personal statement of your dislike for someone, it requires no rational justification and hence cannot be faulted. Whether others will feel a consequent lack of respect for your own self as a result is hard to say, but it's pretty safe to assume that they won't be impressed by your ability to reason.
"The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
True Slashdotter alright! ;)
Slashdot Fortune: "Everybody is somebody else's weirdo. -- Dykstra"
Slashdot title: "Dijkstra's Manuscripts Available Online"
Huh?
Jayadev Misra (mentioned in the PDF) used to be my favorite CS prof -- until I read this!! Now, he's my favorite prof out of any discipline.
Kidding aside though, he is an amazing computer scientist (as, of course, was Dijkstra).
RMS licensed 'goto' statement under the Ancient GPL (aGPL) in 1965.
The Internet uses Border Gateway Protocol (BGPv4), which is a Path-Vector routing protocol. OSPF is a Link-State routing protocol.
OSPF is considered an IGP (Interior Gateway Protocol). It can be used within an autonomous system, but has no place in determining path selection for traffic between automonous systems.
As far as IGPs go, there's only one that would be capable of handling the routing table for the entire Internet, and it's not OSPF. IS-IS, Intermediate Syetem to Intermediate System, is another Link-State protocol developed by the OSI during the same period when OSPF was being developed.
They share a lot of similar features, and address all of the same shortcomings inherent to Distance-Vector routing protocols (RIP, IGRP). You can actually redistribute the full Internet routing table from BGP into IS-IS, and it will handle the strain.
Aside from the ability to handle astronomically large routing tables, IS-IS has one additional feature that sets it above OSPF: No requirement for a single backbone area (Area 0, in OSPF speak).
OSPF is not particularly well suited to "meshy" environments, due to the need for a single, clearly defined backbone area (In OSPF, all traffic between non-backbone areas must traverse Area 0). IS-IS alleviates this requirement. There can be multiple Inter-area paths, which can be very useful in a complex network.
Of course, the pool of IS-IS savvy network engineers is far smaller than that of the OSPF disciples, so you don't see it in use very often. The exception is in the service provider space. Big ISPs, and Backbone Carriers frequently utilize IS-IS when an IGP is called for, notably for it's ability to handle large routing tables.
(Don't get me wrong... I'm a fan of OSPF, but much like the programmer folks like to say, "It's just a tool in the toolbox." The savvy network engineer will utilize the Routing Protocol which best suits his requirements (In some cases he'll use more than one), just as the savvy programmer with utilize the programming language that best suits his requirements.)
In summary:
For those that would die defending it, Freedom
has a sweet taste that the protected will never know.
I loved this one. The wolf-goat-cabbage problem will never be the same again.
Quotes in the article may be too much out of context.
Dijkstra was a mathematician and a theoretical computer scientist. If we talk about programming as a branch of applied mathematics, we are talking for example linear programming or nonlinear programming.
And they are more related to designing of algorithms, than to programming in conventional sense.
The Fish says aperçu is a french word that means "outline." Stupid fucking Salon elitist fucktards.
I'm writing obscure french words in an english-language article, thereby ignoring the point of writing it in the first place! I exude a certain je ne sais quoi you cour de merd bourgoise can't approach!
-=-=-=-=-=
I'd rather be flamed than ignored.
He looks like a dog, literally.
Notice how I didn't respond to the trolling part? Good. Now, you don't either.
/syle
He was at UT when I did my master's in CS there, and he was certainly a character. When the speaker walked into the room and saw him on the front row, little beads of sweat would immediately begin to form.
I actually took a class from him, which had a vague Latin name he translated for us as "whatever I want to talk about". He was quirky and intimidating but friendly and engaging at the same time.
Some of the interesting things he did:
He took pictures of each of the students (I think there were 7 of us) to file away somewhere. I guess it helped him remember our names.
He used a different hand for writing on the chalkboard on alternate days. Lefty-days were sometimes a bit rough. He had broken his right wrist a year or so before, and wanted to ensure he could still function if it happened again.
The class had no tests and no homework, but featured an open-ended one-on-one "verbal final" at the end of the semester, either in his (large, corner, carpeted, blackboards-on-every-wall) office, or in his home.
The verbal final featured *me* with those little beads of sweat...
"Whoever modded this up is abusing their points. Whether you agree with him or not about Bush's politics, you can take your pick between (a) troll, or (b) offtopic."
Hopefully congress will fund moderator points to help Bush fight the War on Criticism. (Sure needed them in the current poll thread, didn't he.)
"Personally, I'd like to see more people keep pen and paper journals; one can tell a lot about people from their handwriting."
Mine tells people that only pharmacists can read it.
Man, you sound WHITE.
"I would therefore like to posit that computing's central challenge, viz. 'How not to make a mess of it', has not been met. On the contrary, most of our systems are much more complicated than can be considered healthy, and are too messy and chaotic to be used in comfort and confidence. The average customer of the computing industry has been served so poorly that he expects his system to crash all the time, and we witness a massive worldwide distribution of bug-ridden software for which we should be deeply ashamed."
E.W. Dijkstra: The end of Computing Science?
Austin, 19 November 2000
-kgj
Being able to prove a program is correct is sometimes very important--think pacemakers or fly-by-wire controls in an airplane.
I once had the pleasure of taking a class taught by Dr. Hamming (of Hamming code fame).
Before the first atomic bomb was tested, there was some concern that a chain reaction might ignite the atmosphere. A program was written to determine whether tht would in fact happen. One of Dr. Hamming's concerns was the correctness of that program. If I remember correctly, he determined that there was a high, but not 100%, probability that the program was correct.
No pressure there . . .
Then, af thou haft shewn, I muft fue hif Aff off for Violation of Copieright. And thou art correct, fir, it if indeed my beft Novell.
Shop as usual. And avoid panic buying.
BURNED!!! Take THAT, Mr. President! Hail to the Thief indeed! You have been duely ZINGED by the notorious Black Parrot(19622). .............god your comment was worthless.
In each branch of comp sci, you'll find people who will tell you that the others "are not computer science", but IMHO they all are real and useful aspects of the discipline.
Was the program correct? Did the atomic bomb test ignite the atmosphere?
Could somebody help me (and I'm sure others) figure out how to pronounce Dr. Dijkstra's name? I just don't want to make an ass of myself when discussing him (and his ideas).
-twb
"French science is poisoned by politics."
It should be "Freedom science s poisoned by politics". We have alwasy been at war with Eurasia.
__
Men with no respect for life must never be allowed to control the ultimate instruments of death.
GW Bu
Big deal. Salon.com has clearly come out on the side of the consumer with regard to the right to circumvent access controls. Why should their content be treated differently than that of music publishers?
Ya know, you should take the "including this" outta your sig. It's redundant, implied, sez the same thing twice, and on top of everything, it's repetitive.
Wank it at SmoothPorn.