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.