Landing : Athabascau University

Reddit no longer (quite) open source

https://www.reddit.com/r/changelog/comments/6xfyfg/an_update_on_the_state_of_the_redditreddit_and/

Reddit has released its underlying software as open source since it began but is now stepping away from it - a bit.

The reasons are interesting:

  • "Open-source makes it hard for us to develop some features "in the clear" (like our recent video launch) without leaking our plans too far in advance. As Reddit is now a larger player on the web, it is hard for us to be strategic in our planning when everyone can see what code we are committing.
  • Because of the above, our internal development, production and “feature” branches have been moving further and further from the “canonical” state of the open source repository. Such balkanization means that merges are getting increasingly difficult, especially as the company grows and more developers are touching the code more frequently.
  • We are actively moving away from the “monolithic” version of reddit that works using only the original repository. As we move towards a more service-oriented architecture, Reddit is being divided into many smaller repositories that are under active development. There’s no longer a “fire and forget” version of Reddit available, which means that a 3rd party trying to run a functional Reddit install is finding it more and more difficult to do so."

Reddit is keen to emphasize that they are still very committed to open source in general, making contributions to many projects, actively retaining (but not maintaining) existing repositories, and releasing tools back to the community that they think are useful. This is good, but I think it is not really a great explanation. If they don't want to reveal their game plan, fine, but it would seem reasonable to release the code once it is in active use. And, if the branches are diverging, fine, release them as branches and ignore the merges - if the community finds it useful to merge them, it will find a way.  And, whether or not it is a monolith, whether or not it is simple to install, the pieces are still important. It seems quite condescending to claim that they are not releasing it because it is difficult for others to replicate. Open source is not about making software free of cost. It's about sharing ideas, techniques, components, and tools that give freedom to evolve it further (and that recognizes the debt paid to others that made contributions along the way).

Apart from the competitive edge issue (which is all about money and market share), the reasons for Reddit's decision seem to me to mainly be a reaction to escalating costs - difficulty = $ - and that is reasonable enough for a company that is trying to make money or at least to keep its head above water. However, it rubs a bit of the soul of the company away, and it might be rather an important bit. It bothers me a lot that, over many decades, we have increasingly (and relentlessly) seen a shift away from treating companies as machines that make money, but that are built to support their employees and customers (and, indirectly, to support society as a whole), to being machines to make money, that are supported by their employees and customers (and, indirectly, by society as a whole). It's a subtle but important shift. Today's NYT has an interesting article comparing janitors as Kodak in the 80s and Apple today which illustrates this shift very well.  Yes, Reddit will be more efficient as a result of this but its role in society has been diminished as a result.

Comments

  • Viorel Tabara September 5, 2017 - 4:45pm

    It's comes down to how much money they want to make vs how needed their product is. Some projects operate based on donations, while others start offering additional services or training. I've never used Reddit much, it just never appealed to me. On the other hand I will continue supporting the GPG and Enigmail project, for example. There are plenty of open source projects that continue to thrive 20 years later. In some ways open source is just like art.

  • Jon Dron September 5, 2017 - 5:12pm

    Indeed - a nice metaphor. Open source needs patrons! All software is pretty much like art (or at least craft) and, like art, there are some pretty draconian laws in place about what you are allowed to do with it. 

    Though I do like Reddit and use it for serendipitous discovery quite a bit, I don't resent Reddit's decision. It probably makes good business sense and, anyway, there aren't that many people that actually want to run a clone of a pretty rough-and-ready system (Reddit's value is its communities, not its software), especially when there are vastly superior open source tools performing a similar job like Discourse available. It's just a bit sad that something vibrant has been taken out of the system and that the world has become a bit more closed as a result. The Reddit algorithms are (currently) not particularly great but it is really important to know what they do and how they do it, and useful for those seeking to build better variants. That information may be hidden in future, and that's not a good thing in what is, by some measures, the most popular open discussion site on the Internet.