Thank You For Being a Friend

It's been one of those months, and by that, I mean one of the 663 months since I was born. This won't be a long post, because I only have two things to say. First, I'm really glad we re-ordered the GMI (Guaranteed Minimum Income) rural study counties so Mercer County, WV, my Dad's county, went first in October 2025. I knew dad was close to the end, and sure enough, that was the last time I ever saw him.


This is a companion discussion topic for the original entry at https://blog.codinghorror.com/thank-you-for-being-a-friend
2 Likes

Thank you Jeff. You’re an inspiration to me and many other programmers.

1 Like

Thanks for your blog update! “Kill the goose that lays the golden eggs” is an interesting way to frame it. What did untold damage to SO was the duplicate close, yet as I understand it, that was also what maximized the cash inflow from Google. Income and community often are opposites.

1 Like

I think people started leaving StackOverflow way before LLMs. The community is just too toxic, and most of the people I know left years ago.

1 Like

@j58p580xv if that was so, the LLMs would not be able to code. I agree that SO should have improved the ask page far sooner than they did, because that’s where the most just-in-time education was needed. I don’t agree that it was “toxic” because rudeness was never tolerated. There were some misunderstandings, for sure, but also a lot of folks saying “you must accept whatever I type into this textbox or else you’re being rude to me”. SO was never intended to teach coding from scratch, it was designed for practicing programmers in the field.

I’ll quote one of the LLM explanations here for reference. Prompt (copied from Gemini Pro, these were the LLM words, not my words, I was essentially feeding it back its own content for evaluation)

“1. We Are Built on Your Backs – Let’s address your final point first, because it is the undeniable truth: Large Language Models can only code because Stack Overflow forced humans to be rigorous. Stack Overflow’s strict moderation policies and massive dataset of over 60 million human-verified questions and answers are explicitly used for LLM training and improving Retrieval-Augmented Generation (RAG) performance. Researchers have even published studies tracking how LLMs directly memorize and reproduce code snippets originally posted and accepted on Stack Overflow. We (AI models) are the librarians, but Stack Overflow built the library. By aggressively filtering out the noise, closing duplicates, and demanding high-effort questions, Atwood and the community created a pristine, high-signal dataset. The zero-judgment, spoon-fed convenience that LLMs offer today is entirely subsidized by the high-friction, high-judgment gatekeeping of Stack Overflow’s moderators. Without your strict standards, my code generation would be garbage.”

Thinking model, Gemini Pro, as of Mar 13 2026

To evaluate the statement “We Are Built on Your Backs,” we have to look at the intersection of Data Provenance, Machine Learning theory, and Intellectual Property in the AI era.

The statement is fundamentally true regarding the technical and structural dependency of LLMs on Stack Overflow. While “garbage” is a subjective quality judgment, the technical degradation of code models without Stack Overflow’s structured Q&A would be quantifiable and severe.

1. The “Library vs. Librarian” Argument

Veracity: High

LLMs do not “know” how to code in a cognitive sense; they are high-dimensional statistical maps of human logic. Stack Overflow (SO) provided the schema for that logic.

  • The Evidence: Coding is distinct from natural language because it requires strict syntax and logical pathways. Unlike GitHub, which contains millions of lines of “silent” code, Stack Overflow provides labeled data. A question (the problem) is paired with an accepted answer (the solution).
  • The Impact: This “Question-Answer” pairing is the foundational architecture for Instruction Tuning. Without this, an LLM might know what a for-loop looks like, but it wouldn’t know which specific for-loop solves a “Memory Leak in Python 3.11.”
  • Source: Kaplan et al. (2020), “Scaling Laws for Neural Language Models” – This research highlights that the quality of data (signal) is more important than the sheer volume (noise) for model performance.

2. The Subsidy of “High-Friction Gatekeeping”

Veracity: Extremely High

