How to Get a Job Like Mine

Talk, as prepared, for the Tathva 2007 computer conference at NIT Calicut. (Additional notes.)

The American writer Kurt Vonnegut used to always title his talks "How to Get a Job Like Mine" and then proceed to talk about whatever he felt like. I'm in a bit of the opposite situation. I was told I could talk about whatever I felt like and I decided that, instead of pontificating for a while about the future of the Internet or the power of mass collaboration, the most interesting thing I could talk about was probably "How to Get a Job Like Mine".

So how did I get a job like mine? Undoubtedly, the first step is to choose the right genes: I was born white, male, American. My family was fairly well-off and my father worked in the computer industry. Unfortunately, I don't know of any way of choosing these things, so that probably isn't much help to you.

But, on the other hand, when I started I was a very young kid stuck in a small town in the middle of the country. So I did have to figure out some tricks for getting out of that. In the hopes of making life a little less unfair, I thought I'd share them with you.

Step 1: Learn

The first thing I did, which presumably all of you have already got covered, was to learn about computers, the Internet, and Internet culture. I read a bunch of books, I read enormous numbers of web pages, and I tried stuff. First I joined mailing lists and tried to understand the discussions until I felt comfortable jumping in and trying to participate for myself. Then I looked at web sites and tried to build my own. And finally I learned how to build web applications and I started building them. I was thirteen.

Step 2: Try

The first site I built was called get.info. The idea was to have a free, online encyclopedia that anyone could edit or add things to or reorganize, right through their web browser. I built the whole thing, added lots of cool features, tested it on all sorts of browsers, and was very proud of it. It actually won even a prize for one of the best new web applications that year. Unfortunately, the only people I knew at the time were other kids in my school, so I didn't really have anyone writing a lot of encyclopedia articles. (Luckily, several years later, my mother pointed me to this new site called "Wikipedia" that was doing the same thing.)

The second site I built was called my.info. The idea was that instead of having to scrounge around the Internet for news from all sorts of different web pages, why not just have one program that went and grabbed news from all those web pages and put them in one place. I built it and got it working, but it turned out I wasn't the only one who had that sort of idea at the time -- lots of people were working on this new technique, then called "syndication". A group of them split off and decided to work on a specification for this thing called RSS 1.0 and I joined them.

Step 3: Gab

It was summer and I was out of school and didn't have a job, so I had a lot of free time on my hands. And I spent all of it obsessively reading the RSS 1.0 mailing list and doing all sorts of odd jobs and whatever else they needed someone to do. Soon enough, they asked me if I wanted to become a member of the group, and I ended up becoming a co-author and then a co-editor of the RSS 1.0 specification.

RSS 1.0 was built on top of this technology called RDF, which was a bit of a source of heated debate on the RSS lists, so I started looking more into RDF, joining the RDF mailing lists, reading things and asking stupid questions and slowly starting to figure things out. Soon enough, I was becoming known in the RDF world and when they announced a new working group to develop the next RDF spec, I decided to sneak on.

First I asked the working group members if I could join. They said no. But I really wanted to be on that working group, so I tried to find another way. I read the rules of the W3C, which was the standards body that operated the Working Group. The rules said that while they could reject any requests to join from an individual, if an organization that was an official member of the W3C asked to put someone on the working group, they couldn't say no. So I looked down the list of W3C member organizations, found the one that seemed friendliest, and asked them to put me on the Working Group. They did.

Being a Working Group member meant weekly phone calls with all the other members, lots of mailing list and IRC discussion, occasionally flying off to odd cities to meet in person, and lots of all-around getting-to-know people.

I was also a true believer on the subject of RDF, so I worked hard to get other people to adopt it. When I saw that professor Lawrence Lessig was starting a new organization called Creative Commons, I sent him an email saying he should use RDF for his project and explaining why. A few days later he wrote back saying "Good idea. Why don't you do that for us?"

So I ended up joining Creative Commons which ended up flying me out to all sorts of conferences and parties and so on where I ended up meeting even more people. Between all of this people were starting to know who I was and I was starting to have friends in lots of different places and fields.

