And the real maddening part is that search engines have been so enshitfied to make way for AI that’s wrong like 9/10, so you’re forced to rely on it for answers because if you try google, the snake wraps around and eats it’s own tail giving you an AI answer! 
You gotta use AI like it’s a new guy you’re training at work where every single thing you tell them to do they’ll probably do wrong but you have to pay attention and learn their specific fucked up brain so you can anticipate their path of fuck up
Critical support to the slop generators in telling windows users to break their installs
Here comes a highly controversial opinion.
Let me preface this with I’m anti AI, I wish Iran kept its mouth shut about destroying open’s big facility and just did it. Seeing tech bros get the French revolution treatment would bring a smile to my face. And I avoid using it at all as best I can.
But I hit a breaking point yesterday with a not very popular Metroidvania I got on humble bundle called “kingdom shell”. Great game with glorious atmosphere, but some very poor pacing and a few confusing puzzles. I got through most of them but one of the puzzles had me pulling my non existent hair out.
I tried normal searches, found one fairly comprehensive guide that was no help in this part specifically. I asked Gemini and I’ll be damned if it didn’t actually come up with a good answer.
I know my sample size of n=1 does not a p value of ≤.05 and I’m not changing my mind about using it more now. But in my one very specific instance it was a little help.
I have found LLMs quite disappointing when writing code.
LLMs are useful for learning new libraries and scaffolding starter projects and maybe filling in a simple function body. But I rarely get purely generative output I would consider close to production-ready, even when it compiles or runs without error. To get non garbage at all, you must be very precise and ask it “implement [insert some formal data structure / algorithm / pattern] to do [specific task]” rather than asking it to produce code that does your thing. Even then, I find it more useful to ask for general strategies, related concepts, and some example code that would be useful to implement what I want.
All of this requires a pretty substantial skepticism of the output that people hyping up AI tools are completely lacking. Most people use these tools to avoid the difficult thinking necessary to solve a problem, so why would they put in that same level of thinking required to vet the output? And if you don’t have enough knowledge of a framework, language, library, etc. to use it effectively or read / write the code yourself, you don’t have the knowledge required to vet and maintain code produced by LLMs, let alone put it in production. I’ve had so many instances of LLMs writing code that would require a computer science education to understand why it is a bad idea. Anyone with that knowledge is better off implementing the thing directly instead of figuring out how to message their prompt or torture the output into something good.
LLMs repeatedly producing output you cannot or do not fully understand reenforces the view that your abilities are enhanced by the LLM. This, combined with the imposter syndrome that is rampant amongst devs is going to result in a lot of deferring to uncritically accepting bad code from LLMs.
Soon tons of mediocre devs will be producing mass quantities of code they’re not capable or diligent enough to understand, resulting in huge, lumbering codebases full of bugs and bad design choices. In my career, the most common barrier to implementing anything or moving a project forward has been technical debt. LLMs are going to greatly increase the rate at which technical debt is produced and reduce the ability of people to tackle that technical debt, since they are no longer familiar with the codebase.
This phenomena is why I think LLM code gen is going to be a net productivity drain.
As always, the core problem with LLMs is not that they are frequently incorrect, it is that them being correct often enough lulls humans into foregoing their due diligence, typically in favor of having a proprietary product serve as a substitute for their critical thinking.
This is not unique to programmers, as I now see tons of people citing ChatGPT or Gemini as if they were authoritative sources on anything. We will see the effects of this in all aspects of society.
So many helper functions. All I said was, use a json file to create sql insert statements and have the date in timestamp format, expecting it to use To_timestamp. It created a helper function for parsing each datepart, then another to cast the result into To_timestamp.
I’m absolutely baffled by it as someone who started their college career in computer science before switching majors. I was never the best programmer, yet it seems so ass-backwards to me modern programmers aren’t writing pseudo-code and working things out on paper. I wasn’t in school that long ago. Did things really change that fast? Are people not doing formal logic anymore? Do they even learn binary and hex? Just what the fuck is happening to this field.
My impression is that the people who are most excited about these tools are people like tech journalists and “solopreneurs” (gag), who have been tech adjacent but never formally learned to code and now think that they don’t need software engineers to achieve their vision anymore.
this. llm code is the silver bullet for “idea guys”
I’m imagining a comedy with this dialog…
“Am I a programmer? A lowly programmer? Of course not! I’m an ideas guy.” As the plot unfolds - it turns out the guy has no idea how to do anything. All he does is enter AI prompts and then lie that he has yet another fantastic idea.
I was never the best programmer, yet it seems so ass-backwards to me modern programmers aren’t writing pseudo-code and working things out on paper
Not a programmer, but as someone whose master’s degree is filled with “write 30 pages worth of documentation before starting a project” when you are actually working in the real world, half that shit goes out of the window. So, I can definitely see how a lot of people are not writing pseudocode and instead brute forcing a bunch of things.
I was self-taught programming before I started my college career similarly (also switched majors except I dropped out) and I don’t usually do pseudo-code. I guess I kinda do in my head or write out a plan for how it should work. I also don’t usually do very big projects either. I’ve tried OS dev, but I have a hard time expanding beyond the tutorials on the wiki and keeping things organized and actually working. Mostly now I just write. (switched majors to literary studies)
I never went to school for programming but I’ve worked as a dev for almost a decade. I do know binary, hex, and formal logic, but almost never use them. I’ve never written code on paper, but I’ve written informal flow diagrams on a whiteboard and on excalidraw. And my pseudo code is usually just writing out actual code where the method doesn’t exist yet. But I’ve never written pseudo English out to plan what I was doing. I’ve talked about code in pseudo code speak but mostly when other people are piloting on screen share.
The thing is, our entire field is bad at what we do. For most of the software the cost of error is very low, and for a long time it was a very lucrative field that attracted a lot of people who were really bad at coding. So coding with AI is not significantly different from coding without AI, it’s just that there’s now a much faster, and much less ethically acceptable way of producing code.
50% of developers have less than 5 years of experience and the number of new developers just keeps growing too. We’re a profession of amateurs with companies poaching the oldheads out from underneath each other.
The free models are much worse than the $500 per user/month enterprise ones. I have seen these be able to generate working features first hand at work, and I cannot deny that certain models are capable of implementing features when appropriate requirements are provided. To claim anything else would be to deny what I have seen with my own eyes.
However, therein lies the trap. Just because it is capable of achieving the provided task in one instance, doesn’t mean that it always provides an appropriate answer or solution in all cases.
But those who have initially used it successfully tend to start believing its output uncritically. I’ve noticed this on myself when I tried it at work, and I think this is basic human, heck, even animal condition. You are naturally inclined to trust an entity that initially provides you with beneficial output. You become less critical, as the output often sounds informed and convincing, and in many cases provably works as well (especially when a robust testing framework exists inside the project. its only through unit and integration tests that these AIs can even reliably implement features).
But this leads to an increasing reliance on the tech, and you stop being capable of arguing why the solution it generated works. You have to put in active effort to question what it’s doing, and you have no way of knowing whether it’s telling you the truth or lies, because it has no motive, and researching the facts can take so long that it completely defeats the point of automation. So it ends up being rather self-defeating in many cases, and can leave you less capable of solving problems yourself.
I think the most useful application for it personally is to use it for debugging – feed it a cryptic error message, and it will usually generate an answer that, while not necessarily accurate, can give you more pointers to find the true answer, much better than most search engines can.
I mean deepseek will make you working programs for 20 cents of tokens sometimes if the requirements are straightforward and it’s nothing too exotic.
I have a very close friend who is an engineer for programming(idk what the title is rn) at a very large company.
He says he has managed to keep one or two codebases “AI free” but when I asked if he has to review any AI code he said it’s completely unavoidable and everyone uses it now. He’s proud of the fact that they still require the coder to actually review the AI generated slop before passing it off to him.
It’s bleak
This is such a key point you make—quality of search results and available info to use to solve a problem have degraded so far that you almost have to rely on web search enables AI to do what you used to be able to do on your own, and in both cases now you have to engage a lot of extra effort in trying to discern if the information is at all useful.
And like you say, the situation will only recursively get worse as the two feed on each other further destroying informational value.
People are going to learn about Socialism from these tools. Having websites with easily laid out information debunking the common talking points is more important than ever.
Very much this - I used to rely a lot in tutorials, devlogs etc to learn new patterns etc, but now search is so bad that LLMs are basically the only game in town
If it’s not new tech (never use new libs) just add “before:2022” or such to the search
With coding it’s easier to deceive yourself that the AI is doing a good job. There are tons of tools out there that can detect various kinds of problems in code and the AI can call those tools and change stuff until the warnings go away. So the code might look alright on first glance. Then half the time people don’t even understand the code they wrote themselves so they just look at changes across 50 different files and be like: fuck it, how much do I really care if this company goes up in flames?
Its fine for boilerplate simple programs. However, it will often make mistakes even for those, so you have to know what you are looking at. Still saves time, though idk if the actual energy usage etc., is actually saving you time and money without free money existing.
However, I have seen people write big programs with it and then be surprised that they don’t work. Even more worrying though is when they do work, but then I walk through whoever wrote it and they cannot explain how or why it is working.
Its real engineering logic.
though idk if the actual energy usage etc., is actually saving you time and money without free money existing.
llm end-user energy consumption is pretty low. probably depends on the provider rates and your dev salaries.
Inference is not that cheap. It is cheap when compared with training. Try running LLMs on a laptop and watch how quickly your battery is sucked dry. This is still the case when you have a GPU.
i’m probably using more power to microwave my pasta dinner
Yeah but inference cannot exist without the prohibitively expensive up-front cost of training. And of course the larger the model the more costly the inference. That’s why you read stories like “new trend in SV: pay in tokens.” Opus 4.6 is gonna mop the floor with a 2B param model designed to run on an edge PC, but the cost of getting to the point that it can be used, and actually using it, is still very high.
I’ve used it to create some simple scripts to do some tedious shit that I didn’t feel like coding myself but nothing serious or professional. For example:
“Here is a big file that has a bunch of data in it but I only need points X,Y,Z, formatted in a JSON which I have provided an example of. Write me a simple python script to do that.”
Works okay for that stuff. Always desk check it with edge cases.
LLMs do really well on short bash scripts, but often presume a lot of things about your system that result in having to rewrite it anyway.
Anything that is even remotely a novel problem AI can’t solve. It doesn’t have the training data for your specific problem. At best it’ll do a web crawl for you and summarize its findings.
If you want to really pull your hair out take a look at AGENTS.md or SKILLS.md. State of the art agentic coding practices: glorified README.md files. (the ai frequently doesn’t bother to read them).
I will say one thing nice about LLMs: they are fairly “human” in the sense that they error in familiar ways. In a way AI is automated human error.
The AI is right. Just delete that shit and install freeBSD.
















