Adele Goldberg and Dan Ingalls win 2002 Dr. Dobb's Excellence in Programming Awards
written by Peter William Lount
The Xerox Parc team
that brought us Smalltalk invented and integrated many of the core technologies
in use today in what we call the Personal Computer. This includes the invention
of overlapping windows, object oriented programming, integrated development
environments plus much more. It also includes the integration of graphical
user interfaces, pop-up menus, objects, networking, the mouse (invented by
Doug Englebart), virual machines, automatic memory management/garbage collection,
multiple font text editors, drag and drop and more. Many other systems that
have been derived from Smalltalk's pioneering capabilities have received the
majority of attention. Some of these competing systems have been hailed as
breakthroughs even though their breakthrough technology was first implemented
and integrated into Smalltalk systems as early as 1972. It's nice to see a
mainstream hardcore programming magazine, like Dr. Dobb's, recognize two of
the creators of Smalltalk.
Exerpts from the Dr. Dobb's article.
"The recipients of this year's award, Adele Goldberg and Dan Ingalls,
are pioneers in the area of object-oriented programming in general, and the
Smalltalk language and development environment in particular. As researchers
at Xerox's Palo Alto Research Center (PARC), Goldberg and Ingalls each recognized
in their own way the promise of objects, and they were in a unique position
to put those theories into practice in an architecture based on objects at
"As early as 1977, Goldberg, along with Alan Kay, presented the goals for
the Smalltalk research efforts in a paper entitled "Personal Dynamic Media"
(IEEE Computer, March 1977). She went on to author and coauthor many of the
definitive books on Smalltalk-80 programming including, with David Robson,
the seminal Smalltalk-80: The Language and Its Implementation (Addison-Wesley,
1989, ISBN 0201136880), as well as numerous papers on object technology."
"Like Goldberg, Dan Ingalls was an original member of the PARC team that
developed Smalltalk. He has been the principal architect of numerous Smalltalk
virtual machines and kernel systems. The first of these, Smalltalk-72, supported
the work reported in "Personal Dynamic Media." Smalltalk-76, described in
ACM's 1978 Principles of Programming Languages (POPL) proceedings (and available
at POPL Smalltalk 76
), was the first modern Smalltalk implementation
with message syntax, compact compiled code, inheritance and efficient message
execution, and its architecture endures in Smalltalk-80, the major documented
release of Smalltalk work at Xerox. Most recently he designed the kernel of
the Squeak open Smalltalk system, a practical Smalltalk written in itself.
(For more information about Squeak, see OOPSLA Squeak.) Ingalls also invented the BitBlt graphics
primitive and pop-up menus, and was the principal designer of the Fabrik visual-programming
environment while at Apple Computer."
"Although Goldberg and Ingalls worked at very different levels, the breadth
of their collaborative territory is what shaped the final result. Ingalls
says of his technical achievements, "I loved the challenge in efficiency and
generality that it took to make Smalltalk real, but what gives me the most
satisfaction looking back is that we built a serious system that is actually
fun to use. We had a passion, inspired by Alan, to liberate the beauty of
computer science from the barnacled past of ad hoc engineering." Goldberg
adds, "During the PARC days, the opportunity to work with children and other
nontechnical users kept us focused on how to use rigorously what people already
know informally about objects. But the most thrilling experience for me was
to work with ParcPlace customers in both large and small companies, and see
how our technology enabled them to finally break the barrier between business
understanding and systems implementation.
1999-2010 by Smalltalk.org, All Rights Reserved.
February 28 2015
On speaking languages
naturally with ease
aiming for fluid fluency.