What comes after the slow, LLM driven death of StackOverflow?

A screenshot of a tweet from the user "@frye" saying: "stackoverflow is a ghost town now. it's like walking through an abandoned liminal space. the top question from the past month has 78 upvotes and is titled 'how can i avoid using LLMs as a software developer'". The post has 622 retweets, 18k likes and 580k views

I saw someone talking about this tweet the other day... Less and less, forums like StackOverflow are at the top of our search results- which got me thinking... What does this huge paradigm shift mean for software development?

StackOverflow used to be an undisputed titan for solving coding problems, its community was unmatched in providing a range of answers for any question you could think of. An invaluable resource, but a flawed one... It was laden with hostile and exclusionary behavior, especially toward newbies.

But for all of its flaws... StackOverflow was (and still is in many ways) a super important platform, especially for juniors and mid levels. Users can learn from experts, and said experts can have their answers rated and commented on, allowing anyone to evaluate the advice given. It was also a great opportunity for seniors to come together to show all the different approaches and solutions to problems.

Worryingly, StackOverflow has seen a dramatic drop in traffic. It has less engagement than when it released back in 2009. To top it all off? Google is centering "AI" in its search, keeping people on its platform, all while making their standard search results worse and worse.

I fear for junior developers. As search engines degrade and AI slop envelops the web, the noise to signal ratio skyrockets. This makes searching for good answers harder (if not impossible), which makes LLMs look more appealing. Even if they Google something, there's a good chance they'll land on a LLM-slop-generated "article" about their problem, riddled with hallucinations and inaccuracies.

Slowly, juniors become increasingly dependent on LLMs, stunting their learning and growth. In LLM captivity, they'll be stuck with LLM hallucinations and no way to evaluate the quality of the answer: it's just the junior and their chat bot. No senior developer to comment, upvote or downvote a response given. They're in an impossible position with few solutions or ways out.

The artisanal internet is dying...

We're seeing a dramatic paradigm shift on the internet. Google is increasingly centering its search to be more "AI centered", to keep people on its platform, rather than visiting other websites. Traffic and engagement is king (and data).

More than 50% of the internet's written content is by bots; people on social media are even arguing with bots. The dead internet theory is becoming less of a theory and more of a reality. 10 years ago, if you found a tech blog with a niche coding solution? You'd be near certain a human wrote it. Today? There's a good chance it's a bot.

"Just because it's human doesn't mean it's better!"

You're not wrong! Humans are fallible. But, humans are also creative, we create novel things. Generative AI can only look backwards, never forwards: it's a prisoner to its training data. Its output is just a statistical average of everything that came before its training. And that's without getting into the issue of hallucinations!

It's not even about the output either, but rather the flow of information. Think about it: if we're figuring out our problems on closed off generative AI chatbots owned by billionaires, that information belongs to them- not us. It's not search indexable, it keeps us isolated, less networking happens and our software and communities are worse off for it.

Imagine instead if we did post about our "figuring out" process on Stack Overflow or personal blog? If we still have information publicly and freely accessible, then our industry will fare the generative AI bubble burst much better. Better yet, this also acts as social proof of your skills... An increasingly important factor in the hiring process when anyone can generate slop code at the push of a button.

How are junior developers impacted?

I'm most worried for my junior colleagues. I had the "privilege" (never thought I'd be calling it that... More on this in another post!) of learning in a time where StackOverflow and IRCs were thriving. While many people on these were very rude, insulting and impatient to 13 year old me trying to learn how memory management worked in Objective C... I did get advice that turned me into the developer I am today.

Better yet? The advice I got from StackOverflow was public: other users could comment on and even debate answers, voting them up or down. If an outdated library was used in an answer, or it was bad practice, another expert would weigh in, and people would upvote that answer. Weighing up answers helped me learn the skill of evaluating solutions and finding good quality, sustainable ones. It's skills like these, learning with other people, that carry you into your senior years.

Many juniors I know have become reliant on generative AI. If Claude or Gemini went offline tomorrow, they wouldn't be able to code at all (although I know many seniors who also feel similarly!). As much as I'd discourage this reliance, I also understand why they feel reliant. If they try and Google a question, they immediately get slapped in the face with generative AI. If they don't use that, there's a good chance they'll end up on a slop "article" anyway.

Juniors being reliant on LLMs reminds me of "tutorial hell", only much worse. Growing up, I'd get stuck in tutorial hell all the time: only being able to make things with the help of tutorials. Said tutorials never taught the skills of problem solving, of independent thinking. LLMs are this but on steroids.

Obviously, the impact depends on how people use LLMs. Using it as a learning tool and asking clarifying questions is definitely better, but it's still a problem. LLMs sound so confident with uncertainty, juniors don't have the experience to pick apart what's hallucination and what's fact. At least on StackOverflow or forums, people could downvote an incorrect answer or point it out in the comments. That aside, a big skill in learning programming is not getting the answer instantly, it's learning to roll with the blows of problem solving.

It also robs juniors of FOSS contributions. Many FOSS projects use LLMs to fix easier bugs and implement smaller features, which used to be perfect "first timer" contributions. All that's left? The more difficult stuff that LLMs can't do, that are generally better suited for seniors.

The bottom line is: the LLM giants want us addicted and dependent on their heavily subsidized (but unbelievably expensive) slop generators, they want you incapable without them. This way, they can raise an entire generation of developers who can't code without it. Then, they can jack their prices up (which they're already doing), knowing they have a secure pool of customers who can't survive without it.

Us seniors must do better in supporting our junior colleagues to learn their craft. We also need to recognize that they're learning in a brutal, worsening landscape, one that we didn't have to endure. The risk of junior stagnation has never been higher. We owe our juniors the time and effort to build the future of software engineering. If we don't help them, we'll have no seniors to carry quality, dependable software into the future with. Sustainability is key!

What do we do about this?

It's a tricky problem. Bots are harder than ever to differentiate from humans. Maybe more of us should start posting and answering on SO again? But that would require people to ask questions there! I'm tempted to suggest a new StackOverflow... Make it referral only to help avoid DOS by LLM training... But then SEO becomes a problem, as does reach, even though Google is enshittifying anyway. This also raises concerns of accessibility and exclusion of underrepresented groups in software.

My knee jerk reaction (partly because it's so easy and accessible) is blogging about the things we work on and the solutions we've found. If we can't find coding wisdom on boards like SO, then at least we can find it on blogs.

IRCs and Discords are definitely a solution, maybe not the solution, mostly because of SEO. But again, as search engines get worse (unless folk switch to better search engines like Duck Duck Go), for how much longer is SEO a concern? I don't want this to be the case, but I fear we're losing the search-indexable internet as we know it. My biggest problem with IRCs and Discords is their temporality: conversations move at the speed of light, and unanswered questions are quickly buried. It's more effort and time to find solutions to problems, and that's not even mentioning the poor search functionality.

The central theme here is that coding without LLMs today is just harder. Reducing reliance on LLMs will likely cost you on time, but you'll gain skills. But- as community is the antidote to a bot-ridden, human-disconnected internet, human effort and craft is the antidote to LLM-driven slop code bases. Communal, human centered problem solving spaces will save us from LLMs gatekeeping our juniors from seniority.

Sadly, we need an industry wide shift to return to human-driven development again. To recognize that speed isn't everything, that resources for humans to learn this craft are vital and irreplaceable. Until then, learning to code is harder now, so we owe it to each other to lend a human helping hand where we can.