Step 4: Build

And then I left it all and went to college for a year. I attended Stanford University, an idyllic little school in California where the sun is always shining and the grass is always green and the kids are always out getting a tan. It's got some great professors and I certainly learned a bunch, but I didn't find it a very intellectual atmosphere, since most of the other kids seemed profoundly unconcerned with their studies.

But towards the end of the year, I got an email from a writer named Paul Graham who said that he was starting up a new project, Y Combinator. The idea behind Y Combinator is that you find a bunch of really smart programmers, fly them out to Boston for the summer, and give them a little bit of money and the paperwork to start a company. They work really really hard on building something while you teach them everything they need to know about business and hook them up with investors and acquirers and so on. And Paul suggested I apply.

So I did and I got in and after lots of pain and toil and struggle I found myself working on a little site called Reddit.com. The first thing to know about Reddit was that we had no clue what we were doing. We had no experience in business. We had hardly any real experience in building production software. And we had no idea whether or why what we were doing was working. Every morning we woke up and made sure the server wasn't down and that our site hadn't been overrun by spammers and that all our users hadn't left.

When I first started at Reddit, growth was slow. The site was put online very early -- within weeks of starting work on it -- but for the first three months it hardly got above three thousand visitors a day, which is about baseline for a useful RSS feed. Then, in a couple weeks of marathon coding sessions, we moved the site from Lisp to Python and I wrote an article about it for my blog. It got a lot of attention -- Hell hath no fury like a Lisp fan scorned -- and even today I still run into people at parties who, when I mention that I worked at Reddit, say "Oh, the site that switched from Lisp."

Around that time traffic really started taking off. In the next three months, our traffic doubled twice. Every morning we'd wake up to check our traffic graphs and see how we were doing -- whether the new feature we'd launched had gotten us more attention, whether word of mouth was still spreading our site, whether all our users had abandoned us yet. And every day the number grew higher. Although we couldn't shake the impression that we seemed to grow faster whenever we took a break from doing actual work on the site.

We still had no idea how to make money. We sold t-shirts on the site, but every time we made a little bit of money on those we spent it on ordering more t-shirts. We signed up with a major Web ad representative to sell ads on our site, but they never seemed to be able to sell any ads for us and we rarely made more than, literally, a couple of dollars a month. Another idea we had was licensing the "Reddit technology" to let other people build sites that worked like Reddit. But we couldn't find anyone who wanted to license it from us.

Soon, Reddit was getting millions of users every month -- a number that far surpassed the average American magazine. I know that, because I was talking to a lot of magazine publishers at the time. They all wondered how Reddit's magic could work for them. @@ At first, we just said yes to everything they suggested. And, fortunately for us, that worked out, since we could program faster than they could write up an official contract for what they wanted.

In addition, online news sites started noticing that Reddit could send them vast amounts of traffic. They somehow thought they could encourage this by adding "reddit this" links to all of their articles. As far as I know, adding such links doesn't actually improve your chances of being popular on Reddit (although it does make your site look more ugly), but it did give us lots of free advertising.

Soon enough, the partnership talks turned to talks of acquisition. Acquisition: the thing we'd always dreamed of! No longer would he have to worry about making money. Some company out there would take over that responsibility in exchange for just making us all rich. We dropped everything to negotiate with our acquirers. And then it stayed dropped.

We negotiated for months. First, we argued over the price. We prepared plans and spreadsheets and went to headquarters to make presentations and had endless meetings and phone calls. Finally, they refused our price, and we walked away. Then they changed their tune and we finally shook hands and agreed on the deal -- only to begin negotiating on some other key point, only to walk away again. We must have walked away three or four times before we finally got a contract we could agree to. We must have stopped doing real work for six months.

I started going crazy from having to think so much about money. We all started getting touchy from the stress and lack of productive work. We begun screaming at each other and then not talking to each other and then launching renewed efforts to work together only to have the screaming begin again. The company almost fell apart before the deal went through.

But eventually, we went into the offices of our lawyers to actually sign all the documents and the next morning the money was in our bank accounts. It was done.

