RE: https://neuromatch.social/@jonny/116324676116121930

Incredible thread.

Answered some of my questions about what people think the future will be if everyone codes like this. It seems to be: instead of thinking about constraints of any kind or "what is the most efficient way to do Y or the most readable way to do Z?" answer the question, "what is the most brute force way to perform X if I pretend that there are no resource constraints and nothing needs to make sense as long as I see some sort of test passing? Just ship it with spaghetti code.

@timnitGebru it’s exactly the way people have been building “cloud infrastructure” for ages, it was just a matter of time before programming also became a game of coal-shovelling :(

@timnitGebru Never in my life did I think I'd see software development, a field that's spent decades building best practices and being concerned with security and code quality, destroy itself in a matter of months.

At this point these people might as well be just reading tea leaves, or casting chicken bones on the ground.

@prietschka @timnitGebru The worst part is that those who should care won't because "now I get to play with all my ideas!"
@gwozniak @timnitGebru "Working at higher levels of abstraction" is just some chudly pleading with his chatbot, apparently.
@prietschka @timnitGebru "Will you be my giant WHILE loop? Love ya."

@gwozniak @timnitGebru When you have to plead with your LLM to "pretend you're a superhero," or whatever it is people are doing these days, we've long gone through the looking glass.

We've been at the level of New Age crystal ooga booga nonsense for ages with this technology, it's insane anyone takes any of this seriously. I feel like I live inside an opium hallucination.

@prietschka there are two bubbles, the financial one and the linguistic one.

@prietschka @timnitGebru Nah, this too shall pass. Half the industry runs off down blind alleys every 5-10 years or so, and the rest of us just carry on in spite of the latest bullshit fad.

On the code quality front, too - jesus wept, that's a never-ending uphill battle through a river of shit 😂 These GenAI kiddies will tire themselves out soon enough and we can just quietly plod along, doing a good job and preventing the worst excesses harming our systems.

@brad @timnitGebru I've seen all this too many times, it's why I'm out of the sector.

My guess is the coming Great-Recession-on-steroids-and-PCP crash will wipe a lot of this nonsense away under the weight of much suffering; but, still...I just can't do this anymore.

Maybe the genai kiddos need themselves a 1929-type implosion to understand what suffering is?

@prietschka @brad @timnitGebru I somehow imagine that in that event, a lot of people would find their savings and pension plans vanishing into nothing, while the bankers in charge of it all somehow went up in net worth.

@prietschka @timnitGebru

It's.... been total shit for 20 years. This is just the latest.

@prietschka @timnitGebru

software development, a field that's spent decades building best practices and being concerned with security and code quality

Do not mix "software development", the scientific-or-close-to-it discipline that exists, that has principles, that is taught (often badly, but that's another debate) in schools, with what techbros flood the industry with top-down.

Enterprise coding was never driven by sound software development practices. It was always bullshit. It was always an application of the latest company fads and buzzwords; vibe coding is only the latest one, certainly the most harmful, but not fundamentally different.

The knowledge and skill remains, no matter what these assholes do. It just won't be found in the capitalist world. It never was.

@ska @prietschka @timnitGebru
"We need to wrap it, so we are future proof, what if the library changes?!"

The compiler will tell us, what are you on about?

@ska @prietschka @timnitGebru
"No no no, we can't use that wrapper, it belongs to the other team, what if they change it?!"

@ska @prietschka @timnitGebru The enterprise approach is always focused on delivering a product, and hardware is usually cheaper than optimisation.

If your database is lagging, what's the best solution: Hire a database guru to optimise your configuration and make sure you are using appropriate indexing and query structure, or just whack another quarter-terabyte of RAM in the server?

@Qybat @prietschka @timnitGebru You're this close to understanding that capitalism is the problem

2010: Whee, I'm a software engineer!

2015: Hmm, can I really claim "engineer"? We're not *that* rigorous.

2020: Actually, yeah! Some of this really is engineering!

2026: Never mind. We're a bunch of fucking clowns.

@timnitGebru @jonny it also reads like code if “no humans actually talked to each other or coordinated their work in any way”

As a product (and past project) manager I often tell people that the main job of real programmers is communicating with otber humans. The code is the easy part.

Deciding what the code should (and should not do) and coordinating everyone’s efforts is the hard stuff.

But also how you avoid everyone reinventing (badly) the same functionality and how you avoid crunches

@Rycaut @timnitGebru @jonny My favorite success metric isn't LOC added, but LOC removed. You can't avoid it when working in a team that similar bits of code get created concurrently, so you have to regularly unify that stuff. I enjoy being the cleanup detail.

I was told that LLMs are supposed to be good at that tracking down that stuff, but I guess somebody needs to bother to prompt it to do so?

@gunchleoc @timnitGebru @jonny it’s a good thing to track.

My favorite success metric is a two parter.

We release Friday evening to production .,,.

And the whole team has dinner at home.

(Meaning code pushes to production have become stable and routine that no one has to babysit them and no one has to stay late to resolve failures and problems)

It means both that the dev/test environments are solid & that as a team our processes are working to mean we don’t suddenly release crashes

@Rycaut @timnitGebru @jonny "It's Friday afternoon, let's push to prod"" memes coming in... 😁

I'd still release on a Tuesday, but it does make for a good metric. I like myself a bit of quality in the workplace, and I don't just mean the code.

@gunchleoc @timnitGebru @jonny yes not releasing on Friday's is typically a better pattern, especially if the release needs to be watched over - my point is that when you can push to prod reliably on Fridays and it truly is routine that is an indicator of a lot of good elements in the workplace & teams - it means all the internal systems, developers, QA folks etc are likely working well together.

But yes, also good for some "fun" memes...

@timnitGebru
What I keep seeing in the LLM user space is that it's not just test passing (they don't care about tests) but does it have "product market fit". (Found that lovely term on a pro-LLM blog)

As long as the software gets to X, Y, or, Z; the users don't care about how it works behind the scenes or what the externalities are. It could half-ass work and people will wind up using it anyways (and pay for it even).

Claude Code is a living example of "people will pay money for software that has shit code behind it because it 'works'; Quality, morality and ethics be damned"

@zm @timnitGebru Not really. Claude is wildly subsidized. Nobody would be paying for it if they were charged what it actually costs to run (thousands of dollars a month, not hundreds).

Lots of people also use it because they're forced to. Their employer demands that they do so.

One of the ways to win against the slopagandists is to stop playing their hype games. All of these agentic services are *far* less successful than are claimed.

@zm @timnitGebru "It could half-ass work and people will wind up using it anyways (and pay for it even)." To be fair that's what's been happening ever since Windows came on the scene.
@timnitGebru stricking to see how much of their "programming" of the LLM looks a lot like the "giving instructions for the unpaid intern to do business critical tasks" that is so pervasive everywhere...
@timnitGebru I am deeply honored by the compliment, coming from you :). just trying to do whatever small part i can in this fight against the information oligarchs.
@jonny Truly thank you for your service 🫡

@timnitGebru

"But it's unreadable and unmaintainable!"

"So what? No human needs to read it or maintain it, the AI will do that."

@timnitGebru

We've been here before of course. The above is a description of assembler code generated by a compiler.

@timnitGebru
This is exactly the result I feared when I was asked three years ago (in March 2023) what I think about using LLMs for coding.

My reasoning at the time was the AI models were trained on software code that was already optimized for low labour costs irrespective of efficiency or resource constraints. So, I expected that AI tools will make this even worse.

@timnitGebru I keep thinking "but if it works, does it matter?", and then I remember that yes, yes it does matter.

Shitty code breeds bugs. The shittier the code, the harder it is to find and fix those bugs.

Bugs cost money in the real world.
In the extreme case, lives.

In between is a vast grey zone of data breaches, ID theft, extortion etc, enabled,at least in part, by crappy code.

@kaasbaas
Made worse by the fact that the thing isn't testable in the first place.

@timnitGebru

@timnitGebru

This thread inspired me to make a possibly terrible meme.

@timnitGebru "AI engineering" is an oxymoron.

"Engineering" should file a restraining order against "AI"

@timnitGebru yeah, that sounds about right. Brute force is generally the most expensive way to do anything. It makes sense that AI is the darling of Wall Street.