Tuesday, June 17, 2008

reddit goes open source

Today we're excited to announce that we're open sourcing reddit. We've always strived to be as open and transparent with our users as possible, and this is the next logical step. When we say 'open-source' we mean specifically that the code behind reddit is available to the public for download, and we're inviting the public to submit code to help improve the site.

Reddit is unique in the social news scene in that we have a huge community of developers. It seems only natural that we give you all in that community a chance to contribute back to reddit and make it a better place for everyone. We know reddit's success has less to do with our technology than it does with you, our community, and now we want to let our community improve our technology.

Since reddit's beginning, we have stood on the shoulders of giants in the open source world. Every library, tool and platform we depend on is open. Until now, the only portion of reddit that wasn't freely available is reddit itself. We are proud and excited that we're finally giving back to the community that has given us so much.

There are only five of us who work on reddit; we couldn't have made this site if it weren't for a great community of developers. In no particular order, here's a quick list of the open source products that reddit is built and runs upon:
Debian, lighttpd, HAProxy, PostgreSQL, Slony-I, various python libraries, Psychopg, pylons, Solr, Tomcat, Ganglia, Mercurial, Git, gettext (translation), daemontools, and memcached.
I guess this means we can now add reddit to the list.

And now for the nitty-gritty. The reddit development site is located here:

http://code.reddit.com

Here you can download the code, participate in the forum, and help maintain our documentation wiki. As you can see, documentation is a little skimpy at the moment... that will improve.

All reddit code is licensed under the Common Public Attribution License, which is basically the Mozilla license with a handful of changes. Specifically, the CPAL stipulates that when running reddit's code publicly, any changes to the code must be made available publicly and the site must make clear that it is running reddit code.

There are a few portions of the code that we're keeping to ourselves, mostly related to anti-cheating/spam protection.

To the user who finds the first security hole: give us a chance to fix it or your reddit karma won't be the only negative karma.

Alexis, once again answering the question of what exactly he does here, has made a cute video:



PS - This post by Brent was the result of a prank. We're sneaky like that.

Update: Despite a less-than-glowing review of our decision to open source, TechCrunch spent the same morning downloading our code and creating their own reddit clone, TechNews. Nice 180.
discuss this post on reddit