Douglas McIlroy
Malcolm Douglas McIlroy | |
---|---|
Born | 1932 (age 91–92) |
Alma mater | Cornell University (B.S., Engineering Physics, 1954) Massachusetts Institute of Technology (Ph.D., Applied Mathematics, 1959) |
Occupation(s) | mathematician, engineer, programmer |
Known for | Unix pipelines, software componentry, spell, diff, sort, join, graph, speak, tr |
Malcolm Douglas McIlroy (born 1932) is a mathematician, engineer, and programmer. As of 2007 he is an Adjunct Professor of Computer Science at Dartmouth College. McIlroy is best known for having originally developed Unix pipelines, software componentry and several Unix tools, such as spell, diff, sort, join, graph, speak, and tr.
His seminal work on software componentization[1] makes him a pioneer of component-based software engineering and software product line engineering.
Biography
McIlroy earned his Bachelor's degree in engineering physics from Cornell University in 1954, and a Ph.D. in applied mathematics from MIT in 1959 for his thesis On the Solution of the Differential Equations of Conical Shells. He taught at MIT from 1954 to 1958.
McIlroy joined Bell Laboratories in 1958; from 1965 to 1986 was head of its Computing Techniques Research Department (the birthplace of the Unix operating system), and thereafter was Distinguished Member of Technical Staff.
From 1967 to 1968, McIlroy also served as a visiting lecturer at Oxford University.
In 1997, McIlroy retired from Bell Labs, and took a position as an Adjunct Professor in the Dartmouth College Computer Science Department.
Awards
McIlroy is a member of the National Academy of Engineering, and has won both the USENIX Lifetime Achievement Award ("The Flame") and its Software Tools award. He has previously served the Association for Computing Machinery as national lecturer, Turing Award chairman, member of the publications planning committee, and associate editor for the Communications of the ACM, the Journal of the ACM, and ACM Transactions on Programming Languages and Systems. He also served on the executive committee of CSNET.
Views on computing
McIlroy is attributed the quote "The real hero of programming is the one who writes negative code,"[2] where the meaning of negative code is taken to be similar to the famous Apple developer team anecdote[3] (i.e., when a change in a program source makes the number of lines of code decrease ('negative' code), while its overall quality, readability or speed improves).
Quotes
- "Those types are not "abstract"; they are as real as int and float."[4]
- "As a programmer, it is your job to put yourself out of business. What you do today can be automated tomorrow."[2]
- "Keep it simple, make it general, and make it intelligible."[2]
- "The real hero of programming is the one who writes negative code."[2]
See also
References
- ^ McIlroy, Malcolm Douglas (January 1969). "Mass produced software components" (PDF). Software Engineering: Report of a conference sponsored by the NATO Science Committee, Garmisch, Germany, 7–11 Oct. 1968. Scientific Affairs Division, NATO. p. 79.
- ^ a b c d These quotes were heard during a talk he gave to the DLSLUG 12/3/09
- ^ "MacPaint and QuickDraw Source Code". Computer History Museum.
- ^ The C++ Programming Language by Bjarne Stroustrup at the beginning of the chapter "Classes"
External links
- Doug McIlroy's homepage
- Biography
- Doug McIlroy Facts
- McIlroy's History of Unix speech (audio), includes many autobiographical notes, along with discussion of many of the major Unix authors
- Ancestry of Linux - How the Fun Began, presentation November 2005: (presentation) (audio) (video)
- Original unix spell source code, written by Doug McIlroy