• Valley vs Alley

    by  • 1 July 2013

    In an interview in New York recently, I got one of my favorite questions ever: “Besides technical things and coding, what’s something you’ve done that you’re proud of or happy about?” In the Bay Area, I knew people who would ask candidates, “If you had a Sunday afternoon with no obligations, what would you...

    Read more →

    Pseudonymity and Consequences

    by  • 10 June 2013

    For the past few years, whenever anonymity and pseudonymity come up, I’ve thrown a sidelong glance at TodaysMeet. TodaysMeet is a tool for semi-private, semi-anonymous, ephemeral back channel conversations (in other words, passing digital notes during lecture) and has become particularly popular in secondary education. Most of its users, then, are teenagers. Until Saturday,...

    Read more →

    Simple out-of-process lock with Python and Memcached

    by  • 30 May 2013

    On TodaysMeet I need to check that a name is not in use before creating a new record. Unfortunately, because names can be reused over time, I can’t create a UNIQUE key in the database and enforce it there. That means there is some tiny amount of time between checking for existence and writing...

    Read more →

    Using supervisorctl with linux permissions but without root or sudo

    by  • 28 May 2013

    I love supervisord, it’s been a fantastic way to manage things like gunicorn and celery processes. But I didn’t like that I needed to use sudo to restart a running server, e.g.: sudo supervisorctl restart todaysmeet-web A quick look through the docs didn’t reveal how to fix this (it’s there but not in a...

    Read more →

    Quo Vado?

    by  • 8 May 2013

    “Where am I going?” I didn’t intend to be annoyingly coy or secretive. There is no bag, and certainly no cat to let out of it. I’m not going to some super secret stealth startup. I’m taking some time to spend on some of my own projects. TodaysMeet and BundleScout are the big ones....

    Read more →

    A New Chapter

    by  • 30 April 2013

    Nearly four years ago, I moved West to join Mozilla. About a year later, I moved East to come home to New York. I consider those two of the best changes I’ve ever made. Now Spring is here again and it’s time for another change. Last week, I announced to the company that I...

    Read more →

    Our Daily Errors

    by  • 4 April 2013

    Over the past 24 hours, support.mozilla.org has recorded a few dozen errors. That’s pretty good. In the past three days, it’s more like a few hundred. These are sporadic, little, intermittent errors that, for most practical purposes, don’t happen. The odds are so low that you only see them when you look at all...

    Read more →

    Just One WebKit

    by  • 3 April 2013

    Disclaimer: My opinion, not my employers, blah blah. You know the drill. Every once in a while, something happens that makes a few people scream: “If only everyone used WebKit, everything would be so much better.” I have two problems with this. One you’ve heard a hundred times (monoculture is bad). The other you...

    Read more →


    by  • 1 April 2013

    There’s an old H. L. Mencken quote that’s popular among mathematicians and programmers: For every complex problem, there’s an answer that is simple, clear, and wrong. But both in math and in programming we strive for elegance, anyway. We want the beautiful, obvious solution—even if it may not have been obvious at all from...

    Read more →

    Working from Home

    by  • 1 March 2013

    I’ve started this more times than I can count. Including twice this week. You’ve read–maybe you know first-hand–the benefits and drawbacks of remote workers and distributed teams. My team works really well, remotely, but that doesn’t mean it’s all sunshine and roses and unicorns. But here’s the thing, the inescapable fact about remoties: The...

    Read more →