kids encyclopedia robot

Edsger W. Dijkstra facts for kids

Kids Encyclopedia Facts
Quick facts for kids
Edsger W. Dijkstra
Edsger Wybe Dijkstra.jpg
Dijkstra in 2002
Born (1930-05-11)11 May 1930
Rotterdam, Netherlands
Died 6 August 2002(2002-08-06) (aged 72)
Nuenen, Netherlands
Citizenship Netherlands
Education Leiden University (B.S., M.S.)
University of Amsterdam (Ph.D.)
Spouse(s) Maria (Ria) C. Debets
Awards
  • Turing Award (1972)
  • Harry H. Goode Memorial Award (1974)
  • SIGCSE Outstanding Contribution (1989)
  • ACM Fellow (1994)
  • Dijkstra Prize (2002)
Scientific career
Fields
Institutions
Thesis Communication with an Automatic Computer (1959)
Doctoral advisor Adriaan van Wijngaarden
Doctoral students
  • Nico Habermann
  • Jan van de Snepscheut
Influences
  • Adriaan van Wijngaarden
Influenced

Edsger Wybe Dijkstra (/ˈdkstrə/ DYKE-strə; Dutch: [ˈɛtsxər ˈʋibə ˈdɛikstra]  ( listen); 11 May 1930 – 6 August 2002) was a Dutch computer scientist, programmer, software engineer, systems scientist, and science essayist. He received the 1972 Turing Award for fundamental contributions to developing structured programming languages, and was the Schlumberger Centennial Chair of Computer Sciences at The University of Texas at Austin from 1984 until 2000.

Shortly before his death in 2002, he received the ACM PODC Influential Paper Award in distributed computing for his work on self-stabilization of program computation. This annual award was renamed the Dijkstra Prize the following year, in his honor.

Biography

Early years

Edsger W. Dijkstra was born in Rotterdam. His father was a chemist who was president of the Dutch Chemical Society; he taught chemistry at a secondary school and was later its superintendent. His mother was a mathematician, but never had a formal job.

Dijkstra had considered a career in law and had hoped to represent the Netherlands in the United Nations. However, after graduating from school in 1948, at his parents' suggestion he studied mathematics and physics and then theoretical physics at the University of Leiden.

In the early 1950s, electronic computers were a novelty. Dijkstra stumbled on his career by accident, and through his supervisor, Professor Johannes Haantjes [nl], he met Adriaan van Wijngaarden, the director of the Computation Department at the Mathematical Center in Amsterdam, who offered Dijkstra a job; he officially became the Netherlands' first "programmer" in March 1952.

For some time Dijkstra remained committed to physics, working on it in Leiden three days out of each week. With increasing exposure to computing, however, his focus began to shift.

When Dijkstra married Maria (Ria) C. Debets in 1957, he was required as a part of the marriage rites to state his profession. He stated that he was a programmer, which was unacceptable to the authorities, there being no such profession then in The Netherlands.

In 1959, he received his PhD from the University of Amsterdam for a thesis entitled 'Communication with an Automatic Computer', devoted to a description of the assembly language designed for the first commercial computer developed in the Netherlands, the Electrologica X1. His thesis supervisor was Van Wijngaarden.

Mathematisch Centrum, Amsterdam

From 1952 until 1962, Dijkstra worked at the Mathematisch Centrum in Amsterdam, where he worked closely with Bram Jan Loopstra and Carel S. Scholten, who had been hired to build a computer. Their mode of interaction was disciplined: They would first decide upon the interface between the hardware and the software, by writing a programming manual. Then the hardware designers would have to be faithful to their part of the contract, while Dijkstra, the programmer, would write software for the nonexistent machine. Two of the lessons he learned from this experience were the importance of clear documentation, and that program debugging can be largely avoided through careful design. Dijkstra formulated and solved the shortest path problem for a demonstration at the official inauguration of the ARMAC computer in 1956. Because of the absence of journals dedicated to automatic computing, he did not publish the result until 1959.

At the Mathematical Center, Dijkstra and his colleague Jaap Zonneveld [nl] developed the first compiler for the programming language ALGOL 60 by August 1960, more than a year before a compiler was produced by another group. ALGOL 60 is known as a key advance in the rise of structured programming.

Eindhoven University of Technology

TU Eindhoven
The Eindhoven University of Technology, located in Eindhoven in the south of the Netherlands, where Dijkstra was a professor of mathematics from 1962 to 1984.