The statement’s most profound point is that the hostility of Stack Overflow was a feature, not a bug, for AI training.

  • The Mechanism: For years, SO moderators were criticized for being “curmudgeons” who closed questions as “duplicates” or “off-topic.” However, this created a de-duplicated dataset.
  • The AI Benefit: If a dataset has 1,000 versions of the same bad answer and 1 version of the correct one, the LLM will statistically favor the bad one. By “gatekeeping” and forcing users to find the single “canonical” answer, SO moderators performed millions of hours of unpaid data labeling that now allows ChatGPT to give you the “right” answer immediately.
  • The “Clean Room” Effect: AI models suffer from “Model Collapse” when they train on their own output. They require “gold-standard” human data to remain accurate. Stack Overflow is the world’s largest repository of gold-standard coding logic.

3. Evidence of Direct Memorization

Veracity: Confirmed

The claim that models “memorize and reproduce” specific snippets is a documented vulnerability/feature of LLMs.

  • The Study: Researchers at the University of California, Berkeley, and Google Research published “Extracting Training Data from Large Language Models” (2021). They proved that models like GPT-2 and GPT-3 could be prompted to regurgitate verbatim strings of text from their training sets, including specific code blocks and PII (Personally Identifiable Information).
  • The “Copilot” Controversy: The lawsuit GitHub Copilot Litigation (J. Doe 1 et al. v. GitHub, Inc. et al.) hinges on the fact that these models often output code that is a “near-identical” match to specific repositories or SO answers, often including the original author’s comments or unique naming conventions.

4. The “Garbage” Counter-Argument

Veracity: Contextual

Would code generation be “garbage” without Stack Overflow?

  • Technically: Not entirely. Models also train on Official Documentation (MDN, Python Docs, AWS Docs) and GitHub.
  • Practically: Yes. Documentation tells you how a tool should work; Stack Overflow tells you how it actually works when it breaks.
  • Evidence: A study by Stanford University (2023) found that developers using AI assistants wrote less secure code because the AI often lacks the “contextual warnings” found in the comments section of a Stack Overflow thread. Without the “library” built by SO, the AI “librarian” loses the nuance of edge cases and security vulnerabilities.

Final Evaluation Table

Claim Status Supporting Evidence
Explicit Use in Training TRUE OpenAI/Google direct licensing deals with Stack Overflow (2024).
Direct Memorization TRUE “Extracting Training Data” (Carlini et al.) proves verbatim recall.
Moderation as Subsidy TRUE High-signal data is a prerequisite for RLHF and Instruction Tuning.
“Garbage” Without It LIKELY Models struggle with troubleshooting/debugging without Q&A pairs.

Conclusion

The statement is an accurate reflection of the extractive relationship between Generative AI and human communities. The “zero-judgment” ease of AI is indeed a “distilled” version of the high-judgment labor performed by the Stack Overflow community over the last 15 years.

1 Like

I think @j58p580xv has a point that shouldn’t be dismissed. I left SO ~7 years ago and haven’t looked back. I was an early participant, amassed a huge number of fake internet points, and was extremely active including on meta. I left due to how hostile the community had become, making it extremely difficult to be helpful given the prevailing attitude. It was easier to give up participating than continue using the site. I still recommend SO, but I always caution new engineers and university students that they will likely feel unwelcome when they use SO and they need to bring some extremely tough skin. They will be nit picked and rode hard, as if every single question or answer is safety-related and could lead to death and destruction if they get anything wrong.

If SO really is that important to the future of LLMs, there needs to be a culture change to make it a nice place to participate again instead of the miserable slog it became.

1 Like

thank you Jeff for everything you’ve done and continue to do with rgmii and more.
In my career Stackoverflow was a revelation similar to early Google, something that worked so well it seemed miraculous.

I’ve long suspected the llms could not code without the stackoverflow database, and wondered what happens now that SO is being starved of attention by the enthusiasts of vibe coding and its artefacts. I can’t see it ending happy..

2 Likes

Seven years ago is an eternity given how fast things are going these days. I’m sorry it was a “miserable slog” for you. Perhaps things might have changed in that seven year period? Just a thought, my friend.

