Dan Ingalls
   HOME

TheInfoList



OR:

Daniel Henry Holmes Ingalls Jr. (born 1944) is a pioneer of
object-oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of p ...
computer programming Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
and the principal
architect An architect is a person who plans, designs and oversees the construction of buildings. To practice architecture means to provide services in connection with the design of buildings and the space within the site surrounding the buildings that h ...
, designer and implementer of five generations of Smalltalk environments. He designed the
bytecode Bytecode (also called portable code or p-code) is a form of instruction set designed for efficient execution by a software interpreter. Unlike human-readable source code, bytecodes are compact numeric codes, constants, and references (norma ...
d
virtual machine In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized h ...
that made Smalltalk practical in 1976. He also invented
bit blit Bit blit (also written BITBLT, BIT BLT, BitBLT, Bit BLT, Bit Blt etc., which stands for ''bit block transfer'') is a data operation commonly used in computer graphics in which several bitmaps are combined into one using a '' boolean function''. Th ...
, the general-purpose graphical operation that underlies most
bitmap In computing, a bitmap is a mapping from some domain (for example, a range of integers) to bits. It is also called a bit array or bitmap index. As a noun, the term "bitmap" is very often used to refer to a particular bitmapping application: t ...
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
systems today, and pop-up menus. He designed the generalizations of BitBlt to arbitrary color depth, with built-in scaling, rotation, and
anti-aliasing Anti-aliasing may refer to any of a number of techniques to combat the problems of aliasing in a sampled signal such as a digital image or digital audio recording. Specific topics in anti-aliasing include: * Anti-aliasing filter, a filter used be ...
. He made major contributions to the
Squeak Squeak is an object-oriented, class-based, and reflective programming language. It was derived from Smalltalk-80 by a group that included some of Smalltalk-80's original developers, initially at Apple Computer, then at Walt Disney Imagineering, ...
version of Smalltalk, including the original concept of a Smalltalk written in itself and made
portable Portable may refer to: General * Portable building, a manufactured structure that is built off site and moved in upon completion of site and utility work * Portable classroom, a temporary building installed on the grounds of a school to provide ...
and efficient by a Smalltalk-to- C
translator Translation is the communication of the meaning of a source-language text by means of an equivalent target-language text. The English language draws a terminological distinction (which does not exist in every language) between ''transl ...
.


Education

Ingalls received his
Bachelor of Arts Bachelor of arts (BA or AB; from the Latin ', ', or ') is a bachelor's degree awarded for an undergraduate program in the arts, or, in some cases, other disciplines. A Bachelor of Arts degree course is generally completed in three or four year ...
(B.A.) in
physics Physics is the natural science that studies matter, its fundamental constituents, its motion and behavior through space and time, and the related entities of energy and force. "Physical science is that department of knowledge which r ...
from
Harvard University Harvard University is a private Ivy League research university in Cambridge, Massachusetts. Founded in 1636 as Harvard College and named for its first benefactor, the Puritan clergyman John Harvard, it is the oldest institution of high ...
, and his
Master of Science A Master of Science ( la, Magisterii Scientiae; abbreviated MS, M.S., MSc, M.Sc., SM, S.M., ScM or Sc.M.) is a master's degree in the field of science awarded by universities in many countries or a person holding such a degree. In contrast t ...
(M.S.) in electrical engineering from Stanford University. While working toward a
Doctor of Philosophy A Doctor of Philosophy (PhD, Ph.D., or DPhil; Latin: or ') is the most common degree at the highest academic level awarded following a course of study. PhDs are awarded for programs across the whole breadth of academic fields. Because it is ...
(Ph.D.) at Stanford, he started a company to sell a software measurement invention that he perfected, and never returned to
academia An academy (Attic Greek: Ἀκαδήμεια; Koine Greek Ἀκαδημία) is an institution of secondary or tertiary higher learning (and generally also research or honorary membership). The name traces back to Plato's school of philosophy, ...
.


Work

Ingalls' first well known research was at
Xerox PARC PARC (Palo Alto Research Center; formerly Xerox PARC) is a research and development company in Palo Alto, California. Founded in 1969 by Jacob E. "Jack" Goldman, chief scientist of Xerox Corporation, the company was originally a division of Xero ...
, where he began a lifelong research association with
Alan Kay Alan Curtis Kay (born May 17, 1940) published by the Association for Computing Machinery 2012 is an American computer scientist best known for his pioneering work on object-oriented programming and windowing graphical user interface (GUI) d ...
, and did his award-winning work on Smalltalk. As Peter Siebel wrote about Dan in his book Coders at Work, Reflections on the Craft of Programming, "If Alan Kay is Smalltalk’s father, Dan Ingalls is its mother—Smalltalk may have started as a gleam in Alan Kay’s eye, but Ingalls is the one who did the hard work of bringing it into the world. Starting with the first implementation of Smalltalk, written in BASIC and based on one page of notes from Kay, Ingalls has been involved in implementing seven generations of Smalltalk from the first prototype to the present-day open source implementation, Squeak." Dan's design principles for Smalltalk included the important concepts of personal mastery, good design in a uniform framework, language for communication, interaction of language, the concept of "objects", storage management, messages, and other principles outlined in his Byte Magazine article in 1981, "Design Principles of Smalltalk". In 2020, Ingalls wrote The Evolution of Smalltalk for the ACM HOPL Conference, ACM Program. Lang., Vol. 4, No. HOPL, Article 85. Publication date: June 2020, which details the design of Smalltalk through Ingalls's multiple iterations of the language, including his development of Squeak in 1996. Although some may not be familiar with the language of Smalltalk or the fact that it began object orientation in programming, it is still a useful and well-used language. Larry Tesler mentioned to Alan Kay and Dan Ingalls that he thought blocks of bits could be easily moved on the screen. Ingalls told Larry that he would learn how to program in the lowest-level microcode to harness all available power. Diana Merry had been working on programming text display, and after talking to her, Ingalls dug into the problem. Months later, he figured out a way to move information that was "bit efficient". "The idea had come to him visually. When you are moving information on the display, whether it is scrolling or copying text or copying a graphical image from one place to another, you have a source and a destination within the computer's memory. In his mind, he envisioned the concept as a wheel that rotated from the starting point to the end point. It was an idea that seemed obvious after Ingalls had conceived of it, and it has been copied widely by all of the graphical computing systems that have followed. Today it remains at the heart of both the Macintosh and Windows computing worlds. In the early 1970's, however, it was a radically new idea. Called BitBlt, it enabled graphical menu systems to "pop-up" instantly on an Alto screen in response to a mouse click. As much as any single software innovation, BitBlt made the modern graphical computer interface possible." Ingalls moved to
Apple Inc. Apple Inc. is an American multinational technology company headquartered in Cupertino, California, United States. Apple is the largest technology company by revenue (totaling in 2021) and, as of June 2022, is the world's biggest company ...
He left research in 1987, for a time to run the family business, the Homestead Resort, in
Hot Springs, Virginia Hot Springs is a census-designated place (CDP) in Bath County, Virginia, United States. The population as of the 2010 Census was 738. It is located about southwest of Warm Springs on U.S. Route 220. Hot Springs has several historic resorts, f ...
. The Ingalls family owned and operated the Homestead Resort for 100 years. Ingalls returned to Silicon Valley in 1995, first working at
Interval Research Corporation Interval Research Corporation was founded in 1992 by Paul Allen and David Liddle. It was a Palo Alto laboratory and technology incubator focusing on consumer product applications and services with a focus on the Internet. A 1997 version of the com ...
, and then returned to Apple. Starting at Xerox, and then at Apple, he developed Fabrik, a visual programming language and
integrated development environment An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools ...
(IDE), consisting of a kit of computing and
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
components that can be "wired" together to build new components and useful
application software Application may refer to: Mathematics and computing * Application software, computer software designed to help the user to perform specific tasks ** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
. Then he moved to Hewlett-Packard Labs, where he developed a module architecture for
Squeak Squeak is an object-oriented, class-based, and reflective programming language. It was derived from Smalltalk-80 by a group that included some of Smalltalk-80's original developers, initially at Apple Computer, then at Walt Disney Imagineering, ...
. He also started a small firm, Weather Dimensions, Inc., which displays local
weather Weather is the state of the atmosphere, describing for example the degree to which it is hot or cold, wet or dry, calm or stormy, clear or cloud cover, cloudy. On Earth, most weather phenomena occur in the lowest layer of the planet's atmos ...
data on home computers. Ingalls then worked as a Distinguished
Engineer Engineers, as practitioners of engineering, are professionals who invent, design, analyze, build and test machines, complex systems, structures, gadgets and materials to fulfill functional objectives and requirements while considering the limit ...
at Sun Microsystems, where he worked in the Sun Microsystems Laboratories (Sun Labs) research wing. His latest project is a
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of websites use JavaScript on the client side for webpage behavior, of ...
environment named Lively Kernel, which allows live, interactive Web programming and objects from inside
Web browser A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used o ...
s. While best known for his work on Smalltalk, Ingalls is also known for developing an
optical character recognition Optical character recognition or optical character reader (OCR) is the electronic or mechanical conversion of images of typed, handwritten or printed text into machine-encoded text, whether from a scanned document, a photo of a document, a sc ...
system for
Devanagari Devanagari ( ; , , Sanskrit pronunciation: ), also called Nagari (),Kathleen Kuiper (2010), The Culture of India, New York: The Rosen Publishing Group, , page 83 is a left-to-right abugida (a type of segmental writing system), based on the ...
writing, which he did in collaboration with his father, Daniel H. H. Ingalls, Sr., a
professor Professor (commonly abbreviated as Prof.) is an academic rank at universities and other post-secondary education and research institutions in most countries. Literally, ''professor'' derives from Latin as a "person who professes". Professors ...
of
Sanskrit Sanskrit (; attributively , ; nominally , , ) is a classical language belonging to the Indo-Aryan branch of the Indo-European languages. It arose in South Asia after its predecessor languages had diffused there from the northwest in the late ...
. Ingalls moved to
SAP SE Sap is a fluid transported in xylem cells (vessel elements or tracheids) or phloem sieve tube elements of a plant. These cells transport water and nutrients throughout the plant. Sap is distinct from latex, resin, or cell sap; it is a sepa ...
Palo Alto Research Center, as a
fellow A fellow is a concept whose exact meaning depends on context. In learned or professional societies, it refers to a privileged member who is specially elected in recognition of their work and achievements. Within the context of higher education ...
. He was a key member of the chief scientist team guiding the company's technology vision, direction, and execution, living near the beach in Rio del Mar, Aptos, California with his wife Cathleen Galas, where he also contributed to development of the
Squeak Squeak is an object-oriented, class-based, and reflective programming language. It was derived from Smalltalk-80 by a group that included some of Smalltalk-80's original developers, initially at Apple Computer, then at Walt Disney Imagineering, ...
implementation of Smalltalk, JavaScript research, and the Lively Kernel Project, which now resides at the Hasso Plattner Institute. Ingalls now consults and lives near the beach in Manhattan Beach, California, with his wife, Cathleen Galas.


Awards

In 1984, Ingalls received the Association for Computing Machinery (ACM) Grace Murray Hopper Award for Outstanding Young Scientist, for his
Xerox PARC PARC (Palo Alto Research Center; formerly Xerox PARC) is a research and development company in Palo Alto, California. Founded in 1969 by Jacob E. "Jack" Goldman, chief scientist of Xerox Corporation, the company was originally a division of Xero ...
research, including
bit blit Bit blit (also written BITBLT, BIT BLT, BitBLT, Bit BLT, Bit Blt etc., which stands for ''bit block transfer'') is a data operation commonly used in computer graphics in which several bitmaps are combined into one using a '' boolean function''. Th ...
. In 1987, with
Alan Kay Alan Curtis Kay (born May 17, 1940) published by the Association for Computing Machinery 2012 is an American computer scientist best known for his pioneering work on object-oriented programming and windowing graphical user interface (GUI) d ...
, and Adele Goldberg, he received the ACM Software System Award, for his work on Smalltalk, the first fully
object oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of p ...
software system. In 2002, he was co-recipient, with Adele Goldberg, of the
Dr. Dobb's Excellence in Programming award The Dr. Dobb's Excellence in Programming Award was an annual prize given to individuals who, in the opinion of the editors of Dr. Dobb's Journal, "made significant contributions to the advancement of software development." The Excellence in Program ...
. Includes biographical sketch. In 2022, Ingalls was made a
Fellow A fellow is a concept whose exact meaning depends on context. In learned or professional societies, it refers to a privileged member who is specially elected in recognition of their work and achievements. Within the context of higher education ...
of the Computer History Museum for creating, developing and building seven generations of the Smalltalk programming environment, and promoting object-oriented programming. Also in 2022, Dan Ingalls received the Senior Dahl-Nygaard Prize at
ECOOP The European Conference on Object-Oriented Programming (ECOOP), is an annual conference covering topics on object-oriented programming systems, languages and applications. Like other conferences, ECOOP offers various tracks and many simultaneous ...
for his impact on modern computing.


Bibliography


Dan Ingalls Bio
biography on Squeak site
FLOSS Weekly interview with Dan Ingalls
* Ingalls, Daniel (1975
Untitled interoffice memo of November 19, 1975, Xerox PARC
* Ingalls, Daniel H.H. and Daniel H.H. Ingalls 1985: The Mahābhārata: Stylistic study, computer analysis and concordance. Journal of South Asian Literature 20:17-46. * Ingalls, Daniel H. H. and Daniel H. H. Ingalls 1980
Video of joint lecture on Sanskrit OCR given at Xerox PARC in 1980
* Wujastyk, D. (1988
Report on the Sanskrit Text Archive Conference
Austin, Texas, October 28–29, 1988. *Object-Oriented Programming, July 1989 *, , Dan Ingalls and Krzysztof Palacz
"Web Browser as an Application Platform: The Lively Kernel Experience"
Sun Labs, Report Number: TR-2008-175, Jan 30, 2008. *Dan Ingalls demos Lively at Google, March 2008 *Dan Ingalls: The Live Web, Drag 'n Drop in the Cloud, JS Conf, 2012 *Dan Ingalls: YOW! 2016 - Pronto: Toward a Designer's Notebook *The Evolution of Smalltalk


References

20. “Back to the Future: the story of Squeak, a practical Smalltalk written in itself” by Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace, Alan Kay. Paper presented at OOPSLA, Atlanta, Georgia, 1997 by Dan Ingalls. 21. Dahl-Nygaard Senior Prize: Dan Ingalls, A Fireside Chat (Berlin, 2022)


External links


An interview of Dan at QCon London 2010

Sanskrit and OCR
A video of Dan and his father recorded at Xerox PARC April 17, 1980 *
Dan Ingalls: Lecture on object-oriented programming
video at archive.org *
Lively Kernel project page



video archive for the EE380 talk
*Alto System Project: Dan Ingalls demonstrates Smalltalk *Recording of Dan Ingalls' ECOOP'22 Keynote Available * A recording of Dan Ingalls’ AITO Dahl-Nygaard Senior Prize Keynote is available on YouTube {{DEFAULTSORT:Ingalls, Daniel Henry Holmes Jr. 1944 births Harvard University alumni Stanford University School of Engineering alumni American computer scientists American computer programmers Grace Murray Hopper Award laureates Living people Dahl–Nygaard Prize People from Aptos, California Scientists at PARC (company)