Research Philosophy

Having done research in academia, at industrial research labs, and in the high-pressure environment of a startup, I have come to form some deeply held beliefs about the nature and role of academic research. I believe that academic research ought to be long-term, risky, and high pay-off. By long-term, I mean that the research ought to be applicable not in the immediate future, but in five to ten years, and therefore mostly unconstrained by the marketplace. This is the type of research that cannot, and should not, be undertaken by startups and research labs.

However, this long-term aspect of the research ought be balanced by making the research risky and high pay-off. By this I mean that the research should have the potential to have a huge impact in academia and industry, even if there is a substantial risk of failure. It is precisely these characteristics that add unique value to academic research, and that I intend to bring to my research agenda.

Within this overall context, my research goal is to build a body of work in the general area of systems that spans the divide between theory and practice. I believe that computer science research has tended to be either too theoretical, ignoring practical limitations, or too practical, trying `kitchen recipes' to solve problems, without much thought to the underlying theoretical bases. Yet theory has much to inform practitioners, and I have found that hands-on systems building is the only way to validate the assumptions of any theoretical framework. In the course of my career, I hope to create a body of work both theoretically well-founded and readily applicable to real-world problems.

Research Statement

I'm interested in developing and analyzing protocols and systems that provide the Internet's infrastructure.

My current work is motivated by the following trends. First, Moore's law continues to dramatically shrink computing costs and form factors -- historically, a decrease by a factor of a million over the past thirty years. Second, power-aware computing and increased battery life using fuel cell technology will lead to a qualitative change in user experience: instead of charging your cell phone once a week, you can charge it once a year! Third, decentralized networks based on 802.11 and Bluetooth technologies will wrest communication bandwidth away from monopoly providers and will lead to a wave of innovation in the same way as did the PC's victory over the mainframe. Fourth, economics will dictate that much of the world's computing power will be concentrated in a handful of powerful data centers.

Taken together, this will lead to a world where client applications running on always-on devices--such as PDAs and cell phones--will maintain intermittent connectivity over wireless networks with back-end servers providing coordination, massive data storage, and powerful compute engines. This style of computing, dubbed 'tetherless computing' will allow a slew of compelling applications, such as the ability to record and retrieve every word you ever spoke, or instantaneously determine what your friends think of a store as you walk past it. My specific interest is in devising protocols and building prototype systems that address infrastructural issues in tethlerless computing.