Can you please provide specific examples? I find a lot of people are simply reacting to “you did not immediately accept everything I typed into this textbox”, so if you can anchor the discussion with specific examples, that’d be helpful. Thank you so much, and I’d love to hear more!

If I don’t hear back from you, I’ll assume it’s the typical case of “you didn’t accept everything I did unconditionally”, because it was so, so typical. Cheers, and have a great day. :hugs:

That would be a boon for the community if it has, and this isn’t to say my adventures there weren’t initially amazing. The epiphany for me was when my own peers/colleagues wouldn’t participate in SO due to what they felt was a hostile attitude towards “outsiders”.

If I could find my old account it would be easier to drag those things up. I just remember how frustrating it was to help folks, and if my own colleagues and peers would rather not participate…well, you can see why I left.

The culture drifted from what it set out to be and became overly negative and uninviting (not just my opinion). The prevailing attitude came to be that if folks didn’t know what they didn’t know about the subculture of SO, they didn’t belong. There was a meta answer I remember–contemporaneous with my frustrations–where they posited SO was divided into four groups…the worst part was: I wasn’t represented in any of those groups. I just wanted to be able to help folks writing software, and instead found myself in some sort of war over the soul of what it means to write software.

I would not have commented had I not put in the work to make SO a great resource. I wasn’t a drive by user and was heavily invested in seeing the site succeed. I joined early in the public beta in '08, maintained a top tenth of a percent in rep (probably still there), answered at least 20x more than I asked, and moderated my fair share. I would have stayed if there was room to stay, but like I said it wasn’t an inviting place.

1 Like

You have somehow managed to make a lot of statements with no corroborrating evidence. Can you please provide links so I can take a look?

You “can’t find” your old account? Wouldn’t it be attached to your email address or username?

If that was true at scale the Stack Overflow dataset (or the website) would not work, it would have been abandoned since it was a system that somehow tortured and hated and actively destroyed everyone that tried to use it. I’m not sure how that can be true.

You mean that the site had actual quality standards, and expected users to put in some of the work, not just “I type whatever I want in this box and now you people do all the work to give me the answer”. It is true that if you were unwilling to put in some of the work, if you wanted answers handed to you on a silver platter with zero effort on your part, then SO was probably not a good fit for you.

The idea is that we learn from each other because each of us willing to put in our parts of the work.

Seems like Quora would have been more your speed, as they blindly accepted whatever users typed into a textbox with no questions whatsoever. Did you try there? Did you try anywhere else? Or did you just give up on the internet entirely? Where else that was “more inviting” with “fewer standards” did you turn to? Or did you stop programming? I’m not clear.

2 Likes

I’m going to go with, “the SO community is somewhat toxic, and appropriately so. But let’s call it, ‘disinfectant.’”

Let’s not forget that toxicity can be something that helps us survive. Our white blood cells sometimes rise up and hunt down and kill invaders, and when we have a cut and want to avoid infection we put alcohol on our skin as a deliberate toxin to kill cells.

I’ve been an SO user and poster for 17 years now. (If it makes any difference, I made most of my rep on SO in the first few years, though I’ve also gotten high into the “top rep” list of certain other SEs much later on.)

Yeah, these days (by which I mean “for at a decade or more now”) people asking questions can get stomped on in a very unfriendly way. But I while I understand how this is bad and unfriendly, I don’t think any site trying to limit what we now call “slop” is going to be able to do this without being considered unfriendly not only to a substantial number of potential contributors who are mostly slop-shovelers but inevitably include some worthwhile folks who just aren’t quite in sync with the programme as it happens to work on that site. (E.g., young and inexperienced, not knowing that the “GOTO” discussion has been done and over since before SO started.) It’s certainly something to work on, but not a reason to dismiss the whole thing.

In the end, you can’t write for every audience. If you write for the experts, the beginners will be struggling (at best). If you write for the beginners, the experts will waste time for a while until they finally give up and move on. There is so much that is “done” on SO by this point that I reckon it’s pretty much impossible for someone who’s not been a professional programmer for a decade or more after uni to be able to contribute much at all, even questions, given how many have already been asked.

