Read Anthropic’s case study about Graphite Reviewer
Background gradient

When I first learned how to code, Stack Overflow wasn’t of much use to me. Long-form tutorials like Stanford's iTunes U course helped teach me the basics of creating iOS apps, and books like Coding for Dummies taught me object-oriented Java programming early in high school.

This isn’t some problem with Stack Overflow - it was by design.

Stack Overflow was definitely designed as a fairly strict system of peer review, which is great (IMNSHO, obviously) for already practicing professionals, but pretty much everything you would not want as a student or beginner. - Jeff Atwood, cofounder of Stack Overflow

True to the quote, the more professionally I started coding, the more I leaned on Stack Overflow. It was the perfect resource for when I needed to perform niche date math in JavaScript or remember how to zip a file in memory. And who can forget the 2010 all-time best Stack Overflow answer:

Q: RegEx match open tags except XHTML self-contained tags

But now, my use of Stack Overflow is fading. I lean more and more on ChatGPT, Copilot, and sites like Phind for the same questions I used to ask Stack Overflow. I still Google and browse the Q&A site from time to time—but much less than I did two years ago.

Given the meaningful changes we’re seeing in how developers seek answers to programming questions, I wanted to take a moment and dig into the origins of Stack Overflow. How and why was it created, and does it have a place in engineering culture over the next decade?


Note

Greg spends full workdays writing weekly deep dives on engineering practices and dev-tools. This is made possible because these articles help get the word out about Graphite. If you like this post, try Graphite today, and start shipping 30% faster!


January 1st, 2008 was a strange moment in history to be a software engineer.

Git was four years old and growing in popularity - but GitHub hadn’t launched yet and developers still shared open source code mostly on SourceForge. iOS was growing, but the App Store was months away. And if you wanted to Google an answer to some common coding question, you were bound to have a bad time.

💡 Some things that launched in 2008:

  • GitHub

  • StackOverflow

  • The App Store

  • Airbnb

Question-and-answer sites have existed for nearly 30 years. Experts Exchange was one of the first, coming into existence in 1996. For over a decade the site provided services for free - but starting around 2004, they shifted to a subscription based model.

A key reason for Expert Exchange’s long-running success was its symbiotic relationship with Google. Each question and answer was hosted as its own web page, crawlable by Google bots, and thus searchable. If the site agent had “Google” in its header, the page would render without any paywall, and the bot could index both question and answer. Otherwise, the user would be hit with a large blocking upsell along with other dark patterns. Google in return made money by serving ads alongside links to Experts Exchange, as they do with all internet searches.

SEO trickery helped Experts Exchange leverage its large repository of questions as marketing bait, but its business model of charging for access to answers then pushed the company to optimize paid conversation even if it meant grinding down user tolerance. Many felt betrayed to see content they had freely contributed for years get held hostage.

Interestingly, such a model would never work today - not just because of the rise of GPTs (more on that later) but also because of Google’s self-surfacing answers. So long as the Google agents can crawl the site to read both question and answer, Google can display the answer directly without the user needing to browse and hit a paywall. Traditionally, Google’s self surfacing answers are disparaged for hurting websites - but this might be one case where they’re a blessing.

The frustration created by Experts Exchange’s paywall shift created the perfect “why now” moment for a new site to counter-position itself. Someone just had to make it.

We basically stripped away the evil
- Jeff Atwood, Stack Exchange co-founder

In early 2008, there existed two particularly popular coding blogs: “Joel on software”, created by Joel Spolsky, and “Coding Horror”, created by Jeff Atwood. The authors had met once in Emeryville, but otherwise weren’t yet close.

The blog “Joel on Software” has existed since 2000, when Joel also founded Fog Creek Software. The blog was notable as one of the first run by an active business owner.

Coding Horror was started in 2004 by Jeff Atwood , where he posted regularly for a year without much notice - “I wrote this blog for a year in utter obscurity”. However, through perseverance, Atwood’s blog started gaining traction, and by 2007, about 100,000 people had read the blog daily.