In 1962, Dijkstra moved to Eindhoven, and later to Nuenen, in the south of the Netherlands, where he became a professor in the Mathematics Department at the Eindhoven University of Technology. The university did not have a separate computer science department and the culture of the mathematics department did not particularly suit him. Dijkstra tried to build a group of computer scientists who could collaborate on solving problems. This was an unusual model of research for the Mathematics Department. In the late 1960s he built the THE operating system (named for the university, then known as Technische Hogeschool Eindhoven), which has influenced the designs of subsequent operating systems through its use of software-based paged virtual memory.

Burroughs Corporation

Dijkstra joined Burroughs Corporation, a company known then for producing computers based on an innovative hardware architecture, as its research fellow in August 1973. His duties consisted of visiting some of the firm's research centers a few times a year and carrying on his own research, which he did in the smallest Burroughs research facility, namely, his study on the second floor of his house in Nuenen. In fact, Dijkstra was the only research fellow of Burroughs and worked for it from home, occasionally travelling to its branches in the United States. As a result, he reduced his appointment at the university to one day a week. That day, Tuesday, soon became known as the day of the famous 'Tuesday Afternoon Club', a seminar during which he discussed with his colleagues scientific articles, looking at all aspects: notation, organisation, presentation, language, content, etc. Shortly after he moved in 1984 to the University of Texas at Austin (USA), a new 'branch' of the Tuesday Afternoon Club emerged in Austin, Texas.

The Burroughs years saw him at his most prolific in output of research articles. He wrote nearly 500 documents in the EWD series (described below), most of them technical reports, for private circulation within a select group.

The University of Texas at Austin

Main Building at The University of Texas at Austin
The University of Texas at Austin, where Dijkstra held the Schlumberger Centennial Chair in Computer Sciences from 1984 until 1999.

Dijkstra accepted the Schlumberger Centennial Chair in the Computer Science Department at the University of Texas at Austin in 1984.

Last years

Dijkstra worked in Austin until his retirement in November 1999. To mark the occasion and to celebrate his forty-plus years of seminal contributions to computing science, the Department of Computer Sciences organized a symposium, which took place on his 70th birthday in May 2000.

Dijkstra and his wife returned from Austin to his original house in Nuenen (Netherlands) where he found that he had only months to live. He said that he wanted to retire in Austin, Texas, but to die in the Netherlands. Dijkstra died on 6 August 2002 after a long struggle with cancer. He and his wife Maria (Ria) Debets were survived by their three children: Marcus, Femke, and the computer scientist Rutger M. Dijkstra.

Legacy

Dijkstra won the Turing award in 1972 for his advocacy of structured programming, a programming paradigm that makes use of structured control flow as opposed to unstructured jumps to different sections in a program using Goto statements. His 1968 letter to the editor of Communications of ACM, "Go To statement considered harmful", caused a major debate. Modern programmers generally adhere to the paradigm of structured programming.

Among his most famous contributions to computer science is shortest path algorithm, known as Dijkstra's algorithm, widely taught in modern computer science undergraduate courses. His other contributions included the Shunting yard algorithm; the THE multiprogramming system, an important early example of structuring a system as a set of layers; the Banker's algorithm; and the semaphore construct for coordinating multiple processors and programs. Another concept formulated by Dijkstra in the field of distributed computing is that of self-stabilization – an alternative way to ensure the reliability of the system. Dijkstra's algorithm is used in SPF, Shortest Path First, which is used in the routing protocols OSPF and IS-IS.

Personality and working style

Edsger Dijkstra 1994
Dijkstra at the blackboard during a conference at ETH Zurich in 1994. He once remarked, "A picture may be worth a thousand words, a formula is worth a thousand pictures."

In the world of computing science, Dijkstra is well known as a "character". In the preface of his book A Discipline of Programming (1976) he stated the following: "For the absence of a bibliography I offer neither explanation nor apology." In fact, most of his articles and books have no references at all. This approach to references was deplored by some researchers. But Dijkstra chose this way of working to preserve his self-reliance.

As a university professor for much of his life, Dijkstra saw teaching not just as a required activity but as a serious research endeavour. His approach to teaching was unconventional. His lecturing style has been described as idiosyncratic. When lecturing, the long pauses between sentences have often been attributed to the fact that English is not Dijkstra's first language. However the pauses also served as a way for him to think on his feet and he was regarded as a quick and deep thinker while engaged in the act of lecturing. His courses for students in Austin had little to do with computer science but they dealt with the presentation of mathematical proofs. At the beginning of each semester he would take a photo of each of the students, in order to memorize their names. He never followed a textbook, with the possible exception of his own while it was under preparation. When lecturing, he would write proofs in chalk on a blackboard rather than using overhead foils. He invited the students to suggest ideas, which he then explored, or refused to explore because they violated some of his tenets. He assigned challenging homework problems, and would study his students' solutions thoroughly. He conducted his final examinations orally, over a whole week. Each student was examined in Dijkstra's office or home, and an exam lasted several hours.