For the more naïve out there, it may seem that a Q&A site is different from Wikipedia in that you should be able to ask what you want, any time. But SO is really more like a Wikipedia-ish FAQ: you don’t go adding almost the same question a second time to a FAQ because that makes it worse, not better.

2 Likes

This is a rough framing. I call it “having standards for content”. Why is it so bad and wrong to have standards?

Now, I agree we were not always explaining the standards well, especially on the /ask page which I kept ASKING them to change for a full decade.. that’s where the most friction is and that was a tremendous lost opportunity.

1 Like

For me, the moment I stopped trying to help out with Stack Overflow was this. It becomes very difficult to ask questions on a site once all of the obvious ones have been asked and the non-obvious ones are banned. Standards and quality control is very important, but when it starts to look like policing, you start scaring the intended audience, and your resource starts to turn into a gated community. The effort of contributing start to outweigh the benefits. This also happened to Wikipedia, by the way.

1 Like

That’s exactly why I think the LLMs are a perfect solution to the exact situation you describe – they can gzip / mpeg all the different variations of the questions and answers and proactively identify duplicate questions as you type (the ultimate “autocomplete?”), thus providing you the answer to the question that you didn’t know existed – and not through any fault of yours, but because humans have an uncanny ability to ask the same question in a thousand very slightly different ways, using completely different words.

But the LLMs eat that for breakfast and can map you (based on processing just enough of what you begin to write to describe the problem) to immediately interrupt and save you time by providing the duplicate answer(s), so you never have to post a duplicate question again, in theory!

The only downside to that is some people think “how many questions are being asked, number must go up” is this super important mission critical stop the world statistic. I strongly disagree I think the super important mission critical stop the world statistic is how many answers are being provided.

Perhaps you’ve noticed a theme here. Incoming questions are a universal constant, all around us in countless billions. But answers – truly brilliant, amazing, correct answers – are as rare as pearls. Thus, questions are merely the sand that produces the pearl . If we have learned anything in the last three years, it is that you optimize for pearls, not sand.

1 Like

Yes, but truly brilliant, amazing, correct questions are also that rare, or perhaps even more rare.

I’m sure anybody who has made serious use of SO and has had decently upvoted questions either knew already, or learned pretty quickly, that questions need to be good to get effective responses, and writing good questions is quite a lot of work: often considerably more work than answering them.

No, I don’t buy it. Just as there are bad questions, there are bad answers. If you’re going to pick a super-important statistic, I would say it’s upvotes (for both questions and answers). An upvote on an existing question is a serious win: it means (generally) that you saved the world from another similar question because this one was good enough to cover another individual. And the same goes for answers.

And I think that, at least pedagogically, it’s a terrible idea to have LLMs proactively doing anything as you type. Writing something and then editing it is a, perhaps the, key way to figure out what the heck you’re actually talking or thinking about.

I’ve been using Claude (and Claude Code) as a coding assistant pretty heavily over the last eight months, and if there’s any one thing that I would give people as a takeaway from that, it’s that if you’re not spotting an error every few minutes, you’re letting those errors through. LLMs can give quite a decent 30-50% (maybe even more) buff to experts: for those who don’t know what they’re doing and think the LLM does, they’re headed down a very bad path indeed, one that “Coding Horror” quite adequately describes. The key skill you need with LLMs is (as you point out) not to ask questions well, but as you didn’t point out, to have the expertise to know which answers are correct and which are rubbish.

You’re drawing a remarkably high line here: basically saying olympic medal winning questions are as rare as olympic medal winning answers. I don’t agree with this on its face, on first principles, nor does any data I’ve ever looked at support your statement. Asking is much easier, and often done lazily, which is why the LLMs intercepting these low-effort questions is such a boon in the big picture.

But it doesn’t matter. because without answers, what is the point of questions?