Atwood respected Spolsky, despite mild poking in a 2006 post titled “Has Joel Spolsky jumped the shark.” Atwood also had restless energy, and come 2008, he started reaching out.

“I was calling a bunch of people. Well, I was emailing a bunch of people on the internet asking them, I don’t know what to do. I have this blog. It’s gotten really popular. I want to do something. I don’t know what it is. Joel had a great idea to his credit. I mean I think Joel is much more of an idea person than I am for sure. But it was great to have that idea handed to me on a silver platter really”
- Jeff Atwood 2012

The two bloggers hit it off and started exploring working together. Spolsky presented the idea of a Q&A platform for developers that could address the shortcomings of niche outdated forms and “evil” paywall sites, and Atwood immediately latched on. Atwood saw the project as a chance to target energy from his successful blog and do something good for the world.

You explain, look we’re like Experts Exchange without all the evil and they immediately get it.
- Jeff Atwood 2008

In April 2008, Atwood asked his readers to vote on a site name. Despite the post taking a shot at the awkwardly named “expertsexchange.com,” thereby hinting at the future functionality, Atwood remained mum on what the site will actually do. “stackoverflow.com” won with 25% of the vote - beating out second place name “privatevoid.com.”

(The site logo would later be decided through an outsourced contest as well, with 253 entries and a $29 prize)

With their newfound domain name, the founders hacked away at the first version of Stack Overflow until it was ready for private beta in the summer of 2008. In a brilliantly coordinated marketing push, Spolsky and Atwood coordinated blog announcements to drum up awareness:

April 16th, 2008

We’re starting to build a programming Q&A site that’s free. Free to ask questions, free to answer questions, free to read, free to index, built with plain old HTML, no fake rot13 text on the home page, no scammy google-cloaking tactics, no salespeople, no JavaScript windows dropping down in front of the answer asking for $12.95 to go away.
- Joel Spolsky 2008

Stackoverflow is sort of like the anti-experts-exchange (minus the nausea-inducing sleaze and quasi-legal search engine gaming) meets wikipedia meets programming reddit. It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming knowledge in the world. No matter what programming language you use, or what operating system you call home. Better programming is our goal.
- Jeff Atwood 2008

The dual announcement was successful, and on day one, it spread their idea to hundreds of thousands of engaged developers.

To further build in public, Atwood and Spolsky started recording one of their weekly remote phone calls and publishing it as a podcast.

Hundreds of episodes and 16 years later, the podcast is still publishing regularly. Sort by new, and you can find an amazing (but rambling) oral history of the early creation of Stack Overflow week by week.

The website as of July 2008 is just a placeholder, nudging folks to a podcast and blog. Despite its sparseness, the founders recall seeing 30k+ visits to the site just by mentioning it from their blogs. By the start of 2009, the site was out of beta and proudly free without registration.

In a later interview, the founders recount the magical experience of seeing answers start getting indexed by Google within the first week. Soon they were using Stack Overflow to answer questions that came up while building the site itself - at which point they realized just how successful this was about to become.

Reading the old “How Experts Exchange Works” page, we can appreciate just how different Stack Overflow was from what came before:

  • Signups:

    • Experts Exchange: “First, all participants must register as a customer.”

    • Stack Overflow: anonymous users could interact without needing to create an account.

  • Asking questions

    • Experts Exchange: Askers would assign a bounty of points to questions based on perceived difficulty. The more points assigned, the more likely it would be answered.

    • Stack Overflow: Questions came with no bounty. Rather, all questions were treated equal, and moderators would work to close duplicates or poorly worded queries.

  • Answers:

    • Expert Exchange: “Once an expert prepares and submits an answer to your question, the question is locked and you must work with that expert for the time being”

    • Stack Overflow: Any user could offer an answer to an outstanding question, even if other answers already existed. Community members could upvote answers even if they didn’t ask the original question.

  • Question limits:

    • Experts Exchange: “You should be able to post about 2 questions with us each month, for free, indefinitely. If you need more points you may purchase points online.”

    • Stack Overflow: There has never been a paid limit to how many questions a user can ask.