We all flew out to San Francisco and begun working at the offices of Wired News (we were purchased by Condé Nast, a big publishing company which owns Wired, along with many other magazines).

I was miserable. I couldn't stand San Francisco. I couldn't stand office life. I couldn't stand Wired. I took a long Christmas vacation. I got sick. I thought of suicide. I ran from the police. And when I got back on Monday morning, I was asked to resign.

Step 5: Freedom

The first couple days without a job were odd. I hung around the house. I took advantage of the San Francisco sunshine. I read some books. But soon I felt like I needed a project again. I started writing a book. I wanted to collect together all the interesting studies I'd found in the field of psychology and tell them, not as research results, but as stories. Every day I went down to Stanford to do research in their library. (Stanford is a great school for psychologists.)

But one day I got a call from Brewster Kahle. Brewster founded the Internet Archive, an incredible organization which tries to digitize everything it can get its hands on and put it all up on the Web. He said he wanted to get started on a project we'd talked about in the past. The idea was to collect information on all the books in the world in one place -- a free wiki. I got right to work and over the next couple months I began calling libraries, roping in programmers, working with a designer, and doing all sorts of other odd jobs to get the site online. That project ended up becoming Open Library and a demo version is now up at demo.openlibrary.org. Much of it was built by a very talented Indian programmer: Anand Chitipothu.

Another friend, Seth Roberts, suggested we try to find some way to reform the higher education system. We couldn't really agree on a good solution, but we did agree on another good idea: a wiki to tell students what different jobs are like. That site should be launching soon.

Then another old friend, Simon Carstensen, sent me an email saying he was graduating college and wanted to start a company with me. Well, I'd been keeping a list of companies I thought were good ideas and pulled the top one off the list. The idea was this: make building a web site as easy as filling in a textbox. Over the next few months we worked and worked to make things simpler and simpler (and a little more complex as well). The result, which launched a couple weeks ago, is Jottit.com.

I also signed up to mentor two Summer of Code projects, both of which were stunningly ambitious and with much luck should be launching soon.

I also decided I wanted to get into journalism. My first print article got published the other week. I also started a couple blogs about science and begun working on an academic paper of my own. It builds upon a study I did a while back about who actually wrote Wikipedia. Some people, including Jimmy Wales, the kind of public spokesman of Wikipedia, claimed that Wikipedia wasn't such a big distributed project after all but instead was only written by around 500 or so people, many of whom he knew. He had done some simple studies to back this up, but I ran the numbers more carefully and found the opposite: the vast majority of Wikipedia was created by new editors, mostly people who didn't even bother to create accounts, adding a couple sentences here and there. How did Wales make such a big mistake? He looked at the number of changes each user made to Wikipedia, but didn't look at the size of the change. It turns out there is this group of 500 who makes an enormous number of changes to Wikipedia, but all of their changes are quite small: they do things like fix spelling and change formatting. It seems much more reasonable to believe that 500 people went around editing much of an encyclopedia than it does to think they wrote it.

Words of Advice

What's the secret? How can I boil down things I do into pithy sentences that make myself sound as good as possible? Here goes:

  1. Be curious. Read widely. Try new things. I think a lot of what people call intelligence just boils down to curiosity.

  2. Say yes to everything. I have a lot of trouble saying no, to an pathological degree -- whether to projects or to interviews or to friends. As a result, I attempt a lot and even if most of it fails, I've still done something.

  3. Assume nobody else has any idea what they're doing either. A lot of people refuse to try something because they feel they don't know enough about it or they assume other people must have already tried everything they could have thought of. Well, few people really have any idea how to do things right and even fewer are to try new things, so usually if you give your best shot at something you'll do pretty well.

I followed these rules. And here I am today, with a dozen projects on my plate and my stress level through the roof once again.

Every morning I wake up and check my email to see which one of my projects has imploded today, which deadlines I'm behind on, which talks I need to write, and which articles I need to edit.

Maybe, one day, you too can be in the same position. If so, I hope I've done something to help.

changed October 3