Alignment

This post was provoked by a recent installment of Jillian Bejtlich’s excellent newsletter, The Community Nerd:

You should read it yourself and come back here to compare notes. To summarize, Jillian is proposing that the people we often think of as the community (people who are active) are actually the infrastructure that allows communities to function. (Community as infrastructure is an important theme of her newsletter.) Community managers tend to focus on the people who speak up in conversations, but maybe we need to cast our eyes to the people who are reading.

I found myself nodding along because infrastructure is the final evolution of community. Allow me to illustrate with an example I know reasonably well: Stack Overflow.

  1. Someone asks a question, say, How do I delete a commit from a branch?
  2. Other people answer the question, which helps the person who asked.
  3. Yet another group of people vote the answers up or down so that the best answer rises to the top.
  4. Random people who want to know how to delete a commit from a branch find the solution to their problem and can go on with their day.

That question shows up in my search results every few months when I screw up using git. However much time was spent by the people who asking, answering, editing and voting on that question, pales in comparison to the time saved for people who run into that extremely common problem. It’s weirdly pleasurable experiences to search and find my own answer on Stack Overflow because it demonstrates I did something useful. That’s the sort of thing that motivates the maintenance crew.

When a community (or whatever we decide to call it) functions properly, the efforts of a small number of people (the maintenance crew) turn into a massive aggregate benefit for random people you may never meet. Nowhere is this more true than in open source projects. I described it in my talk at FOSDEM:

This is a very common thing in an open source project. You see something you want and you can’t have it because it doesn’t exist … and you build it yourself. And then, instead of just saying “Oh, I’ve got this thing for myself”, you say, “Well, I built this and I want some help building it and doing more and so I’m going to make the project open source and other people can contribute.”

Open source projects exist in a symbiotic relationship between maintainers, contributors and end users. Exactly how a project functions depends on the various people who are involved, but in healthy projects everyone is generally aligned on the mission. Keeping everyone aligned requires setting up the right structure. For instance, open source licenses often protect end users from losing access to the software they depend on and protect maintainers from being sued by disgruntled users. These provisions give a project stability even if (especially if) nobody exercises them.

So what happens when there’s a misalignment? Well, maybe nothing. Or at least nothing visible until something shocks the system. One factor I didn’t mention in my Stack Overflow example was the investors. About two years after the site launched, it started to receive outside investments. In the initial stages investors wanted the same thing as everyone else. But over time their interests, along with the interests of the maintenance crew, began to drift apart.

To show what happens visually, I grabbed a version of the “AI killed Stack Overflow” chart that’s become a meme. I picked voting as the y-axis, but you can see the same story with other metrics. And I plotted the investment rounds and other key moments on the graph:

Stack Overflow voting history by week

Stack Overflow always struggled with its business model. Initially it sold ads, which wasn’t exciting, but did provide revenue that grows with the site. Perversely a lack of revenue can be a positive attribute for early investors. They are betting on the longterm (10+ years) and prefer promising companies that don’t make money. I was hired shortly after Series C in 2013 and the pitch to me was that Stack Overflow was still claiming market share and wasn’t worried about profits just yet.

Series D in 2015 shifted investor patience. [1] At the next company meetup (where I gave a talk about Stack Overflow’s token economy) we learned about a series of decisions intended to make the company profitable enough for early investors to make their exits. Nearly everyone’s focus shifted away from creating value for people looking for answers (one executive derisively labeled them moochers) and toward profit.

Now I think there were other factors in play, but that investment came pretty close to the peak of activity on Stack Overflow. Other than a COVID spike, voting per week settled into a slow decline. Still, we kept everything together on the whole. The community team advocated for our maintenance crew with the rest of the company and we advocated for the people looking for answers with the maintenance crew.

To their credit, those investors waited for several more years before acting. They changed CEOs. As Joel Spolsky, the first CEO of Stack Overflow, wrote:

We are starting to close many huge deals and becoming a hyper-growth enterprise software company very quickly. This is not something I’m particularly good at, and I thought it was time to bring on more experienced leadership.

My initial interaction with the new CEO, Prashanth Chandrasekar, was quite positive. He clearly did the job he was hired for as Stack Overflow raised more cash and eventually sold for a whopping $1.8 billion. I gotta believe the investors were overjoyed with his work. Unfortunately, I was less optimistic and quit the company a few months after he joined. For all his deal-making skills, he’s proven to be a disastrous CEO.

So when an earthquake, in the form of ChatGPT, hit Stack Overflow, the new CEO made a series of baffling decisions that resulted in a moderator strike. Not only has Stack Overflow alienated its own maintenance crew, it’s become desperate to find new places to stick ads. Unless you count people using LLMs to find answers based on training data, Stack Overflow has become the internet equivalent of LA’s streets.


  1. Joel Spolsky wrote the announcement and was still enthusiastic about the project. He’s the only person I can imagine coming up with the “programmer Jerusalem” concept. Sadly he seemed to disengage from day-to-day business at the company not long after this. ↩︎