Post-launch, the Stack Overflow founders continued to counter-position their site against the former Experts Exchange. They proudly repeated how all of Stack Overflow’s data was licensed under Creative Commons, and that they’d never charge for access the way EE did:

Because that resource is provided by the community, it belongs to the community. [...] We did this specifically because of the negative experience we had with EE taking a community-generated resource and deciding to slap a paywall around it.

Some engineers loved the positioning. At a time when GitHub was leading to a renaissance in open-source software, Stack Overflow was creating a similar effect in open-source questions and answers:

Enthusiastic SO user here. The fact that the data is available puts SO in the same category as open source software for me.

Despite the positioning, not all engineers were so trusting:

So far so good. But guess what happened to Google? They got good. They got big. [...] They started saying "If you don't want people to know what you do, you shouldn't do that anyway". They now want your data to be shared among their properties and you cannot opt out. They got jealous of Apple. They got freaked out by Facebook…

I love SO and believe in the integrity of Joel and Jeff and others. You guys really rock. But time will change. Tide will change. A tidepool that is fun for little kids could become a fatal trap the very next day (sadly, this happens often). So please keep the warning in mind.

Reflecting on the history of event’s here, I can’t help but appreciate how effectively Stack Overflow disrupted Experts Exchange. From a marking perspective, Atwood and Spolsky worked hard to villainize the incumbent site - and they succeeded. Some accounts argue the death was justified because of Experts Exchange acted immorally in charging for user generated content that was originally assumed free - and I find myself agreeing.

That being said, it’s interesting to try to empathize with some of the Expert Exchange employees post Stack Overflow launch. This first-hand account posted to meta.stackexchange.com is particularly interesting in explaining the tough position Stack Exchange found itself in as a business leading to their paywall decision:

Experts-Exchange is still a labor of love. We have a great story. We're proud of where we come from. We're proud of how we got here. Now we're going to talk about it. A lot. Paid does not equal evil. A business model does not mean we're bad folks.

The takeaway? A company can have kind-hearted engineers and still do bad things. Stack Overflow’s villainization of Experts Exchange strikes at the identity of those who passionately worked on it - and I can tell that former employees found it hurtful. It’s worth appreciating that early Expert Exchange creators had fine intentions, and despite the site tanking, their work helped pave the way for future business.

Paywalls themselves aren’t a terrible business model. Many modern media sites like the NYT have successfully shifted to paywalls. Writers like Ben Thomson of Stratechery make a strong case that charging for content can correctly align business incentives with creating the best possible content rather than just mining for clickbait.

In 2012, a senior admin from Experts Exchange ranted in the Hacker News comments:

There's no question EE made some amazingly stupid mistakes -- against the advice of people who have been around EE, the tech industry and subscription/advertising/membership businesses a lot longer than those making the decisions. In doing so, it opened the door for you and Mr Atwood to go FUD on it, and build yourself a lot of traffic, but not a business.

This comment, like many angry internet comments, has not stood the test of time well. Stack Overflow is not only a business but also a very valuable one. In 2021, the site was acquired for 1.8 billion dollars. This high valuation begs the question - from 2008 to 2021, how did Stack Overflow make money?

Without a paywall and with a freely licensed dataset, Stack Overflow had limited monetization options. From day one, the site incorporated classic banner ads. The ads initially yielded very little revenue, but eventually grew to meaningful amounts as the site’s users climbed into the millions.

