Picture of David A. Wheeler David A. Wheeler's Autobiography

Well, it's not clear why, but you've decided to read my autobiogaphy. Well, you've decided to start, anyway. So without further ado...

I was born in 1965. (??? time of day, get an odd factoid from mom). The place doesn't matter, and in fact, I moved often when I was a kid. I started playing with electronics and electronic gadgets; but then...

In 1978 I was first introduced to computers; I first learned how to program one using BASIC on a teletype, using a machine with 4K total memory using ferrite cores. I took to computers like a fish takes to water, and spent almost every waking moment learning about them and using them. By 1982 I'd already sold programs I'd written (an inventory control program, and a set of arcade games). I also worked in the computing field -- at first selling computers (which allowed me to learn in detail about a vast amount of softwre), and later switched to consulting about computers.

I paid all of my college tuition as I went doing computer-related work. I developed programs for small businesses, taught various courses (such as Unix programming), and helped in research on techniques to improve keyword-based text search systems.

I actually stopped going to school full-time for a while to work at a start-up called "InterPlay", where I maintained a multiuser role-playing game (Scepter of Goth). It's hard to explain how different the environment is now compared to then; the Internet existed, but very few people had access to it. This game supported up to 16 people at a time using modem dial-ins, really low-performance computer hardware, and tricky programming. Internally, these games are multi-user database engines that required sufficient performance, low latency, and consistency. Unfortunately, although the company was meeting its projections to profitability, the venture capitalists decided to pull the funding before we achieved it (a poor decision; they lost nearly all, and there's every reason to believe they would have made lots of money if they'd just followed the graphs). So my stock options were worthless. Ah well.

My professional interests are in improving software development practices for higher-risk software systems (i.e., ones which must be secure, large, and/or safety-critical). My specialties include writing secure programs, vulnerability assessment, Internet/web standards and technologies, POSIX, GNU/Linux, and open source software / free software (OSS/FS).
Education/TrainingAwards
  • George Mason University (GMU), MS, Computer Science, 1993
  • GMU, Certificate for Software Systems Engineering, 1993
  • Software Engineering Institute (SEI), Software Capability Evaluation (SCE) Training, 1993
  • GMU, BS, Electronics Engineering, 1987 (granted in 1988); graduation with distinction
  • Computer Science Graduate Honor Roll Award
  • Ada Programming Contest Award
  • Eta Kappa Nu Honor Society
  • George Washington University Engineering Award

Published books:

Public/Published articles:
Most of my written work is not publicly available. However, if I can make it publicly available, I try to host it on my website or at least reference it there. Here are some of my publicly-available works, some professional, and some fun:

Other personal works of mine include the Linux man pages for uri(7) and the rewrite of man(7) and mdoc(7).

Interviews
The insatiably curious can see some interviews of me by LinuxSecurity.com, Red Hat, NewsForge (on proprietary vs. OSS/FS TCO studies), and FOSDEM 2002.

Mentions
I've been thanked by various folks for my suggestions, such as for my XML expertise while participating in the development of the Open Document standard, and by Eric S. Raymond for contributing "many perceptive criticisms and some case-study material, especially in the design" in his book The Art of Unix Programming.

Hobbies/Personal Info
My hobbies include chess, singing (bass), and reading (especially science fiction and fact). I also play the piano, guitar, tuba, and baritone horn, though never at the same time. I live in Northern Virginia, near Washington, DC. I'm a Christian; more information about Christianity is available.

Why the middle initial?
I always use my middle initial in anything written (including information on the web), because there are a number of other David Wheelers. For example, David John Wheeler (now deceased) was the creator of the Tiny Encryption Algorithm (TEA) (a somewhat popular encryption algorithm unencumbered by patents), and is credited with co-inventing the subroutine. David E. Wheeler is President of Kineticode, a content management and software development consulting company based in Portland, and is the lead developer for Bricolage (an OSS/FS content management system); you can contact him using the address "david" at justatheory dot com.

See my contact information if you want to contact me. Or, see my personal home page.