About
I was lucky enough to have worked with Thomas Sterling, Donald
Becker, and Phillip Merkey at NASA's Goddard Space Flight Center
in developing the first Beowulf cluster. Our work was partly
responsible for motivating companies such as Compaq, IBM, and Cray
to produce COTS Linux clusters that deliver supercomputer
performance at a fraction of previous prices.
The Beowulf
Project also either spawned or encouraged startups such as
Linux Networx, Penguin Computing, and Scyld to develop Linux
cluster hardware and software products. Seven of the top ten
supercomputers on the
2003 Top 500
supercomputer list were clusters as well as 208 of the top 500
systems, many of them Beowulf-class. Despite Beowulf's eventual
success, it was openly derided in its early days (circa Linux
kernel version 0.99-pl14). The pendulum swung a bit too far in
the other direction as Linux clusters became the end all and be
all of supercomputing. But the pendulum is swinging back as
domain-specific architectures (e.g., Anton), pure and hybrid GPU
systems, PIM, memristors, and other competing technologies at
various stages of development appear on the market.
I've had the good fortune to work in a variety of areas of the tech sector. Among other things, I've been an entrepreneur, a research scientist at Caltech, and VP of Software Development at a venture-backed startup. Software I've written, both commercial and open source, has been licensed by companies such as IBM, Hewlett Packard, Sun Microsystems, Cisco, Oracle, BEA, and Nortel. At the moment, I'm directing the development of distributed systems infrastructure software at Savarese Software Research Corporation, where we've developed scalable and fault-tolerant distributed services infrastructure software that powers next-generation Web computing platforms such as Vareos™.
Also, I've been a member of the Apache Jakarta and Apache Commons Project Management Committees, was the technical editor for Java Pro magazine, and wrote its regular Pro Shop column for many years. Nevertheless, Java has never been my programming platform of choice. My most productive and enjoyable programming experiences have been and continue to be with C++ (specifically, generic programming, generative programming, and meta-programming with templates and the preprocessor), LISP, and various dynamically typed languages such as Lua.