before joining jpl
i worked in the cs research group at bell labs
(1980-1981 and 1983-2003)
a truly remarkable group that was given virtually complete
freedom
to pursue research goals, with no perceptible management oversight.
i made a map of the 5th floor at stair 9
in building 2, the most desirable location for one's office at the time.
the map lists the main occupants for each office over the years,
with the person that occupied it the longest in red.
from the 30-some people shown on this map, just a few remained to
witness the final disappearance of center 1127
from the bell labs org charts in august 2005:
rae mclellan, howard trickey (since moved to google) and
dennis ritchie (now retired). one by one, the others
all found a safe haven elsewhere.
|
|
Software
|
- spin
efficient verification system for distributed software systems
(a logic model checker).
- swarm
pre-processor for spin, to setup swarm verification jobs on
large numbers of cpus.
- scrub -- a peer code review support tool,
used for safety- and mission-critical code.
not yet available outside nasa.
- uno
simple static analysis tool for ANSI C programs, based on Ctree 0.14.
[see also this overview]
- ncsl.tar.gz
line counter for C and C++ that reports the raw nr of lines, nr
of non-comment and non-blank lines and the nr of comments.
- gh_cpp.tar.gz
implementation of the C preprocessor, with some additional
checking capabilities (can explain macro-expansions,
and can check a small subset of the misra-c 2004 rules).
- older things (and mostly no longer kept up to date):
-
feaver model extraction system for ANSI-C source code:
the first step towards the development of a general purpose tool
for the verification of distributed systems applications directly
from program source text.
the system was used at Bell Labs between 1998 and 2000 to exhaustively
verify the call-processing software of Lucent's PathStar access server.
The source code is available, see the
Modex distribution page.
- ubet
requirements capture and analysis toolset from around 1995,
originally called msc/poga, productized and supported
within Lucent as the uBET tool, but later abandoned when Lucent
more or less broke up.
- sdlvalid, an early verifier for SDL.
the tool was written in 1987/1988, and was used internally for
about five years. it was never approved for public release.
- microtrace a small demo
awk-script for FSM verification, written 1987.
- pico/popi
digital darkroom software (written 1984).
here is also a tar archive
pico.tar
with the pre-ansi c source code that includes the little on-the-fly compiler
that ken thompson and rob pike wrote (both now at google).
the compiler in gen.c (from 1984) generated machine code for a VAX.
this code will of course not compile or run on any modern machine.
see also pico's website.
|
|
|
Books
|
-
The Spin Model Checker - Primer and Reference Manual.
Describes the most recent version of Spin, 608 pgs.
Addison-Wesley Publ., ISBN 0-321-22862-6, available September 2003.
-
Design and Validation of Computer Protocols, Prentice Hall, 1991.
The Spin model checker was originally written for this book in 1989.
The book contains the full source text for the first version of Spin.
-
The Early History of Data Networks, IEEE Computer Society Press, 1995.
(inspired by the first chapter in the Design and Validation book.)
-
Beyond Photography -- The Digital Darkroom, Prentice Hall, 1988. Apparently this was the first book to coin the term digital darkroom;
it predicted that the days of conventional photograph would be numbered.
The book, and lots of background information, is today accessible online via the link above.
|
|
|
Papers etc.
|
|
|
|
Little Movies
|
- pixelface, 1988, a five minute demo of Pico/Popi (Mpeg 40Mb).
A portion of the video was shown on CNN Science &
Technology report in 1989: see clip.
- walkman, 1984, a 40 second try to make a little movie,
with Rob Pike, Don Mitchell, and Lillian Schwartz (Mpeg 7 Mb).
A frame from the movie was used for the cover of IEEE Spectrum, June 1984.
|
|
|
Covers, Logos etc.
|
- The first Inferno logo, 1996.
- CS Research Center logo, 1997.
- Spin logo, 2000.
- NASA/JPL Lars logo, 2004.
- CD, floppies, and manual covers, Plan-9, 2nd Edition,
Pub. Harcourt Brace & Company, Orlando, Fl., 1995.
(Illustrations from Louis Figuier, Les Merveilles de la Science, Paris 1867.)
- CD, Plan-9 from Bell Labs, 1st Edition, 1992.
(Three actors from Plan-9, the movie by Ed Wood.)
- CD, Chess Endgames, Vols 1-4, (issued by Ken Thompson, 1991)
(Chess-piece and a small part of Leonardo da Vinci's Creation.)
- AT&T Technical Journal, March/April 1987,
Vol 66, Issue 2.
(Cover with a transformed Pico/Popi Image of Peter Weinberger's portrait.)
- AT&T Bell Laboratories Technical Journal, October 1984,
Vol 63, No. 8, Part 2.
Special Issue on Unix (cover with computer generated graphics.)
|
|
|
Photos
|
- Portraits, a small selection of the portraits
I've taken in the last 25 years or so, mostly with a large studio view camera.
- Masks and Statues from the
collection of Norbert Elias, taken between 1983 and 1987 in Amsterdam
- Pictures of Tessa,
the start of a well-documented life...
|
Press
|
-
Software Development Times, 1 May 2009
-
CACM, July 2008,
In search of dependable design, Vol. 51, No. 7, pp. 14-16.
a couple of quotes from an interview with Leah Hoffman.
-
Story in IEEE Computer, Jan. 2004
-
Interview with FTP online, Oct. 2003
-
Interview with objectmonkey.com, Oct. 2003
-
MIT Technology Review, February 2003,
brief mention in the category of
Software Assurance, in article on ``10 Emerging Technologies
That Will Change the World.''
-
Interview with Software Development Magazine (SD Magazine), on software verification, September 2002, p.15.
-
NJN New Jersey Network News,
an interview on software quality aired in the science and technology
segment on March 6, 2002.
-
Two Dutch journals,
Technisch Weekblad, No. 17,
and Embedded Systems, published
interviews (in Dutch).
-
Infoworld, October 26, 2001
Short feature on code debugging.
-
CIO magazine,
August 1, 2001.
Brief mention of software verification project.
-
New Scientist, 18 November, 2000
-
Future of Software
Column published in FTP magazine in 2000, Fawcette Publ.
-
A series of columns on Smart Machines, published in
Inc. Technology
|
Other
|
- Caltech CS, Faculty Associate, May 2007.
- JPL Fellow appointment, May 2007.
- Honorary doctorate,
Twente University, The Netherlands, December 2006.
-
ACM Kanellakis Theory and Practice Award,
May 2006 (with Vardi, Wolper, and Kurshan).
(press release March 2006)
- US National Academy of Engineering, elected member 2005.
CS peer committee 2008-2011.
-
Thomas Alva Edison Patent Award, 2003, in the Information Technology Category,
for a patent on software verification with FeaVer and Spin (with Ken Thompson and Phil Winterbottom),
July 2003.
- ACM SigSoft
Outstanding Research award, 2002
-
ACM System Software Award, 2001
(press release March 2002)
|