Douglas McIlroy

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.

File:Dennis Ritchie (right) Receiving Japan Prize.jpeg
McIlroy (left) with former colleague Dennis Ritchie at the Japan Prize Foundation in May 2011.
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 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," where the meaning of negative code is taken to be similar to the famous Apple developer team anecdote [2] (i.e., when a change in a program source makes the amount 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.
  • As a programmer, it is your job to put yourself out of business. What you do today can be automated tomorrow.
  • Keep it simple, make it general, and make it intelligible.
  • The real hero of programming is the one who writes negative code.

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.

External links