Dijkstra was also highly original in his way of assessing people's capacity for a job. When Vladimir Lifschitz came to Austin in 1990 for a job interview, Dijkstra gave him a puzzle. Lifschitz solved it and has been working in Austin since then.

He eschewed the use of computers in his own work for many decades. Even after he succumbed to his UT colleagues' encouragement and acquired a Macintosh computer, he used it only for e-mail and for browsing the World Wide Web. Dijkstra never wrote his articles using a computer. He preferred to rely on his typewriter and later on his Montblanc pen. Dijkstra's favorite writing instrument was the Montblanc Meisterstück fountain pen.

He had no use for word processors, believing that one should be able to write a letter or article without rough drafts, rewriting, or any significant editing. He would work it all out in his head before putting pen to paper, and once mentioned that when he was a physics student he would solve his homework problems in his head while walking the streets of Leiden. Most of Dijkstra's publications were written by him alone. He never had a secretary and took care of all his correspondence alone. When colleagues prepared a Festschrift for his sixtieth birthday, published by Springer-Verlag, he took the trouble to thank each of the 61 contributors separately, in a hand-written letter.

Throughout Dijkstra's career, his work was characterized by elegance and economy. A prolific writer (especially as an essayist), Dijkstra authored more than 1,300 papers, many written by hand in his precise script. They were essays and parables; fairy tales and warnings; comprehensive explanation and pedagogical pretext. Most were about mathematics and computer science; others were trip reports that are more revealing about their author than about the people and places visited. It was his habit to copy each paper and circulate it to a small group of colleagues who would copy and forward the papers to another limited group of scientists. His interest with simplicity came at an early age and under his mother's guidance. He once said he had asked his mother whether trigonometry was a difficult topic. She replied that he must learn all the formulas and that further, if he required more than five lines to prove something, he was on the wrong track.

Dijkstra was famous for his wit, eloquence, rudeness, abruptness and often cruelty to fellow professionals, and way with words, such as in his remark, "The question of whether Machines Can Think (…) is about as relevant as the question of whether Submarines Can Swim." His advice to a promising researcher, who asked how to select a topic for research, was the phrase: "Do only what only you can do". Dijkstra was also known for his vocal criticism and absence of social skills when interacting with colleagues. As an outspoken and critical visionary, he strongly opposed the teaching of BASIC.

In many of his more witty essays, Dijkstra described a fictional company of which he served as chairman. The company was called Mathematics, Inc., a company that he imagined having commercialized the production of mathematical theorems in the same way that software companies had commercialized the production of computer programs. He invented a number of activities and challenges of Mathematics Inc. and documented them in several papers in the EWD series. The imaginary company had produced a proof of the Riemann Hypothesis but then had great difficulties collecting royalties from mathematicians who had proved results assuming the Riemann Hypothesis. The proof itself was a trade secret. Many of the company's proofs were rushed out the door and then much of the company's effort had to be spent on maintenance. A more successful effort was the Standard Proof for Pythagoras' Theorem, that replaced the more than 100 incompatible existing proofs. Dijkstra described Mathematics Inc. as "the most exciting and most miserable business ever conceived". EWD 443 (1974) describes his fictional company as having over 75 percent of the world's market share.

On the nature of computer science and computer programming

In The Humble Programmer (1972), Dijkstra wrote: "We must not forget that it is not our [computing scientists'] business to make programs, it is our business to design classes of computations that will display a desired behaviour."

Dijkstra also opposed the inclusion of software engineering under the umbrella of academic computer science. He wrote that, "As economics is known as "The Miserable Science", software engineering should be known as "The Doomed Discipline", doomed because it cannot even approach its goal since its goal is self-contradictory." And "software engineering has accepted as its charter 'How to program if you cannot.'"

EWD manuscripts

Dijkstra was well known for his habit of carefully composing manuscripts with his fountain pen. The manuscripts are called EWDs, since Dijkstra numbered them with EWD, his initials, as a prefix. According to Dijkstra himself, the EWDs started when he moved from the Mathematical Centre in Amsterdam to the Eindhoven University of Technology (then Technische Hogeschool Eindhoven). After going to Eindhoven, Dijkstra experienced a writer's block for more than a year. He distributed photocopies of a new EWD among his colleagues. Many recipients photocopied and forwarded their copies, so the EWDs spread throughout the international computer science community. The topics were computer science and mathematics, and included trip reports, letters, and speeches. These short articles span a period of 40 years. Almost all EWDs appearing after 1972 were hand-written. They are rarely longer than 15 pages and are consecutively numbered. The last one, No. 1318, is from 14 April 2002. Within computer science they are known as the EWD reports, or, simply the EWDs. More than 1300 EWDs have been scanned, with a growing number transcribed to facilitate search, and are available online at the Dijkstra archive of the University of Texas.

