site banner

Culture War Roundup for the week of December 16, 2024

This weekly roundup thread is intended for all culture war posts. 'Culture war' is vaguely defined, but it basically means controversial issues that fall along set tribal lines. Arguments over culture war issues generate a lot of heat and little light, and few deeply entrenched people ever change their minds. This thread is for voicing opinions and analyzing the state of the discussion while trying to optimize for light over heat.

Optimistically, we think that engaging with people you disagree with is worth your time, and so is being nice! Pessimistically, there are many dynamics that can lead discussions on Culture War topics to become unproductive. There's a human tendency to divide along tribal lines, praising your ingroup and vilifying your outgroup - and if you think you find it easy to criticize your ingroup, then it may be that your outgroup is not who you think it is. Extremists with opposing positions can feed off each other, highlighting each other's worst points to justify their own angry rhetoric, which becomes in turn a new example of bad behavior for the other side to highlight.

We would like to avoid these negative dynamics. Accordingly, we ask that you do not use this thread for waging the Culture War. Examples of waging the Culture War:

  • Shaming.

  • Attempting to 'build consensus' or enforce ideological conformity.

  • Making sweeping generalizations to vilify a group you dislike.

  • Recruiting for a cause.

  • Posting links that could be summarized as 'Boo outgroup!' Basically, if your content is 'Can you believe what Those People did this week?' then you should either refrain from posting, or do some very patient work to contextualize and/or steel-man the relevant viewpoint.

In general, you should argue to understand, not to win. This thread is not territory to be claimed by one group or another; indeed, the aim is to have many different viewpoints represented here. Thus, we also ask that you follow some guidelines:

  • Speak plainly. Avoid sarcasm and mockery. When disagreeing with someone, state your objections explicitly.

  • Be as precise and charitable as you can. Don't paraphrase unflatteringly.

  • Don't imply that someone said something they did not say, even if you think it follows from what they said.

  • Write like everyone is reading and you want them to be included in the discussion.

On an ad hoc basis, the mods will try to compile a list of the best posts/comments from the previous week, posted in Quality Contribution threads and archived at /r/TheThread. You may nominate a comment for this list by clicking on 'report' at the bottom of the post and typing 'Actually a quality contribution' as the report reason.

5
Jump in the discussion.

No email address required.

they cannot in fact write code well

My brother in Christ, the 174th best coder on Earth is literally an LLM.

What is your theory on why that LLM is not working at OpenAI and creating a better version of itself? Can that only be done by the 173rd best coder on Earth?

... why do you think LLMs are not meaningfully increasing developer productivity ar openai? Lots of developers use copilot. Copilot can use o1.

If his claim was correct, LLM's wouldn't be a tool that help OpenAI developers boost their productivity, LLM's would literally be writing better and better versions of themselves, with no human intervention.

Stackoverflow is better than most programmers at answering any particular programming question, and yet stackoverflow cannot entirely replace development teams, because it cannot do things like "ask clarifying questions to stakeholders and expect that those questions will actually be answered". Similarly, an LLM does not expose the same interface as a human, and does not have the same affordances a human has.

Stackoverflow is better than most programmers at answering any particular programming question, and yet stackoverflow cannot entirely replace development teams

And that's why we don't call Stack Overflow things like "the 175th best coder on Earth".

I expect that "Stack Overflow" (i.e. a chat containing many SO users) could collectively place 175th in most programming competitions, and by that token be "the 175th best coder on earth, as measured by performance on competition-type problems".

Writing code is almost never the hard part of delivering value using code though.

"Several (thousands? tens of thousands?) actual human programmers, working together, could end up ranking as the 175th best coder on Earth" is not exactly a mind blowing take, and changing definitions mid-conversations isn't a productive way to have a conversation.

Writing code is almost never the hard part of delivering value using code though.

Fine, if an LLM was actually the 174th best coder on Earth, and writing code is not the hard part of delivering value through code, we should be seeing LLMs being improved by people with next to no knowledge of programming, using LLMs to assist them.

Fine, if an LLM was actually the 174th best coder on Earth, and writing code is not the hard part of delivering value through code, we should be seeing LLMs being improved by people with next to no knowledge of programming, using LLMs to assist them.

Consider the following argument:

If my Lamborghini was actually the 175th-fastest-accelerating car on Earth, and accelerating to 60mph from a stop is not the slow part of my commute through gridlocked traffic, we should be seeing my commute become much faster because I have a fast-accelerating car.

