What do you know, man? A stereo’s a stereo. Art is forever!
— Cheech Marin, last line of Scorsese’s After Hours
We were having dinner the other night with Anusha Gummadi, the wife of a colleague of mine, and she asked me if I hoped my soon-to-be-born child would become a scientist. My kneejerk reaction was: “Hell, no! Science is what you do when you can’t get a real job — you know, as an artist.”
Now, although I was (as usual) being half-facetious, the immediacy and vehemence of my retort took me a bit by surprise. After all, I am a scientist, and I (mostly) really enjoy what I do. There are many excellent reasons to become a scientist: intellectual stimulation, impact on society, useful skill set offering increased chance of employment, etc. There are also excellent reasons not to become an artist, the most important one being that it is an extremely low-percentage occupation. Most artists, even the ones who are actually talented, barely manage to eke out a living. Only a very lucky few make a lucrative career in the arts, and in my experience there is only a weak correlation between success and talent.
And yet…I wasn’t entirely joking.
When I was a kid, I enjoyed math, but my heart was in the arts — music and film, primarily. If you had asked me what I wanted to do for a living when I was a teenager, I believe “composer” and “filmmaker” would have been at the top of the list. Indeed, when I was a pre-teen, I sang in the now-defunct New York City Opera Children’s Chorus (with a few bigger solo parts), and I also spent a lot of time tap-dancing. Some of my fondest memories as a child were taking the train up from Long Island to Manhattan with my mother, and then the subway down to the bowels of the New York State Theater in Lincoln Center, where we rehearsed La Boheme, Carmen, Tosca, and more in a windowless room with Mildred Hohner, the matriarchal coach of the children’s chorus. Or over to an underground loft space in Soho, where I learned about rhythm and jazz from the members of the American Tap Dance Orchestra. (I had my bar mitzvah there!) That loft space was only a few minutes’ walk from a bunch of arthouse theaters showing movies from everywhere in the world. My favorites were Film Forum and Theatre 80 St. Mark’s.
And yet I ended up as a professor in computer science. How did that happen? Well, I was good at song and dance, but not that good. And I never demonstrated any particular aptitude for what I really wanted to do, which was composition. I took piano lessons, but was too lazy to ever become proficient at the instrument. I enjoyed watching films and listening to music — the weirder, the better — but I didn’t have any particularly interesting ideas about films or music that I wanted to create. I wrote poetry, mainly in a sort of Dadaist vein, but I spent a lot more time thinking about what would be a good title for a movie/poem/whatever than what it would actually be about. In short, I was all style and no substance, and what little style I had had been more or less done to death in the 1920s.
So when I went to college (at NYU), I decided pragmatically to study math and computer science. I always loved math, computer science less so. I enjoyed the CS classes I had taken as a child and in high school, but they were pretty basic (literally: BASIC and Pascal programming). And I was very far from a computer nerd: my idea of fun, as I said, was singing, dancing, listening to weird classical music or offbeat films — definitely not hacking. Originally I just wanted to major in math, but my parents convinced me to study CS as well, mainly because it would improve my job opportunities.
Boy, was that a good call. I learned after a few years at NYU that (a) computer science was actually more interesting than I had thought, and (b) I was good at math, but not that good. I think what really hit point (b) home for me was when I ended up becoming friends with some Eastern European students (Yevgeniy Dodis and Ioana Dumitriu, among others), and they won the Putnam Competition (meaning they were top-5 finishers). For those who don’t know, the Putnam Competition is an annual North American undergraduate math competition. I don’t know how my friends prepared for it — all I know is that I got straight A’s in math, but when I took a look at past years’ Putnam questions, I had absolutely no clue where to begin. I’m sure if I looked at them now, I’d have the same reaction. Yevgeniy is now a professor in theoretical CS (crypto) at NYU, and Ioana is a professor in math at University of Washington. They are mathematicians, I am not.
As for point (a), I would credit two classes with getting me really excited about computer science. One was Alan Siegel’s graduate Algorithms course, which I took either in my first or second year of college. The other was Ben Goldberg’s graduate Programming Languages course, which I took in my third year. The Algorithms course was my first experience reasoning about programs mathematically (if not exactly formally). The PL course was my first experience with functional languages (SML and Scheme, and a little bit of Haskell). Both of these were truly eye-opening, and ultimately convinced me that I wanted to pursue graduate studies in computer science, studying PL or algorithms or both.
OK, fast-forward 18 years (I’ll discuss some of those years in a different post). I ended up doing research in programming language theory for a living. This has been incredibly rewarding, but clearly based on my answer to Anusha’s question, it’s not quite what I would choose to be doing if I could pick any career.
Well, join the club, Derek! Almost no one ends up living out their childhood fantasy. More to the point, I think there’s an extent to which I am living out my childhood fantasy.
What do I do? I get paid to think about whatever I want, so long as I eventually write my ideas up, convince a few of my peers that there is something exciting about the ideas, and then if I succeed at that, I have to present those ideas to an even broader audience in a talk at a conference. And thinking all by myself is really very tiring, you know, so I get to hire extremely bright people to think along with me, do most of the actual work for me, and then I get to help them figure out how to explain their hard work and their cool ideas to other people.
Basically, in cinematic terms, I get to be a cross between a screenwriter and an executive producer. This is pretty incredible. What science has done is to fix that core problem I had as a child when I was writing poems — all style and no substance — by providing the thematic content around which to spin interesting stories. And as a result, I’ve managed, pretty much accidentally, to make science work for me as a means of artistic expression, as an art form, or at least as close to an art form as I’ll probably ever get.
Of course you could argue that relatively few people who go into science end up becoming professors. This is true. However, the percentage is still far greater than the percentage of aspiring artists who make a career out of their art. (I don’t actually have any evidence to back this up: that would require too much actual science.)
This view of science as art pretty accurately reflects my perspective on CS research. Art can be simple or complex, art can be easy or hard to understand, but there should be something about it that touches you, something that is elegant, something distinctive. Similarly, a research paper can present a really simple and retrospectively obvious idea that anyone can make sense of, or it can present a challenging extension to a well-studied proof technique that only three people in the world understand — I’ve written papers of both sorts — but it should strive in either case to illuminate and inspire, to demonstrate an original and memorable way of thinking about the problem at hand. I would not say that I succeed in doing this all (or even most) of the time, but it is always my goal.
And this is what I look for when I read other people’s papers, too. Maybe it’s why I have such high standards, and a reputation for being a harsh critic: poorly written papers really bum me out. (Btw, this reputation is totally undeserved — for example, on a recent program committee on which I served, my average review score was one of the highest of any of the PC members. Just saying.)
On the flip side, well-written papers bring me great joy. One that comes immediately to mind is the paper “Ribbon Proofs for Separation Logic” by Wickerson, Dodds, and Parkinson from ESOP’13. It presents a graphical (yet formally defined!) language in which to write separation-logic proof outlines, and the tool implementing this language produces gorgeous “ribbon proofs” of program correctness. Aside from being lucidly written, the paper lends a distinctive visual representation to the core ideas of separation logic. It’s a pretty literal example of science as art, and what can I say, it made me very happy.
Anyway, getting back to my soon-to-be-born child and the important life lessons I hope to impart to them — umm, maybe I could misquote the Dread Pirate Roberts from The Princess Bride: “Have fun, kiddo. Create, explore, sleep well. You’ll most likely do science in the morning.”
Or even more simply: “As you wish.”