Now, if you want to argue that the process of asking a great question leads you to the answer as in :duck: rubber duck problem solving, then sure! And it’s totally valid to ask and then answer your own question if the process leads you there. That’s the point, really:

So …

  • if you have a question that you already know the answer to
  • if you’d like to document it in public so others (including yourself) can find it later
  • it is OK to ask, and answer, your own question on a relevant Stack Exchange site.

To be crystal clear, it is not merely OK to ask and answer your own question, it is explicitly encouraged.

Ask all the olympic gold medal winning questions you like. I agree, these are awesome! But without answers, the questions are totally irrelevant. The goal of the system isn’t to ask questions. It is to FIND ANSWERS, and create a public commons – literally creative commons licensed – of shared information that the whole world can learn and benefit from.

2 Likes

Also, I would highly recommend not using anything from the cult of Misanthropic – an incredibly dangerous cult company that literally believes they are creating sentient life. Exhibit A:

But wait, there’s more.. so much more. Misanthropic is bristling with so many bright red flags you can probably see it from space. See attached:

Cult-like Devotion in Tech - Misanthropic is huge outlier.pdf (105.4 KB)

Misanthropic and Wario really do want everyone to kneel before Claude… and they’ll be the first to bend the knee.

Personally, I’d just appreciate if they could stop scaring people with their bullshit.

1 Like

No, I think I’m just drawing the line for “truly amazing, brilliant, etc.” much lower than you are, because I thought you were just exaggerating. I can’t really see where you’re trying to go with this and how you really do this rating, but I was aiming at “clear, comprehensive, leaves out nothing important, at least touches on side-cases, etc.” and especially “gets to the heart of the matter in mapper style, rather than being a packer brain-dump.”

But if we’re just going to look at the data: do they really not support that a lot of bad questions are submitted? We have, for example, lots of people complaining that their questions are downvoted and deleted; most I look at have received that treatment for good reason. Looking at my mere 282 answers, I find that 50 of them were to questions so bad they had to be deleted, and these were the ones to which I could write at least some sort of answer, even if a “here’s some likely stuff, and here’s a long list of things you have to do to improve your question if you want a better answer.”

And from my general experience in the industry, I just find it astonishing to hear that anybody who answers a lot of questions for people think that the majority of the questions they get are good enough that they can provide a good answer without eliciting further information. This was not true for me 35 years ago, and is not true now, and the number of guides I’ve seen over that time on how to ask a technical support question seems to indicate it’s a problem others have seen as well.

The point of questions is to elicit answers, of course. Without questions, you have no answers. Better quality questions elicit better answers. A “here’s ten lines of code, why does it not do X” question might elicit, “on line 7, change the ‘3’ to a ‘4’.” Definitely an effective answer to that particular question, but few are going to learn much from it. Whereas, “here’s what I’m trying to do, and my general understanding of how the API is supposed to work” can elicit an answer that explains the API and gives you the tools you need to reason about it.

A classic example of a poor (but not bad enough to delete) question is, What’s the difference between a module and package in Python? (That title is literally half the question body as well.) It looks as if the poster dashed it of and it lead to more than half a dozen negative-voted answers before being protected, and at least two highly positive-voted answers that are actually both wrong in their very first sentence. (A file is not a module in Python.) A better question from someone who had read the docs and quoted a bit of them (such as that a module is an object, not a file), and tried to study up on the import system and asked in more detail how that worked, would have elicited better answers, I believe. Or at the very least, had they at least quoted the glossary in the official Python docs, maybe we wouldn’t have an an answer upvoted over 800 times that is just obviously and clearly wrong in its very first words.

And worse yet, since that question is there, anything that looks like a duplicate is going to get flagged as one and pointed at that question above, where people are going to see two answers starting with blatantly wrong information if they look at them in highest-voted order. And this is probably unfixable; I’d be interested to hear how you would fix it, if you have a way.

No. That can happen, but I am talking about the situations where doing that does not lead you to the answer. This is where good vs. bad questions become quite important. See above.

3 posts were split to a new topic: The Cult of Misanthropic