Personal life and death

Dijkstra led a modest lifestyle, to the point of being spartan. His and his wife's house in Nuenen was simple, small and unassuming. He did not own a television, a video player, or a mobile telephone, and did not go to the movies. He played the piano, and, while in Austin, liked to go to concerts. An enthusiastic listener of classical music, Dijkstra's favorite composer was Mozart.

Dijkstra died on 6 August 2002. According to officials at the University of Texas, the cause of death was cancer.

Awards and honors

Among Dijkstra's awards and honors are:

In 1969, the British Computer Society (BCS) received approval for an award and fellowship, Distinguished Fellow of the British Computer Society (DFBCS), to be awarded under bylaw 7 of their royal charter. In 1971, the first election was made, to Dijkstra.

In 1990, on occasion of Dijkstra's 60th birthday, the Department of Computer Science (UTCS) at the University of Texas at Austin organized a two-day seminar in his honor. Speakers came from all over the United States and Europe, and a group of computer scientists contributed research articles which were edited into a book.

In 2002, the C&C Foundation of Japan recognized Dijkstra "for his pioneering contributions to the establishment of the scientific basis for computer software through creative research in basic software theory, algorithm theory, structured programming, and semaphores." Dijkstra was alive to receive notice of the award, but it was accepted by his family in an award ceremony after his death.

Shortly before his death in 2002, Dijkstra received the ACM PODC Influential-Paper Award in distributed computing for his work on self-stabilization of program computation. This annual award was renamed the Dijkstra Prize (Edsger W. Dijkstra Prize in Distributed Computing) the following year, in his honor.

The Dijkstra Award for Outstanding Academic Achievement in Computer Science (Loyola University Chicago, Department of Computer Science) is named for Edsger W. Dijkstra. Beginning in 2005, this award recognizes the top academic performance by a graduating computer science major. Selection is based on GPA in all major courses and election by department faculty.

The Department of Computer Science (UTCS) at the University of Texas at Austin hosted the inaugural Edsger W. Dijkstra Memorial Lecture on 12 October 2010. Tony Hoare, Emeritus Professor at Oxford and Principal Researcher at Microsoft Research, was the speaker for the event. This lecture series was made possible by a generous grant from Schlumberger to honor the memory of Dijkstra.

See also

Kids robot.svg In Spanish: Edsger Dijkstra para niños

Selected publications

  • — (1962). A Primer of ALGOL 60 Programming: Together with Report on the Algorithmic Language ALGOL 60. Academic Press. ISBN 978-0122162503.
  • —; Dahl, Ole-Johan; Hoare, C.A.R. (1972). Structured Programming. Academic Press. ISBN 978-0-12-200550-3.
  • — (1976). A Discipline of Programming. Prentice Hall. ISBN 978-0132158718. https://archive.org/details/disciplineofprog0000dijk.
  • — (1982). Selected Writings on Computing: A Personal Perspective. Monographs in Computer Science. Springer. ISBN 978-0387906522. https://books.google.com/books?id=Y54ACAAAQBAJ.
  • —; Feijen, W.H.J.; Sterringa, Joke (1988). A Method of Programming. Addison-Wesley. ISBN 978-0201175363.
  • —; Scholten, Carel S. (1990). Predicate Calculus and Program Semantics. Texts and Monographs in Computer Science. Springer-Verlag. ISBN 978-0387969572. https://books.google.com/books?id=cCbjBwAAQBAJ.
  • — (1959). "A Note on Two Problems in Connexion with Graphs". Numerische Mathematik 23 (3): 269–271. doi:10.1007/BF01386390. http://www-m3.ma.tum.de/foswiki/pub/MN0506/WebHome/dijkstra.pdf.
  • — (1962). "Some Meditations on Advanced Programming". Proc. IFIP Congress. Amsterdam: North-Holland. pp. 535–8.
  • — (1965). Cooperating Sequential Processes (Technical report). Technische Hogeschool Eindhoven. EWD-123. Retrieved 2020-09-20. Reprinted in Genuys, F., ed. (1968). Programming Languages: N.A.T.O. Advanced Summer School Held in Villard-de-Lans in 1966. Academic Press. pp. 43–112. OCLC 499952053. Published as Dijkstra, E.W. (1968). "Cooperating Sequential Processes". In Hansen, P.B.. The Origin of Concurrent Programming. New York: Springer. pp. 65–138. doi:10.1007/978-1-4757-3472-0_2. ISBN 978-1-4419-2986-0. https://research.tue.nl/nl/publications/cooperating-sequential-processes(4b2c511e-dce0-4d2c-a1ee-51d4129c6fa4).html.
  • — (1965). "Solution of a Problem in Concurrent Programming Control". Comm. ACM 8 (9): 569. doi:10.1145/365559.365617.
  • — (1965). "Programming Considered as a Human Activity". Proc. IFIP Congress. pp. 213–7.
  • — (1968). "Go To Statement Considered Harmful". Comm. ACM 11 (3): 147–8. doi:10.1145/362929.362947.
  • — (1968). "A Constructive Approach to the Problem of Program Correctness". BIT Numerical Mathematics 8 (3): 174–186. doi:10.1007/bf01933419.
  • — (May 1968). "The Structure of the 'THE'-Multiprogramming System". Comm. ACM 11 (5): 341–346. doi:10.1145/363095.363143.
  • Dijkstra, Edsger W. (April 1970) Notes on Structured Programming

