Every so often, I step back, take stock of what I’ve been up to recently, and figure out where I’d like to go next. (I have some ambition of doing this on a regular schedule, but I’m too often distracted by other blog posts.) Since this was one of the times I got distracted, this review covers everything since I wrote the last one in January 2014. Here’s what I’ve been doing:
I enjoyed my first three years at Harvard, but by the end of my junior year I decided I wouldn’t get much out of a fourth and skipped out.
I think this was a pretty great decision. I’ve learned an incredible amount by working at Theorem, and I don’t feel like I’m missing out on any particular courses or college experiences. I had worried that Harvard Effective Altruism would struggle, but that turned out to be unfounded. It’s been interesting to live outside Boston for the first time. Plus, I’m happy that this year I can contribute a substantial amount to effective charities.
One underrated benefit of not being in school is that it gives me a lot more general agency. You get taken much more seriously as a full-time programmer than a college student, even if the difference between the two is a bit somewhere in Harvard’s student information system saying “on leave.”
Working at Theorem
One factor that helped convince me to jump ship from Harvard was a compelling job offer from Theorem. So far, that’s been panning out as well. My work there continues to be interesting and I seem to be doing well at it.
Looking back at how I decided on Theorem, I have a couple thoughts about my priorities:
I’m still glad that I joined a small company like Theorem, but I wasn’t as aware of some of the downsides of small size. In particular, I have less opportunity to learn from coworkers (no knock on them; I simply have fewer coworkers!), especially senior coworkers.
Learning more machine learning was probably a good idea. It’s an intellectually challenging field with a broad variety of applications.
Theorem’s product (an investment vehicle) was cool from a few angles I didn’t realize. It doesn’t come with many of the schleps that user-facing apps have: we don’t have to have a user interface or 24/7 uptime, and we have total control over the environment our code runs in. That means I spend a lot less time dealing with typical software-industry annoyances.
I’ve updated to be slightly more antsy about the long-term prospects for tech industry work. Bootcamps of various stripes are lowering the barriers to entry significantly, and I’m worried that current valuations of private companies might be unsustainably high (a correction in which would reduce demand for tech work).
Earning to give
There’s little to report here so far. Last year I gave half of my annual donation to GiveWell. I haven’t decided where to give the other half yet—I had to wait for my tax return because of a withholding snafu. I started keeping a log of my donations, for transparency.
This year I hope to donate 40-50% of my cash income. My expenses are quite low, so this will still let me save a substantial amount. (I also plan to donate the proceeds from my equity in Theorem, which at its current valuation is more than half of my salary; but I’m not counting that towards the year’s donations since it will remain illiquid for the foreseeable future.)
Since I’m giving a large amount this year, I aim to do a more serious evaluation of my options between now and June, when I want to make the first chunk of this year’s donation. I’m not sure if I’ll be able to manage this timetable, since I expect to spend a while evaluating, but the deadline will help me avoid procrastinating on making a rigorous decision.
Most of the stuff I’ve learned over the past year has been about machine learning. That’s been very useful, but I’m worried that I may be hitting diminishing returns to it. Specifically, in the machine learning hierarchy of skill, it feels like there’s a regime between “good enough to read papers/implement new algorithms” and “good enough to achieve breakthrough performance in a new domain” where the returns to skill are mainly about squeezing out a little bit of extra predictive performance, which doesn’t seem that useful.
This went better than I expected. Two of my posts made the front page of Hacker News, netting almost 30,000 visitors combined. A third was partially purchased by Paul Christiano and Katja Grace’s impact purchase program. Plus, my blog has played a role in getting a number of people more interested in effective altruism, which is probably its most important easily-measurable impact.
That said, I’ve been having more difficulty lately coming up with material that I think is interesting to write about. I think my average post quality/usefulness/interestingness has gone down somewhat since 1.5-2 years ago, though it’s hard to be sure.
I recently downgraded my target frequency from twice a week to once a week so that I could focus more on writing more in-depth posts. But I’m not sure that trying to stick to any regular frequency is the right way to generate interesting posts. On the other hand, without Beeminder breathing down my neck, I probably wouldn’t write nearly as much.
The upshot is that I still feel like the blog is operating below potential. I know how good my posts can sometimes be, but I don’t know how to reliably get them there, and I don’t know if it’s worth the effort compared to other ways of spending my time.