A year into Stack Overflow’s launch and growth, the founders looked to supplement advertising revenue while keeping Stack Overflow’s core product free. They launched “Stack Overflow Careers.” There, users could host resumes for free. For a fee, users could search employers, and for a larger fee, employers could search users. Note: this idea was not novel - Experts Exchange had a job board with free CV hosting years earlier.

In the following years, Stack Overflow diversified its revenue streams even further. They launched an enterprise self-hosted version of the site for large organizations to accumulate internal knowledge bases. They allowed companies to sponsor specific tags, enabling a form of targeted advertising. As their dataset grew, Stack Overflow began licensing access to their data on programming trends and technology usage.

In the end, Stack Overflow never let the pursuit of revenue cripple their core service to users. They grew more corporate, and they found creative new ways to make money, but none of which directly incentivized the company to offer a worse experience to users.

In 2018, Atwood wrote a 10-year reflection on Stack Overflow. There he reflected on the site’s greatest challenges:

  1. Helping users understand that the site’s mission is to assemble a wiki, not to answer your burning question.

  2. Stack overflow isn't great when it comes to beginners and learners

  3. Duplicate questions become more and more challenging as old top answers become outdated.

Similarly, in a 2021 interview, the founders reflected on things they would have done differently:

  1. Change the ask page to help users understand that the site is not tech support.

  2. Make comments transient and disappear after 14 days.

  3. Skip trying to use OpenID

  4. Better architect multitenancy for Stack Exchange sites early on.

But amongst all these reflections, the creators could not predict what was about to happen—the rise of AI and ChatGPT in 2023.

If you believe the founders, Stack Overflow is, first and foremost, a wiki. But wikis themselves are now in danger of being disrupted by the world’s most polite Q&A product - an AI chatbot that can understand terribly formatted questions, always apologizes even if the query is wrong, and responds in seconds, not hours or days.

The Stack Overflow founders regretted that too many new users mistakenly thought of the site as "tech support,” - but now we literally have AI tech support. The issue at hand is that without public questions and crowdsourced answers, the accumulation of peer-reviewed knowledge stops.

It would be a shame if, from 2024 onwards, Stack Overflow’s engagement and knowledge base stagnated. GPTs owe much to the site - it’s likely that much of their programming knowledge comes specifically from Stack Overflow’s datasets.

Worse than a lack of engagement is the dilution of quality content. Already, we’ve seen Stack Overflow moderates get overwhelmed with a deluge of deceptive AI-generated answers, leading to pushback and strikes.

The background is that StackOverflow appears to be struggling to make sense of the impact of AI tools like GitHub Copilot and ChatGPT on its question and answer site. Traffic has fallen. The company’s initial reaction was to ban use of ChatGPT to post Stack Overflow answers via a “temporary policy”, to the approval of the community, but an official staff post also states that “we’ve decided no network-wide, general policy regarding banning ChatGPT, or other AI generated content, is necessary or helpful at this time.”

I suspect the future existence of Stack Overflow depends entirely on how well it can adapt to AI. This is not SO’s problem alone - it's an issue that all for-profit wiki sites face moving forward. You can see that Stack Overflow is starting to experiment with AI-focused features. It’s also possible engineers get sick of AI responses and crave the classic human upvoted answers - but I wouldn’t bet a billion dollar a company on it. Moving forward, Stack Overflow needs to

  1. Find a sustainable model to continue crowdsourcing information and review.

  2. Or diversify their revenue far enough to no longer care about page views and SEO.

Controversially, peer company Reddit is already experimenting by selling raw training data to Google - it’s possible Stack Overflow could attempt similar. But if they did, they’d be reneging on the founder’s promise and vision for all SO data to be open source and free to the world. Perhaps the 2012 Hacker News comment will eventually be right:

I love SO and believe in the integrity of Joel and Jeff and others. You guys really rock. But time will change. Tide will change. A tidepool that is fun for little kids could become a fatal trap the very next day (sadly, this happens often). So please keep the warning in mind.

Built for the world's fastest engineering teams, now available for everyone