7 0
A
ABOUT
15
7 0
DABEAZ LLC
T
TRAINING
7 0
C
CONSULTING
7 0
S
SOFTWARE
7 0
B
BLOG
7 0
- - - E P C T O
STATUS REGISTER
E:Python Essential Reference, 4th Edition
P:PLY-3.3 (Python Lex-Yacc)
C:Chicago-area Python Classes
T:Talks & Tutorials
O:Office

[ ABOUT ]

DaBeaz LLC is David Beazley.

The Formative Years


Dave's first computer

I have been programming computers for more than 30 years. My first exposure to computing was in elementary school where I took a computer course for kids at the local community college. I distinctly remember typing out simple BASIC programs on punch cards and feeding them to some sort of mainframe (most likely an IBM 360). Also, given that there were quite a few tech companies in the area, parents would sometimes organize ad-hoc tours or simply take a small group of us into the office off-hours to mess around. Because of that, I got to see all sorts of neat stuff--various mainframes, minicomputers, terminals, tape drives, band printers, and so forth. It was cool.

My first personal computer was an Ohio Scientific Superboard II system built from a kit in 1978. It had 8K of RAM and stored programs on cassette tapes. Later on, I upgraded to an Apple 2. I spent most of my time figuring out how various parts of the computer worked, programming video games, and dissecting parts of the operating system. I learned a lot about computers back then--especially with regard to assembly language programming, low-level hardware control, and reverse engineering. I still rely on those skills now.

From 1986-1987, I ran a popular dial-up BBS in the Denver area that specialized in public domain software for the Apple 2 and Amiga computers. That was a time when connecting at 2400 baud was considered fast and it cost more than $1000 to purchase a 20 MB hard drive.

Education

In college, I studied mathematics, statistics, and physics. After graduation, I went on to receive a masters degree in math where I specialized in numerical analysis. Although computing remained important, I was always more interested in practical applications than topics associated with theoretical aspects of computer science. Later on, I went on to receive a Ph.D. in computer science, but this was only after I got the opportunity to program the 1024 processor Connection Machine 5 supercomputer at Los Alamos National Laboratory. This machine was just sadistic enough to suit my tastes. At that time, these machines were rather new and unproven---thus, there weren't really any rules on how to program them. So, it was an interesting time to be doing research.


The Connection Machine 5

Curiously, my Ph.D. dissertation had almost nothing to do with my initial interest in parallel computing. Instead, it was related to the Swig utility that I wrote to help add scripting language interfaces to scientific software. Today, this is mainstream practice, but in 1998 it was still a radical idea--many people had a difficult time seeing how a slow interpreted scripting language like Python, Perl, or Tcl would be of any benefit in applications that were all about high performance and serious number crunching (in fact, I would sometimes get a hostile reaction when people found out that I was interactively running the Python interpreter on the CM-5 and Cray T3D).

Research Career

Most of my professional work has taken place in a research environment, both at national labs and in academia. In 1990, I was hired as a summer intern at Los Alamos National Laboratory. For the next seven years, I worked part-time in the Condensed Matter Physics group in the Theoretical Division. I was the primary software developer for the SPaSM project--a software package for carrying out large-scale molecular dynamics simulations of materials.

In 1998, I was hired as a tenure-track assistant professor in the Computer Science Department at the University of Chicago. In this job, I achieved a certain amount of success (for instance, I even received a NSF Career Award grant). However, I'll freely admit that I never really clicked with certain aspects of the academic world. In 2005, the University and I parted ways after I was denied tenure--something that was actually rather liberating.

Dabeaz LLC

Since 2005, I have been working as an independent software developer, author, and trainer. I generally view my work as incorporating all of the elements of research and academia that I really enjoyed. So, most of my time is split between developing software, writing, looking into interesting things, and teaching classes.

Contact

I can be contacted by sending email to "dave" at "dabeaz.com".