My expertise is in networks and compiler design, but my professional interests range broadly over many other areas including security, operating systems, signal processing, control theory, natural language processing, embedded systems, scientific computing, and hardware synthesis.
I wrote a thesis as part of my Master of Engineering degree at MIT that is available here. The abstract is as follows.
Starkiller is a type inferencer and compiler for the dynamic language
Python designed to generate fast native code. It analyzes Python source
programs and converts them into equivalent C++ programs. Starkiller s
type inference algorithm is based on the Cartesian Product Algorithm
but has been significantly modified to support a radically di erent
language. It includes an External Type Description Language that
enables extension authors to document how their foreign code extensions
interact with Python. This enables Starkiller to analyze Python code
that interacts with foreign code written in C, C++, or Fortran. The
type inference algorithm also handles data polymorphism in addition to
parametric polymorphism, thus improving precision. Starkiller supports
the entire Python language except for dynamic code insertion features
such as eval and dynamic module loading. While the system is not yet
complete, early numeric benchmarks show that Starkiller compiled code
performs almost as well as hand made C code and substantially better
than alternative Python compilers.
I coauthored a paper published in Telecommunications
We present an algorithm for achieving robust and reasonably accurate
localization in a randomly placed wireless sensor network, without the
use of global control, globally-accessible beacon signals, or accurate
estimates of inter-sensor distances. We present theoretical analysis,
simulation results and recent experimental results. The theoretical
analysis shows that there is a critical minimum average neighborhood
size of 15 for good accuracy, and simulation results show that position
accuracy to within 20% of the local radio range can be achieved, even
with up to 10% variation in the radio ranges.
I presented a one hour talk about my thesis work in the refereed papers
track chaired by Armin Rigo. EuroPython
took place at Göteborg, Sweden on June 7-9. The paper that I
submitted to the conference is available here and my
presentation slides are available in PDF format as
well as Openoffice.org
format. The talk was well recieved; the only public comments I've seen
about it were made by Fredrik Lundh in the Daily Python-URL; he
described it as "by far, the best talk
this far - my mind is totally boggled."
In addition to my primary presentation, I also presented a 5 minute
lightning talk about Insecticide, the perfect Python debugger. I'm
inviting the Python community to build this program so I won't have to.
Slides are available in PDF format
Since I was part of the Dynamic Languages group at CSAIL, I presented my thesis work to the Dynamic Languages Seminar series on May 11, 2004. Slides for my presentation are available in either PDF format or Openoffice.org format.
While interviewing for a job at BBN Technologies, I gave a short presentation about the wireless sensor network research and development that I performed at CSAIL during the summer of 2003. The slides are available as either PDF format or Openoffice.org format.
Masterworks is a symposium where select master's students studying in the department of Electrical Engineering and Computer Science at MIT are invited to give short talks about their thesis work. I was invited and gave a brief talk whose slides are available in either PDF format or Openoffice.org format.
I presented a 30-minute talk about my thesis work at Pycon 2004, a community organized Python conference in Washington DC. Conference slides are available in either PDF format or Openoffice.org format. The paper that I submitted to the conference is available here.
Brian Dorsey generously recorded the audio of many of the talks at Pycon. Thanks to him, an MP3 rendition of my talk is available here (warning: it is a 17 MB download).
Mike Orr wrote an article for the LinuxJournal reviewing the conference highlights; he describes my talk as "the most entertaining talk" of the conference, going on to say that "the Starkiller talk was enjoyable because Mike is one of two speakers who doesn't pull any punches--he calls a spade a shovel." Another conference review entitled PyCon 2004: Making Python Faster and Better was written by Kendall Grant Clark. He also attended my talk and gave a very positive review.
After writing A Plan for Spam, Paul Graham decided to do even more to help eliminate spam by starting an intense one day conference where industry and academia could meet and discuss new ways for combatting spam. I gave a talk entitled "Heuristics in the Blender." Slides are available in either PDF format or Openoffice.org format. You can also watch a video of the presentation in Real Video format here; note that I am the first speaker in Session 4.
In addition to giving a talk, I also helped a bit with some of the organization, even though the whole thing was being run by Paul Graham and Gilberte Houbart.
During the summer of 2001, Greg Sullivan and I came up with the idea for LL1, the first Lightweight Languages Workshop. Together with some help from other members at the AI Lab, we organized and ran LL1. LL1 was a workshop where the world's most innovative language implementors from industry and most clever language researchers from academia came together to jam for a day. Everyone had a blast at LL1. Simon Cozens, a perl guy, wrote an article covering the event. LL1 was sponsered by Dr. Dobbs Journal (among others) and they're kind enough to host an audio archive of the workshop. DDJ also wrote a very nice article about the workshop. Don't forget to check out Eric Kidd's pictures of me making liquid nitrogen ice cream for the LL1 crowd.
Much of the work I've done at MIT is available here, although some of it is not either because I haven't had a chance to post it or because I did post it and a professor asked me to remove it in order to prevent other students from cheating.
This webpage is almost entirely about my professional life, but that is really only a small fraction of my existance. I hope. I'm a member of a national, coed, service fraternity called Alpha Phi Omega. I've spent the last few years living in a fun cooperative called Fenway House with 20 other MIT students. While at MIT, I wrote a page of computing tips to remind me of all the silly useless bits of knowledge I was always forgetting. When I'm not working, I like hiking, inline skating, traveling, and kayaking.