Research Paper Addict
I first encountered the programming language literature as an undergraduate at Yale. Up until that time I’d only ever read programming books or manuals (I still recall hanging out in the backyard of my parent’s house one warm summer devouring the original K&R C book, raving to my bemused parents about how cool enumerations were). But once I got into my junior and senior years at college, I got exposed to the research community. And I started digging through the SIGPLAN Notices stacked up in the computer science building, and reading other students’ theses on Linda (David Gelernter was my thesis advisor – this was a couple years before he became one of the Unabomber’s victims).
This started a habit that has only gotten deeper over the years. Once the Internet hit it big, I realized that now there was a limitless fount of interesting research at my fingertips. And indeed that’s proven to be true — as you’ve already noticed, a lot of my posts here are driven by cool papers I’ve read recently, and you can confidently expect that to continue. Reading research papers is pretty much the best way to stay on top of the cutting edge of the software world.
So this post is about my personal mainlines for cool research; if you’ve got any to add, please comment, because I’m always on the prowl 🙂 My main interests are in (among others) programming languages, type systems, static analysis, metaprogramming, security, distributed systems, scalability, and reliability. So these are obviously skewed in that direction.
First off, the expensive ones. USENIX is probably the number one organization for research about systems in practice, tackling OS issues that have real-world implementations. It’s no wonder Google’s a major USENIX sponsor. And, of course, there’s the Big Daddy, the ACM Digital Library — it’s moderately expensive to be a member, but as a one-stop shop for a huge variety of conferences and research papers, it’s pretty much peerless. Most of the for-pay papers I want to read can be found on either the USENIX or ACM sites. It’s often easy to Google various papers that are also in ACM/USENIX publications, but sometimes it’s nice not to have to bother, and other times the papers really are embargoed.
After that, the most interesting research site bar none is Lambda the Ultimate. For programming language research, complete with an insightful and literate community, this blog wins the internets.
Then we get down into the major corporate research sites. First, the big disappointment of the year — Microsoft Research, once a very worthwhile site, recently crippled themselves with a redesign that removed all access to the chronological list of all their research publications! The only exposure they now give is to the last dozen or so papers published, and a search dialog that doesn’t seem to work for anything. What were they thinking?! And not only that, it’s impossible to find a direct contact email address for them. Sigh. I should talk to some of my Microsoft friends about that….
Memo to all research departments: THE NUMBER ONE FEATURE YOU IMPLEMENT MUST BE A FULL CHRONOLOGICAL ARCHIVE OF ALL YOUR RESEARCH PUBLICATIONS. Without that, you are nigh worthless to people wanting to learn what your researchers are doing in depth.
Anyway, leaving them aside, there’s Sun Research (low volume but often interesting), IBM (frustrating to browse their archive), and Google’s papers page (which gets updated pleasingly often, and which is a model of simplicity and accessibility). Aaaaand… those are my usual suspects.
Then there are the blogs of various programmers, such as Gilad, Crazy Bob Lee, and the Hibernate guys… but those often tend to be pretty low volume for my tastes. When I crave research, I crave it by the gallon!
I eagerly solicit any and all sources of more cool new software research and/or development. (Or even programmer blogs that are updated consistently.) Please please lay ’em on me in the comments, and I’ll cycle it into future addendums to this post. Enjoy!
[Edit, a month later: Turns out Microsoft Research’s RSS feed is the place to go for the stream of recent results. That’ll have to do for now, though one of my MS friends says he’ll put a bug in their ear.]