. Report.

  • — (1971). A Short Introduction to the Art of Computer Programming. Eindhoven: Technische Hogeschool. OCLC 3474242. EWD316.
  • — (1971). "Hierarchical Ordering of Sequential Processes". Acta Inform. 1 (2): 115–138. doi:10.1007/bf00289519.
  • — (1972). "The Humble Programmer". Comm. ACM 15 (10): 859–866. doi:10.1145/355604.361591.
  • — (June–July 1974). "Programming as a Discipline of Mathematical Nature". American Mathematical Monthly 81 (6): 608–612. doi:10.2307/2319209.
  • — (1974). "On the role of scientific thought". E.W. Dijkstra Archive, Center for American History, University of Texas at Austin. EWD447.
  • — (1974). "Self-stabilizing Systems in Spite of Distributed Control". Comm. ACM 17 (11): 643–4. doi:10.1145/361179.361202.
  • — (1975). "How do we tell truths that might hurt?". Selected Writings on Computing: A Personal Perspective. Monographs in Computer Science. Springer (published 1982). pp. 129–131. ISBN 978-0387906522. https://books.google.com/books?id=Y54ACAAAQBAJ.
  • — (1975). "Craftsman or Scientist". ACM Pacific 1975. pp. 217–223.
  • — (1975). "On the teaching of programming, i. e. on the teaching of thinking". Language Hierarchies and Interfaces 1975: 1–10.
  • — (1977). "Programming: From Craft to Scientific Discipline". International Computing Symposium 1977: 23–30.
  • — (1978). "On the Interplay between Mathematics and Programming". Program Construction. Lecture Notes in Computer Science. 69. pp. 35–46. doi:10.1007/BFb0014649. ISBN 978-3-540-09251-3. https://www.springer.com/gb/book/9783540092513.
  • — (1975). "Correctness Concerns And, Among Other Things, Why They Are Resented". (ACM) Proceedings of the International Conference on Reliable Software. 21–23 April 1975, Los Angeles, California, USA: 546–550.
  • — (1975). "Guarded Commands, Nondeterminacy and Formal Derivation of Programs". Comm. ACM 18 (8): 453–7. doi:10.1145/360933.360975.
  • — (1978). "Finding the Correctness Proof of a Concurrent Program". Program Construction 1978: 24–34.
  • — (1984). "The threats to computing science". E.W. Dijkstra Archive, Center for American History, University of Texas at Austin. EWD898.
  • — (1986). "On a Cultural Gap". The Mathematical Intelligencer 8 (1): 48–52. doi:10.1007/BF03023921.
  • — (1987). "Mathematicians and Computing Scientists: The Cultural Gap". Abacus 4 (4): 26–31.
  • — (1989). "On the Cruelty of Really Teaching Computer Science". Comm. ACM 32 (12): 1398–1404. doi:10.1145/76380.76381. https://cacm.acm.org/magazines/1989/12/9706-a-debate-on-teaching-computing-science/abstract.
  • — (1999). "Computing Science: Achievements and Challenges". ACM SIGAPP Applied Computing Review 7 (2): 2–9. doi:10.1145/335527.335528.
  • — (2001). "The End of Computing Science?". Comm. ACM 44 (3): 92. doi:10.1145/365181.365217.
  • — (2001). "What led to Notes on Structured Programming". E.W. Dijkstra Archive, Center for American History, University of Texas at Austin.
kids search engine
Edsger W. Dijkstra Facts for Kids. Kiddle Encyclopedia.