dan-halbert (42K)

Dan Halbert (Daniel C. Halbert)

halbert@halwitz.org

LinkedIn

Work

2009-present: MIT Lincoln Laboratory. Face recognition.

2007-2009: EveryZing, Inc. (BBN spinoff) Audio/video search using speech recognition technology. Systems development. Cloud computing.

1995-2007: BBN Technologies. Personalized Internet Newspaper. Architecture and systems design for speech recognition. Speech recognition technology and its applications: in-car, telephony, media transcription and search.

1993-1995: Ascom Nexion. Object-oriented work. Network management software.

1985-1993: Digital Equipment Corporation. Eastern Research Lab, Cambridge Research Lab. Object-oriented programming. Trellis/Owl programming language and environment. Pen-based computing.

1980-1984: Xerox Corporation. PARC and Office Systems Division. Smalltalk, Xerox Star, programming by example. (while a graduate student)

1979: Lawrence Livermore National Laboratory. S-1 computer project. (summer)

1975-1978: Bolt, Beranek, and Newman. BCPL compiler and other work. (while an undergraduate)

Education

MIT: 1978, SB, Computer Science. Bachelor's Thesis: A Lisp Debugger for Display Terminals

University of California, Berkeley: 1981, MS, Computer Science; 1984, PhD, Computer Science.
Research on programming by example (see below).
Co-invented the overlapping register windows mechanism used in the Berkeley RISC I processor chip, and later in the Sun Microsystems SPARC family of processors.

Programming by Example: SmallStar

My graduate work was in programming by example, also called programming by demonstration. In particular, I was interested in end-user programming and programming in the user interface.

My 1984 PhD thesis, entitled Programming by Example, describes PBE in a simulation of the Xerox Star office system. The system I built was called SmallStar, and was written in Smalltalk. I have the original source code and am very slowly trying to revive it.

My dissertation is available here in PDF and HTML form.

SmallStar is also described in Chapter 5 of the 1993 MIT Press book Watch What I Do: Programming by Demonstration, edited by Allen Cypher, and co-edited by me and several other people. The entire book is available online.

Publications and Professional Activities

The Unix more command

I am the original author of the UNIX more command (ca. 1978). Here's a short history of how it came to be written.