This argument does not make sense, because accelerating from 0 to 60 is not a meaningful bottleneck on a commute through gridlocked traffic. Similarly, "being able to one-shot extremely tricky self-contained programming problems at 99.9th percentile speed" becoming cheap is not something that alleviates any major bottleneck the big AI labs face.

The basic algorithm underlying LLMs is very simple. Here's GPT-2 inference in 60 lines of not-very-complicated code. The equivalent non-optimized training code is similar in size and complexity. The open-source code that is run in production by inference and training providers is more complicated, but most of that complexity comes from performance improvements, or from compatibility requirements and the software and hardware limitations and quirks that come with those.

The thing about performance on "solve this coding challenge" benchmarks is that coding challenges are tuned such that people have a low success rate at solving them, but most valuable work that people do with code is actually solving problems where the success rate is almost 100%. "Our AI has an 80% solve rate on problems which professionals can only solve 10% of the time" sounds great, but if the AI system only has a 98% solve rate on problems which professionals can solve 99.9% of the time, that will sharply limit the usefulness of that AI system. And that remains true even if the reason that the AI system only has a 98% solve rate is "people don't want to give it access to a credit card so it can set up a test cluster to validate its assumptions".

That limitation is unimportant in some contexts (e.g. writing automated tests where, where if the test passes and covers the code you expect it to test you're probably fine) and absolutely critical in other contexts (e.g. $X0,000,000 frontier model training runs).

Also, alternative snarky answer

we should be seeing LLMs being improved by people with next to no knowledge of programming, using LLMs to assist them.

LLMs derive their ability to do stuff mostly from their training data, not their system architecture. And there are many, many cases of LLMs being used to generate or refine training data. Concretely, when openai pops up their annoying little "which of these two chatgpt responses is better" UI, the user answering that question is improving the LLM without needing any knowledge of programming.

My brother in Christ, the 174th best coder on Earth is literally an LLM.

No, it is ranked as 175th in a specific ranking. That is with access to all analysis, answers of this existing questions. Solving question is distinctively easier if you seen the answer.

Make no mistake, LLM are much better at coding than I would predict 10 years ago. Decade ago I would laugh at anyone predicting such progress, and in fact I mocked any idea of AI generating code that is worth looking at. And trawling internet for such solutions is extremely powerful and useful. And ability to (sometimes) adapt existing code to novel situation still feels like magic.

But it is distinctively worse at handling novel situations and taking any context into account. Much worse than such ranking suggest. Leaving aside all cheating of benchmarks and overfitting and Goodhart's law and all such traps.

If this AI would be really 174th best coder on Earth then they would be already releasing profitable software written by it. Instead, they release PR stuff. I wonder why? Maybe at actual coding it is not so great?

My brother in Christ, up until now (can't speak for this one) LLMs frequently get things wrong (because they don't actually understand anything) and can't learn to do better (because they don't actually understand anything). That's useless. Hell, it's worse than useless - it's actively harmful.

Perhaps this new one has surpassed the limitations of prior models before it, but I have my doubts. And given that people have been completely driven by hype about LLMs and persistently do not even see the shortcomings, saying it's "the 174th best coder on earth" means very little. How do I know that people aren't just giving into hype and using bad metrics to judge the new model just as they did the old?

o3 is approximately equivalent to the #175 best human in competitive programming on CodeForces.

That tweet you linked does not mean what you say it means.

My brother in Christ, the 174th best coder on Earth is literally an LLM.

Competitive programming is something that fits LLM's much better than regular programming. The problems are well defined, short and the internet is filled with examples to learn from. So to say that it equals regular programming is not accurate at all.

Are LLM's decent (and getting better) at regular programming? Yes, especially combined with an experienced programmer dealing with something novel (to the programmer, but not the programming community at large), in roughly the same way (but better) that stackoverflow helps one get up to speed with a topic. In the hands of a novice programmer chaos occurs, which might not be bad if it leads to the programmer learning. But humans are lazy.

Will LLM's replace programmers? Who knows, but given my experience working with them, they struggle with anything that is not well documented on the internet very quickly. Which is sad, because I enjoy programming with them a lot.

Another thing to add is that I think the low hanging fruit is currently being picked dry. First it was increasing training for as long as it scaled (gpt4), then it was run time improvements on the model (have it re-read it's own output and sanity check it, increasing the cost of a query by a lot). I'm sure that there are more improvements on the way but like most 'AI' stuff, the early improvements are usually the easiest. So saying that programming is dead in X amount of years because "lllllook at all this progress!!!" is way too reactive.

Says who? What’s the evidence? I see these claims but they don’t seem backed up by reality. If they are so great, why haven’t we practically fired all coders?