> The LLM generated writing obviously felt significantly better than my own writing.
A general pattern for LLMs is that they look really good at things you are bad at. What that means is that if you find yourself thinking of its output as significantly better than yours in a particular domain, there's a high chance that you are not equipped to judge that quality effectively.
ryandrake 18 hours ago [-]
> A general pattern for LLMs is that they look really good at things you are bad at.
This is true for coding, too, which I think, to a large degree, might explain the polarized differences in opinions on HN about the quality of LLM-produced code. You have the 1. "AI produces code better than I could possibly write, one shots things it would take me days to do, and has made me 10X more productive!" camp, and you have the 2. "AI constantly produces poor code needing rework, makes mistakes, has to be babysat, and ultimately costs me time!" camp, with a spectrum in between those. How could the output of the same product be seen so differently? Well, I have bad news for camp 1...
OhSoHumble 17 hours ago [-]
I've caught Claude Code generating some pretty egregious security vulnerabilities. I'm using it to build an AI RPG site and the goal is to use web assembly as a bridge between author submitted code and LLMs in order to help shore up state management at the game level.
The language that I picked for the game runtime is Python. Claude really thought that the best way to validate user submitted Python was to bypass the WASM sandbox and execute it within the application container using shell exec - essentially opening up an RCE vulnerability.
I also find that the quality of Claude Code degrades substantially. Claude really wants to implement every feature in as bespoke way as possible. This is fine when you first generate the project but over time you'll find that every web modal is implemented differently. Every button is different. Business logic is disconnected. It's why agentically produced codebases are MUCH larger than they should be; every feature is developed in a vacuum.
Then I'm trying to shove stuff in my AGENTS.md or CLAUDE.md files like "ALWAYS look for existing patterns within the codebase to keep it consistent." But the harness doesn't always work and it'll generate useless, verbose code anyways.
In some cases it's useful - like if I am shaky on the DSA knowledge needed for a specific operation or optimization then Claude can replace Stackoverflow. But, man, I'm so frustrated with it.
kybernetikos 17 hours ago [-]
I think there are some factors beyond just skill too - the kinds of tasks you're giving the AI, and how involved you are in ensuring the output is good (via either extensive planning guidance, extensive review/testing, or a combination).
kiba 17 hours ago [-]
I used LLM to teach me how to code and get through obstacles that would have me spending a lot of time doing ???. Typically, I just write code that I know a lot of time is absolutely wrong but the LLM helpfully point out mistakes.
I am slowly doing more of my own code and cutting out the LLM out of the loop in the unfamiliar territory I am working in.
My main concern is not so much productivity but understanding the code I have written and feeling agency over it.
The LLM is a very good teacher.
onion2k 17 hours ago [-]
Well, I have bad news for camp 1..
It's bad if they work in a part of the industry where code quality or efficiency matters. That's maybe 10% of the total though.
overgard 13 hours ago [-]
I think it matters everywhere -- just because some fields get away with making trash doesn't mean that they're not vulnerable to people taking their lunch by making something distinctly-not-trash. People put up with a lot when there's lock-in, but there's a breaking point. (I say now using a linux desktop about 90% of the time now because windows has become such a fucking disaster)
LoganDark 13 hours ago [-]
Being vulnerable makes money unfortunately. And making money now has always been seen as more important than being sustainable in the long-term. Even if an exploit later takes away every cent of earnings.
geraneum 11 hours ago [-]
I see this sentiment occasionally brought up, and at the same time see what’s happening to Github where the majority of their distributions is not security or efficiency related (not saying it’s because of LLMs, we don’t know). The point is, these things matter beyond beautiful code. You loose trust and you lose customers and money.
pydry 17 hours ago [-]
Companies that don't care about code quality always care about the side effects of poor code quality. They just can't connect the dots.
otabdeveloper4 9 hours ago [-]
Are you seriously implying that technical debt is something that doesn't exist or something that managers don't care about??
YZF 10 hours ago [-]
I disagree this is the source of the polarization. Maybe it's part of it.
I have been coding since about 1983 or so. I shipped high quality products that have been used by millions of people. From embedded software to desktop applications to distributed systems.
I don't think I'm in the "don't understand what code should look like camp" (I mean you never know but the evidence seems to show that I do know what I'm doing). I use AI as a tool and it helps me be more productive. I don't "one shot things that would take me days to do". I use it to help me automate things that I could do manually where it is faster and more effective. I review every step and if I don't like something I adjust. There are some specific situations where it basically does as good a job as I would do in running some experiments, doing some analysis or writing some small amount of code. I still know what the changes need to look like broadly, where to make them, and what patterns to follow. It just automates the work and sometimes does have some additional insight that can complement my views. Unlike me it is all knowing about everything in terms of access to "knowledge". It knows all the details of how a certain runtime manages memory, Linux internals and various open source software. I could go look it up myself (which I'd do before AI) but I don't hold it all in my head like AI basically does. It is also "all knowing" in the code base I work in (more so than me, it's a huge code base, I have an outline and a high level picture in my head but not every single code line) where again I can dive into the code but it helps me extract the relevant information faster.
I think the polarization is more on the how you use the tool, what situations you use the tool for, which domain are you operating in (languages, applications etc.). You can also one-shot simple tools and helpers that are not the production software which is another way to accelerate your workflow.
ruszki 10 hours ago [-]
I’ve seen people coding for 4 decades, thinking the same as you about themselves, and were bad coders. Unfortunately, nobody can tell you whether you’re good or bad without seeing your code. Your claims means nothing on the internet.
lukan 7 hours ago [-]
What about the buisness side of things that does not care for shiny code, but shipping things to make money?
That simple arcade game (without in game transactions) needs to be fun, that website that needs to attract visitors (but not sell them anything or handle sensitive data)?
They don't care about abstract code quality, they care if it works and useful.
So a good coder here means he or she could get to working results according to what the client wants fast. And those things likely make up the vast majority of written code. So no wonder AI gets adopted as it is a powerful tool here to be even faster.
Not all code runs in airplanes, handles financial transaction or sensitive user data - for this you need the best code possible and nothing vibe coded or quick and dirty hacks.
And oh wonder, it is possible to combine both. Because yes, websites often include financial transactions nowdays, but that part can and should be handled with care. People who move slow and check things. And then those who are quick to build things on top of it.
But I strongly object to dividing programmers absolutely in good and bad programmers, when the field is so big and the requirements not the same.
Some optimize in speed, some in quality. And yes, some are just bad in both. And some can do both - but they are very rare, in my experience.
ted_bunny 3 hours ago [-]
That's why they mentioned that their software was successful, it wasn't intended as idle bragging.
overgard 13 hours ago [-]
Yup, pretty much.
The hard part too is it's not like you can just learn the basics and be able to tell good code apart from bad -- the more you learn to code, the more intricate your understanding of good code is. It's like becoming a good writer; just knowing grammar and spelling doesn't make your writing interesting. Not to mention that there's just a lot of bad advice out there that you can't recognize as bad advice if you're not a regular practitioner. Like, "Clean Code" is IMO a terrible book, but a ton of people follow it because it has the sheen of respectability.. until, hopefully, they learn some new patterns and realize those old ones aren't very good. But you pick these things up with experience and doing the work! Otherwise if you're just reading other peoples opinions, you'll see a bunch of people say "Clean Code is great" and a bunch of other people say it's rubbish, and you'll have no way to know who you should listen to. (If you disagree with me on Clean Code the book that's fine -- I'm just using it to make a point -- sub in a different book/ideology if it suits you)
I think looking at an LLM code and thinking you're now a coder is like watching a someone play guitar and think you can just pick up a guitar and play a song. The truth is, if you want to be good, you have to do the work.
One of the things I hate about AI is that we're going to have a generation of "programmers" that are absolutely shit at programming, create problems for everyone else, and will have absolutely no idea how bad they are. And they'll probably never get better, because you can't get better by just asking claude to do shit for you. And then the LLMs themselves will probably start to degrade because they'll be trained on the slop since it'll heavily outnumber handwritten code..
yuye 11 hours ago [-]
>I think looking at an LLM code and thinking you're now a coder is like watching a someone play guitar and think you can just pick up a guitar and play a song. The truth is, if you want to be good, you have to do the work.
So many posts here on HN claiming they created another useful tool with AI.
No, you didn't create it. AI did. You only had a supporting role. You're Ringo Starr and the AI is John Lennon.
palmotea 9 hours ago [-]
> No, you didn't create it. AI did. You only had a supporting role. You're Ringo Starr and the AI is John Lennon.
It's even worse than that: you're the Ringo Starr and the AI is a a "John Lennon" who sucks and is boring and uncreative.
ninjalanternshk 5 hours ago [-]
> No, you didn't create it. AI did.
No, AI assembled bits of code written by hundreds of programmers before you.
sebastianmestre 5 hours ago [-]
Is this really a split that exists?
In my case I see Claude produce code much worse than I would, but it's certainly much quicker and, even after reworking, it makes me finish tasks in less time.
wzdd 10 hours ago [-]
It really depends. If you're cranking out prototypes or testing ideas, it's genuinely great. But if you're familiar with the code it's very easy to spot its (many) mistakes. It's Gell-Mann amnesia.
Then again, I just caught Claude writing setTransparent(!opaque == false), opaque being a bool, on a purely vibecoded project. Which was pretty impressive. ("• You're right, that's nonsense.")
theshrike79 6 hours ago [-]
The difference between prose, art and code is that we can define "good code" with deterministic tools. Not perfectly, but to a large degree.
koonsolo 10 hours ago [-]
I'm in camp 3, where sometimes I don't really care how good or bad the code is. For internal tools for example, you can let the LLM crunch out code really fast, you can validate output but don't even have to look at the code. These kind of "weekend projects" can get finished in an hour or two, and so are really 10x.
For bigger production ready code, you indeed have to guard the architecture. But for the code, in some corners you can get away with sloppy code, as long as it kind of works.
What I'm saying is, code doesn't always has to be great. You will just have to judge the places where it needs to be high quality, and other places where you can get away with sloppy code.
zero_bias 6 hours ago [-]
That judgment is an essential skill of an experienced programmer, and it is required at every level of the big picture, from high level architecture decisions to the development of particular features: what should I polish and what needs to be developed fast? How exactly should I cut corners in the safest way?
So there are still only two camps
fluidcruft 17 hours ago [-]
There's a third camp between these extremes who is like "goddamn it just type this shit out for me so I don't have to do it myself".
timacles 16 hours ago [-]
Definitely the space I'm in, where I know exactly what I need, exactly how to implement it, just saves time typing 100s of lines.
skydhash 14 hours ago [-]
If you’re typing 100s of lines, you’re already doing it wrong. My most used operation is completion, just before copy-paste. The reason I like vim is that it makes such operation so fast. And the reason I like emacs is that it has superpowered version of those operations.
slopinthebag 16 hours ago [-]
Yes, the third camp and probably the most effective is to do a decent amount of writing yourself and use the LLMs as codegen machines, but where the DSL is natural language. Deepseek v4 flash is an incredible model for this, you can actually get into flow state as you write code and then delegate boring code to the magic autocompletion machine to autocomplete.
6 hours ago [-]
skydhash 14 hours ago [-]
The better workflow, and I think the one adopted by people in the second group, is to take a step back from coding, do a bit of thinking about the domain, design a better abstraction for the problem (architecture, data structure, algorithms), and then write the small amount of code you probably need.
Code should grow according to need, not for its own sake. Start small, use it in the real world, and then improve it.
tempest_ 17 hours ago [-]
It isnt though.
The industry largely has selected for camp 1 long ago.
If you don't get immediate negative feedback camp 1 can go quite a ways before problems surface.
bitwize 16 hours ago [-]
Camp 1 is winning because we did it. We built an artificial brain. Frontier models can think, reason, and produce code better than the average human programmer. (You have not met many actual programmers slaving away on enterprise code bases if you do not understand that this is the case; the self-selecting HN crowd does not represent the profession as a whole by a long shot.) It's just a matter of, how committed are you (is your organization) to really learning and leveraging the tools?
soulofmischief 15 hours ago [-]
LLMs can generate code, but the quality of the code at scale is just not there currently by all important metrics such as security, maintainability, separation of concerns, etc.
Today, it's a kind of chaos magic wherein you summon the beast and try your best to contain him, knowing that someone will probably die in the process. Sometimes literally. It's still a force multiplier in the right hands and domain, and agentic coding is a paradigm that won't retract, at least until something better supplants it.
The problem is that few engineers actually have the discipline available to constrain these models appropriately and instead rely on a hodgepodge network of "skills" aka prompt fragments which are passed around and glued together.
I consider myself as having such discipline, being strongly architecturally-minded, user-first, etc. in both design and implementation. And I still struggle to contain the beast many days. I just got through screaming at Claude for intentionally taking a shortcut that I'd forbidden, leading to a ton of wasted time and tokens.
Sometimes I feel like I saved weeks of R&D with a single ten-minute task handed off to an agent, other times I feel like I'd get better returns playing slots in Vegas at the alarming rate Claude burns through money.
tstrimple 8 hours ago [-]
I'm tired as fuck of anti-ai zealots pretending like every human is a fucking paragon at programming. I've literally never seen Claude Code produce as bad of code as generated by humans. Literally never. Yet the anti-ai zealots pretend like humans never introduce a bug into a system. Only LLMs produce slop or take shortcuts or ignore tests or do incredibly dumb fucking shit. It's fucking ridiculous. As if The Daily WTF didn't exist before LLMs. The reality is the "average" programmer is far below the skill floor of Claude Code or other frontier models. Those models will write test and explore more edge cases than the "average" developer ever will. But all these zealots pretend like they have only ever worked with the top 1% of the top 1% who never make mistakes or introduce bugs. Ultimately they are full of shit. You're lucky as fuck if your developers can even tell you what common design patterns are. The bar is that low and the HN crowd likes to pretend every developer is Linus Torvalds and not a clueless moron desperately coordinating API layers.
MrScruff 7 hours ago [-]
I’d probably word it differently but I agree with much of the sentiment here. I’m also reminded of the stat where 93% of drivers rated themselves as above average.
soulofmischief 7 hours ago [-]
Is this comment directed at me? Where did you get an anti-AI sentiment from my comment?
observationist 17 hours ago [-]
I, for one, welcome our new AI overlords. They provide me with only the finest Gell-Mann amnesia, straight from the tap.
petesergeant 6 hours ago [-]
I think this is a straw man.
> the polarized differences in opinions on HN about the quality of LLM-produced code
Are there strong differences of opinion about the quality? I've seen very few people claim that LLMs write better code than they do.
> one shots things it would take me days to do, and has made me 10X more productive
This is an entirely different claim from the former, and you're conflating them.
The boost from LLM-assisted code isn't _expertise_, it's the power of having an always-on team of reasonable junior developers from every discipline you can possibly imagine willing to do your whim.
Take for example Jesse Vincent / obra[0], who is an exceptional developer, with great taste, and a stack of well-received open-source software to his name. He posts a lot on how he's being made more productive by AI-assisted development. Do you have bad news for him about the quality of his work...?
Eric S. Raymond has basically stopped writing code by hand altogether. He consistently delivers high quality code without intervening to fix the LLM's output himself, much faster than he would have been able to alone. This is very bad news for camp 2 because it means one of three things:
1) he is extraordinarily lucky
2) he is extraordinary brilliant at manipulating LLMs
3) you really are "holding it wrong" and you are hobbling yourself with your failure to properly learn the tools
The first two seem rather unlikely.
saghm 15 hours ago [-]
I'm very confused by this logic. Why should I care about his output compared to what I observe from the larger group if he's not an outlier, and if he is an outlier, why would the second one be unlikely? The only way I can make sense of this is if you're claiming that he's both an exceptional coder and that skill in coding by hand is completely uncorrelated to skill in using LLMs to code, and it's not clear to me why that would be more likely than either or both of those being false.
floren 16 hours ago [-]
"Better and faster than ESR" is not a particularly high bar to clear.
NoGravitas 1 hours ago [-]
If ESR is consistently delivering high quality code now, it would be a first.
AlexCoventry 15 hours ago [-]
I'd need to see some transcripts of his conversations with coding agents, to believe this.
overgard 13 hours ago [-]
Being nerd-famous does not mean one is a good coder.
slopinthebag 16 hours ago [-]
4) ESR is in the first group (most likely option)
15 hours ago [-]
saaaaaam 16 hours ago [-]
I partly write words for a living. Claude is really really bad at writing prose that doesn’t make me want to vomit.
I rarely write code, and only once for a living. But I feel like I’m a superhuman and one step away from being a zillionaire when Claude gives me a bunch of code it has written in seconds. I WILL CHANGE THE WORLD!!
And then I remember that Claude can’t write words that don’t make me want to break things and I’m good at writing words but bad at writing code.
So then I delete the code and go back to doing more profitable things than being the next zuckerfuck.
ninjalanternshk 5 hours ago [-]
I’ll take “what is Dunning–Kruger” for $200 Alex.
flatline 18 hours ago [-]
I don't disagree about the probability, but the current frontier models are not completely useless for writing even in areas where I have significant knowledge. I would not have said that a year ago. You have to watch them like a hawk -- they are good at spitting out plausible sounding nonsense that is hard even for an expert to discern. But the dice roll going on behind the scenes is continually more biased towards being correct/useful than not.
Aperocky 18 hours ago [-]
On factual things, potentially. But if I want to read your writing, wouldn't I be trying to pick your brain? Otherwise why don't I read wikipedia or usage documentation?
dvt 19 hours ago [-]
Honestly, I can't fathom thinking that LLM writing is even remotely passable. People that think this should honestly read more. One book a month is hardly an aspirational goal. You don't even have to read Melville or Hemingway or Chaucer or Shakespeare, just pick up any popular NYT best seller, and it'll be significantly better than anything an LLM can generate.
torginus 17 hours ago [-]
I haven't used these things for writing recreationally for a while (since the Claude 3.X days), so my opinions might be outdated - but they definitely weren't bad - after all they had a huge library of witticisms to pull from, and like Stable Diffusion that pulls from master artists, so do LLMs from skilled writers. Pro writers did come up with an absolute dearth of interesting ideas, and there are mountains of skillfully written prose out there - and its all in the training data, and AI is quite good at pulling from it.
The advantage of the writing vs images, is that it takes longer to absorb the whole with text, so its less apparent that the whole thing doesn't quite come together.
My problems was with Claude's prose and ideas is that it kept recycling the tropes and phrases after a while - something that has been observed that these models have very strong statistical biases - when asking for a random number for example, LLMs are far more predictable than even humans, this shows up in unguided writing exercises.
But as for actually crafting text that is both terse and to the point - such as oneliner explanations, or writing summaries - these models are quite bad. The best I have seen is they could turn a given length of prose into an even longer version - with generally some loss in the tonal accuracy or the points made in there.
As such they are a terrible tool for professional communication, but unfortunately, lots of people have started using them for exactly that.
Applejinx 6 hours ago [-]
Um. Perhaps 'pro writers did come up with an absolute crapload of interesting ideas' would be better writing than 'dearth', which means scarcity and famine?
I get that it sounds clever but that's the damn problem!
chungusamongus 9 hours ago [-]
This is just the last domain people can desperately cling to because style is totally subjective.
lurquer 11 hours ago [-]
Depends on the type of writing. Blogs and the like? LLM generates prose that, to me anyway. is unbearable.
However, in fiction I’ve found it a useful collaborator. There have been more than a few occasions when, given some notes of how I want a character’s arc to develop in a particular scene, that the LLM gives some excellent pointers and ‘new’ ideas I hadn’t considered.
As far as editing my prose, I use it as a ‘thesaurus of phrases.’ When lazy, I can give it a rough sketch of the paragraph, giving it the gist of what I want, and have it generate a dozen or so versions. I usually can find nuggets of good phrases therein that are useable… much as I would refer to Roget’s to find a more precise word.
That said, one has to resist tbe temptation of using a chunk of generated text verbatim; no matter how good it sounds in isolation, the repetitive grammatical structure and other LLM-smells add up quick and become nauseatingly obvious if used frequently.
In any case, I think LLM’s get a bad wrap for writing… when used correctly, it is incredibly useful. And, it’s tiresome to hear pretentious snobs assume that an author who uses LLM simply lacks the taste to appreciate how bad the prose sounds. Not true in all cases.
xienze 18 hours ago [-]
> I can't fathom thinking that LLM writing is even remotely passable. People that think this should honestly read more.
This makes me think you're only exposing yourself to high quality writing online and from an intelligent circle of friends and coworkers. The average person's reading and writing abilities are _atrocious_ and only getting worse. We're almost at the point where kids are communicating through abbreviations and emojis exclusively. LLM prose is significantly better than what the average person can produce.
xtracto 18 hours ago [-]
Someone way more eloquent than me should write a column titled "Why do we read?"
Way back in the past (around 30 years ago) I remember reading an article on "how to read a book" or a similar subject. They argued that, you should not skip the acknowledgments, preface and other "personal" related sections of a book, because it was there where you got a glimpse of the person that was writing the book. The idea being that, you should had in mind that the person writing was explaining something through you.
Carl Sagan even has a video where he argues Books/Writing is some sort of communication through time.
Now, this has been the case historically: A person writes some text (even in botched language like my writing, as English is not my first language) with thinking that someone else in the future will read the ideas and reason about them.
But what about text written by an LLM? Does it have inherent intention? When reading LLM text, it feels like looking at those "this is not a person" photos. Yeah, they are words, yeah they form sentences and paragraphs but... they lack "soul".
devin 18 hours ago [-]
It's not "Why do we read?" but something related that is coming up a lot in my thinking lately is Walter J. Ong's "Writing is a Technology that Restructures Human Thought".
avador 17 hours ago [-]
Isn’t “Writing is a Technology that Restructures Human Thought” another way of saying that “feedback has an effect”?
If so, this seems to be a trivial (still worthy) assertion.
For example, I intend to, say, construct a shed. I make mistakes that I only see because I actually constructed. I revise future endeavours involving sheds.
I admit to not having read this piece, and am merely reacting to the title.
—-
Okay, I got through the first paragraph of Walter’s writings. While I nod to the bitterness (I assent to the existence of it), I do not bow.
fcarraldo 16 hours ago [-]
Do you think the first paragraph is enough of a basis to form an opinion from?
avador 15 hours ago [-]
Not normally, no. Can you point to a divergence of the bitterness in the subsequent text?
What I find to be the normal pattern (by intuition) is that the condensed leading text belies the expansive following text. This is likely lazy (a shortcut) and I am open to correction at your effort. If a call to your effort (I apologize) is unpalatable then I concede.
cortesoft 16 hours ago [-]
> Way back in the past (around 30 years ago) I remember reading an article on "how to read a book" or a similar subject. They argued that, you should not skip the acknowledgments, preface and other "personal" related sections of a book, because it was there where you got a glimpse of the person that was writing the book. The idea being that, you should had in mind that the person writing was explaining something through you
Maybe? That is one reason to read, but there are a lot of other reasons, too. It doesn't mean you are doing it wrong if you want to read something and don't care at all about the person who wrote it.
customguy 13 hours ago [-]
Yeah, but when we talk about food, there are different tastes, and there is stuff like "you can also use it as a doorstop". Fine, but that doesn't make a doorstop food.
sublinear 18 hours ago [-]
Are we also saying it's acceptable to feed people junk because it's better than what they would cook?
At some point you're just making bad excuses for false scarcity.
cryzinger 18 hours ago [-]
I think it's both true that most LLM writing ("writing") sucks and that it's better than what a lot of people can produce unassisted. Which to me doesn't mean that we should roll over and accept LLM output as a lesser evil... it just means that the bar is so low it might as well be in hell, and rapidly getting lower :')
TheOtherHobbes 6 hours ago [-]
It's nowhere close to good writing, but it's better than the dreck many self-published writers produce and sell - successfully.
But that's the real problem with LLMs. Culture is aspirational. It has a consistent goal - find the best, highlight it and distribute it so others can build on it.
LLMs are the opposite - produce as much of everything as possible at the lowest possible barely-acceptable-if-you're-lucky quality.
This was already a problem before LLMs. Mass market content farms - Kindle Unlimited, Wattpad, Spotify, social media in general - give everyone an equal voice, with mass popularity and "likes" as the only metric.
Now LLMs are automating the creation process, so everyone gets more of everything.
Except inspiration. Not so much of the "That's astounding, I wonder if I can learn from that and reach for something in that league."
dspillett 18 hours ago [-]
They weren't saying it is aceptable, or making excuses, just stating how things are. Average reading and writing abilities seem to be dropping noticeably in many circles. Probably as a consequence of falling attention spans rather than an issue in is own right.
solumunus 18 hours ago [-]
It’s acceptable for someone to buy a ready meal or takeout if it’s better than what they can cook. Why wouldn’t it be? Is that the greatest choice for their personal development? Probably not, but life is complex and folk have limited capability and bandwidth for acquiring skills.
xienze 18 hours ago [-]
Tell me your thoughts on the quality of LLM-generated code. I've never understood this attitude where people are absolutely disgusted by the slightest whiff of AI prose but will happily slurp up AI-generated code by the bucketful and proudly proclaim that it's OK because it's better than the average developer can produce.
dvt 18 hours ago [-]
The key difference is that code is not the end product, but writing is itself the product. (No one's doing "vibe-product-management" for example.) Tbh, I still think code can have a beauty and elegance to it (like a logical proof can, or like a mathematical theorem can), but there's a difference between the two and I'm way less forgiving of AI writing than I am of AI code, especially considering most code (by line count) is just boilerplate anyway.
ryandrake 17 hours ago [-]
> The key difference is that code is not the end product
I think this is open to debate. To me, the code has always been the goal, and the fact that writing it sometimes serves to produce a product is important to others (and what brings the paychecks in), but ultimately not something I've ever been excited about or interested in throughout my career. So I judge a developer based on the beauty and quality of the code he produces, just as I judge an LLM by the same sorts of things.
The fact that AI can one-shot a working CRUD app is not really that interesting to me. If it could make the code beautiful, concise, maintainable, extensible, minimal, performant, readable, and bug-free: a work of art and love that a craftsman would be proud of... that would impress me.
dvt 17 hours ago [-]
Imo, this is like saying "I judge a carpenter based on how straight they can cut a piece of plywood." Or like saying "I judge an artist on how accurately they can draw a circle by hand."
I mean that's certainly one way of looking at it, and both can be impressive technical feats. But most people judge carpenters and artists on their end products, their overall vision, their motifs, their philosophy, and so on. On the other hand, as a trained logician, I definitely see proofs (which, by the Curry–Howard isomorphism, are computer programs) have some degree of beauty-within-themselves, but that's quite hard to achieve. Not everyone is a Gödel, after all.
I also think programming languages, despite being Turing complete (which is frankly not saying much), are far too limiting to truly construct magnificent things with.
seba_dos1 16 hours ago [-]
No, it's more like saying "I judge an artist on my terms regardless of how well they sell on the market".
> artists on their end products, their overall vision, their motifs, their philosophy, and so on
The main output of programmer's work is their understanding of the system they work with, the rest comes from that. Behind the code there's its author's intention, vision, their tastes, philosophy and experience that makes them tackle problems in specific ways. Code review is, aside of quality assurance, mostly about communication between people, convincing them to your ways of doing things (or getting convinced by others) and communicating needs. It's what keeps projects running and what makes people improve their skills.
You don't need to see magnificence in code to realize that there's more to it than just the syntax tree to compile.
dvt 16 hours ago [-]
> No, it's more like saying "I judge an artist on my terms regardless of how well they sell on the market".
I feel like I need to push back here, because some of the best programmers around: Carmack, Torvalds, Johnathan Blow, even folks that make programming languages like K&R, Rob Pike, etc. are judged on their respective end products, not on minutia found in code reviews. For example, if I asked you "why do you think Stroustrup is a good programmer?"—you wouldn't cite some obscure optimization he came up with, but would rather talk about his overall vision for C++, his ideas of evolving C, his staunch anti-GC takes over the years (and their justification), etc.
seba_dos1 16 hours ago [-]
You're contradicting yourself. First you say that they're judged on the end product, then you mention things that are very clearly not end products but thoughts and visions behind them that only lead to end products.
Frankly, I have no real idea of how good Carmack, Torvalds or Blow are as programmers, I have never worked with them so I don't really have a way to tell (even though I do contribute to Linux and I've seen some of their code). They're likely past a certain above-average threshold, but they haven't got famous for their programming skills.
That said, if you think Torvalds isn't being judged on "minutia found in code reviews", I'm not sure your take is very serious in the first place - that's the main thing he was being judged on for decades now :)
dvt 15 hours ago [-]
> You're contradicting yourself
How?
> you mention things that are very clearly not end products but thoughts and visions behind them that only lead to end products
Thoughts and visions are much more closely intertwined with end products (in fact, likely supercede them) than some random code review is, so I'm not seeing where the contradiction lies.
> that's the main thing he was being judged on for decades now
Linus hasn't written any code[1] in at least half a decade+. To argue that he's being judged on his code misunderstands why Linux became so popular to begin with.
Either I'm bad at communicating today or you're bad at reading, because you're now using my points, so I'm not sure what to make out of it. Let me repeat myself then:
> Code review is (...) mostly about communication between people, convincing them to your ways of doing things (or getting convinced by others) and communicating needs. It's what keeps projects running and what makes people improve their skills.
The way he does that is exactly what most news stories about Torvalds have been focusing on for many years now. In practice, unless you run a project alone, code review is where thoughts and visions surface up the most. Or, well, should be - not everyone is good at it.
(that said, even though my point is that's he's obviously not being judged on his code, you can easily find code that he wrote as late as this month, so your statement is clearly wrong even if that doesn't really influence the discussion here - code review is still the vast majority of his job, just like he stated there under your link)
dvt 13 hours ago [-]
> Either I'm bad at communicating today or you're bad at reading
Could be both :)
The way I look at it is like this, and you could call this my thesis: I do not categorically think that code in itself is primarily relevant to us looking at a "software engineer" and saying "wow, she's good." The product (the Linux kernel, in Torvalds' case) is, on the other hand, what actually matters. I think we're getting caught up on the idea of a code review; a code review can serve many purposes, as a code review is basically just people talking about the code, the product, their feelings, and so on. Sure, sometimes it's like "this `i` should be a `j`", but other times it's "this should serve feature X, not feature Y."
Overall, I don't think Torvalds is judged by his code quality. And the snippet I cited is the man himself saying "I don't write code anymore" so I took that at face value, even though my conviction stands wether or not he actually does still write code. I don't think anyone actually cared that much about his code quality (maybe with the caveat that the kernel didn't crash).
PS: I could be totally wrong, and this is an interesting & stimulating conversation, regardless.
ryandrake 2 hours ago [-]
What I'm trying to get at is more like: I judge a carpenter based on how beautiful, minimal, and functional he makes a chest of drawers, not based on how quickly he can go to market with particle board and glue."
sublinear 18 hours ago [-]
I'm not sure if your question is serious, but I've been a developer for over a decade now.
I write code for a living mostly by hand. In the odd case where I need help I still use google like I always have. I spend more of my time in meetings or staring at the ceiling than writing code. This was also true a decade ago before LLMs. It was also true several decades ago when someone else's ass was in my seat.
ryandrake 17 hours ago [-]
...or read.
At least in the USA: 21% of adults in the US are illiterate in 2024. 54% of adults have a literacy below a 6th-grade level [1].
Hasn't this always been an intelligence thing? I think across all societies and eras we find that generally a a rather alarmingly large section of population is unable to grasp basic written instructions - and that section usually increases to the majority of people, when we start getting into things like an employment contract, or mortgage document.
gchamonlive 18 hours ago [-]
Really hard to take your comment serious when the only post on dvt.name is a hello world page, because at least OP is trying to publish and you are lacking moral high ground to judge him thinking LLM writing is good.
jvanderbot 18 hours ago [-]
Oh if I had a nickle for every web domain I bought and put a hello-world.html into s3 and never checked again ...
FWIW, I'm with GP. It's quite easy to get just mind-numbingly tired reading beyond the first two sentences of a typical LLM output, let alone on something I'm familiar with.
gchamonlive 18 hours ago [-]
It's on dvt about page in HN, so hardly something hidden. People are different, and in the blog post itself the author writes that in time he became tired of the way LLM wtites
jvanderbot 18 hours ago [-]
I'm trying to playfully divert away from the captious and unhelpful comment, but if you want to double down, that's ok too. Cheers, my dude, have a good Thursday.
gchamonlive 17 hours ago [-]
Sure whatever, why even bother commenting if you didn't want to engage then. I don't owe you anything just because you were trying to cheerfully diverge.
Same to you though, have a nice day
dvt 18 hours ago [-]
Lol my blog was hacked recently and I've been lazy about moving my backed-up mySQL DB to the new WP installation. Not sure where moral high ground enters the picture. If I really wanted to be an asshole, I'd cite a book I co-wrote and another I edited.
gchamonlive 18 hours ago [-]
> Honestly, I can't fathom thinking that LLM writing is even remotely passable. People that think this should honestly read more.
How do you think the author of the page would read this? That sounded pretty asshole-like for me. If it's not for you I'm really sorry for you, you must have to endure really screwed up people.
dvt 17 hours ago [-]
Maybe you're right and I was a bit too snarky, apologies to the author if he/she was offended. Writing anything implies some vulnerability, and criticism should be constructive.
gchamonlive 17 hours ago [-]
I know, and we've all been there. It's comfortable to criticize, only when I had a very divisive publication hit front page that I've seen how hurtful dismissive or sarcastic comments can be (https://news.ycombinator.com/item?id=45277346)
And sorry about your blog :/ didn't know it was hacked. Looking at the comment section of the hello world though it gets pretty obvious LOL. You should consider removing it from your HN about though.
dropbox_miner 10 hours ago [-]
> A general pattern for LLMs is that they look really good at things you are bad at.
Naah I disagree with this. I think LLM's are good at gas-lighting you into thinking that good writing only comes in one flavor. And LLMs prefer a very "textbook/technical-manual" coded flavor of writing because maybe that way they are more useful to us humans. But human writing is not just about crafting the most elegant sentences. Sometimes great writing is just this doggo-drawing meme:
You can triangulate. Ask it the same thing in different ways and with different LLMs. Operate in domains where the output is verifiable, like in the sciences but in terms of numerical computing. Study the output, graph it, learn it, reason with it, rinse, and repeat until your mental model makes practical sense.
MrScruff 7 hours ago [-]
This is true, but what is also true is that with each new generation of models (and not just for code generation) it becomes less and less true.
svelle 6 hours ago [-]
IMO LLM writing hasn't significantly improved since maybe GPT4.
It still does the exact same "It's not x, it's actually y" tropes and many of the other common LLM smells.
Most LLM generated text is immediately discernible as such.
MrScruff 6 hours ago [-]
You can avoid the smells with a prompt. I have a benchmark involving short story writing within specific styles and the level of sophistication achievable is increasing over time, in my opinion.
userbinator 12 hours ago [-]
That's because LLM output is "average"; so if you're below, it will obviously look better than what you can do, and vice-versa. It will be interesting to see what happens when current LLM output becomes the bottom, as everyone worse has pulled themselves up to that level.
byzantinegene 13 hours ago [-]
the other day there was a hackernews comment about ai-generated music, and this poster claimed that a friend generated ai music and got as much enjoyment as actual ones composed by musicians. I suppose this falls under the same camp..
cortesoft 16 hours ago [-]
So what does this mean in practice, though?
Let's say you are correct.
You ask an LLM to write something for you, and to you it looks really, really good. So based on your conjecture, that means I am not a very good writer.
Ok, but how does that change what I should do? If I am not a very good writer, that means an LLM IS actually better than me, even if it might not be objectively good to an expert writer.
My two choices are to keep producing my own crappy writing, or use an LLM to create better (but not great) writing.
Wouldn't it make sense to use an LLM?
It seems to me your premise leads you to the same conclusion you would reach even if your premise was false; if me thinking an LLM is good at a task means I am very bad at that task, I am probably better off having an LLM do it. On the other hand, if you are wrong, and I think an LLM is good at something because it actually IS good at that thing, then I should also use the LLM to do the task.
Either way, the LLM is better than me at the thing.
soledades 16 hours ago [-]
Well, no. The LLM is just better than you in a narrow band that appears wider to someone below than above.
From above, or from below with adequate exposure, it feels facile and hollow. It is good at weaving grammatical structures. It is not good at thinking in words in a way that invites a fellow human along for the journey. Because it doesn't think.
soneca 16 hours ago [-]
Well, practice to get better at writing (and, therefore, judging writing) yourself. It seems obvious. Your skills are not frozen in time and set in stone.
overgard 13 hours ago [-]
Well, the third choice is to develop as a person and become better at writing. Which you do by doing some crappy writing and learning from it.
mrob 15 hours ago [-]
>If I am not a very good writer, that means an LLM IS actually better than me
If you're not a very good writer, I'll at least skim your work to see if it contains any good ideas. If it's slop, I'll just close the tab. You already told me it's not worth caring about, so I'll agree with your decision.
slopinthebag 16 hours ago [-]
> My two choices are to keep producing my own crappy writing, or use an LLM to create better (but not great) writing
Are you also an LLM or do you have the capacity to learn and grow?
saghm 15 hours ago [-]
I mean, you have the ability to learn to do stuff better to a certain extent, so it's not like your only choices are "suffer through the writing I'm capable of producing today for the rest of my life" or "give up on ever writing anything myself". Writing stuff yourself is pretty much a requirement of getting better at it, and arguably even if you do intend to use LLMs to supplement it, having a better baseline will be valuable for additional iteration with the LLM.
skydhash 19 hours ago [-]
I dabble in drawing and I find LLM images (and maybe some non LLM one) abhorrent. As for why, the reason I can think of are: no consistency (perspective, small details, and color theory) and too much details making it a visual noise. In most painting, the artist will have a subject that is most detailed (to draw the eyes) and from there, the lost of details will follow some kind of logic. This is how you pinpoint what the artist is most interested in. LLM looks like a filter applied to a montage of pictures.
gchamonlive 18 hours ago [-]
It's like a gross looking slice of pizza, it's mindbending because at first it looks good, after all it's pizza, but something in it makes it really disgusting
embedding-shape 16 hours ago [-]
Maybe we're looking at different pizza slices, but all I see is bread, tomato sauce and cheese, and it all looks delicious.
> What that means is that if you find yourself thinking of its output as significantly better than yours in a particular domain, there's a high chance that you are not equipped to judge that quality effectively.
This is why code generation is a disaster waiting to happen. Hunderds of thousands of "programmers" with no idea of what they are pushing to production.
bell-cot 19 hours ago [-]
Mnemonic: geLL-Mann amnesia effect
robgibbons 16 hours ago [-]
Cuts very close to the Dunning-Kruger effect.
NoboruWataya 15 hours ago [-]
It's basically just another instance of Gell-Mann Amnesia. Ask an LLM to discuss a topic you are an expert on, and you will realise it is full of errors, but ask it to discuss a topic you know nothing about and you will, mysteriously, assume it is very intelligent and correct.
spdustin 18 hours ago [-]
- “(The) honest caveat:” (or “genuine caveat:”, both with the colon)
- “(The) honest answer:” (again, with colon)
- “The thing to internalize:”
- “The smoking gun:”
(really, sentences that start with “The <tag suggesting the next clause is the key point>:” are a strong tell, but those four are the most prolific)
- “load bearing” (when not talking about architecture)
- “blast radius” (when not talking about actual explosives, but rather the effect of an event/action)
- “smoke test” (esp. when “sanity check” is more apropos)
- Lists of three clauses/adjectives where the third is really just a combination of the first two
- Referring to the “shape” of things figuratively
- Social media posts that end with “Curious if anyone…”
- Stories or anecdotes using. “Oh. Oh.” (where the second “oh” is italicized)
Edit: Yes, some of those last ones are terms that we often use as devs...but I would argue about the actual frequency of their use. Plus, these tells live on in prose generated by the latest models.
srik 18 hours ago [-]
These LLM idioms are constantly being consumed every day and are bound to make it into the next, if not current, generation's vernacular. It's going to be unbearable.
thewebguyd 18 hours ago [-]
> I would argue about the actual frequency of their use
Assuming you mean load bearing & blast radius, I'd see those used and use them myself very frequently pre LLM, mostly in online discussions though so its telling where they got their training data. Load bearing itself is/was a pretty normal phrase in the ops world in daily discussion.
Smoke test though, I can't say I've ever see irl usage.
palmotea 8 hours ago [-]
> Smoke test though, I can't say I've ever see irl usage.
We use it all the time at my employer, and have for decades. They're basic tests to tell you if the app is up or not.
Like: you go to this page, and it shows a big green banner if the app can connect to the database and its disk isn't full. If one of those basic things are wrong you get big red banner or you can't load the page at all.
Barbing 18 hours ago [-]
Heard smoke test IRL & was confused to see it used indeed in place of “sanity check”. Weird.
tempest_ 17 hours ago [-]
I have heard people use smoke test but not nearly at the same rate an LLM uses.
If a repo is bare of CLAUDE.md but mentions a smoke test in a commit in the last year I assume it to be LLM written.
ses1984 14 hours ago [-]
At my last two jobs, smoke tests were a common topic of conversation.
tom_ 15 hours ago [-]
Can't remember when I first heard it, but I searched my email and got a pile of results from 2012 and 2009. It's possible there's earlier in there somewhere but 2009 was a busy year so I got bored of clicking the "more results" button...
ethin 15 hours ago [-]
I think I've only read "smoke test" in a programming book (or maybe an OSDev wiki) but I can't remember now
The funniest one I've seen with regularity is belt-and-suspenders/belt-and-braces, when I've never seen anyone ever use that term. I had to tell AI to stop using it, it was just annoying.
ninjalanternshk 5 hours ago [-]
I frequently use “belt-and-suspenders” — probably not in wri… crap I just used an em dash.
jedbrooke 17 hours ago [-]
for me the most annoying one is “escape hatch”.
Everything is an escape hatch, try catch is an escape hatch, a cli flag is an escape hatch. It makes no sense, and quickly ended up in my “banned words and phrases” md file
ffsm8 11 hours ago [-]
Huh, we have a process which has several exit criteria - which are pretty expensive to calculate with multiple rest calls to get through each...
I've always called them exit hatches, entirely unrelated to llms...
Now I wonder if I need to reword the docs... But realistically speaking, llms are the only readers of them nowadays, so I guess it doesn't matter.
spiffistan 16 hours ago [-]
These seem mostly like Claudeisms. I feel each model (and even generation) has their own set of these isms.
unshavedyak 16 hours ago [-]
Which seems logical - if they were somehow consistent between all LLMs i'd be even more curious how LLMs are... crab-evolving to 'isms, but hopefully that's not the case hah. (i say crab-evolving in jest)
sznio 4 hours ago [-]
I use qwen3.5 locally and it often outputs a lot of claude-isms. Claude actually stopped telling me that I'm absolutely right with every message, but Qwen still does.
I think that the convergence of these tics is just a symptom of distillation.
Applejinx 6 hours ago [-]
That's the gremlin to keep an eye on ;)
chantepierre 6 hours ago [-]
I routinely use "load bearing" in conversations and writing, both seriously and ironically (like a "load bearing just" or "load bearing paint").. maybe I should stop.
strogonoff 6 hours ago [-]
Considering that LLMs output continuously becomes more human-sounding (by design), you’d either have to continuously run what you write through various detectors and keep changing it or you must resign to inevitably be called an LLM at some point.
Simultaneously, because humans subconsciously mimic what we see, we also converge to sound more LLM-ish.
The harsh reality is that no matter what you write and how much research you put into it—especially if you try to be legible to others and not make grammatical mistakes—someone could discount all that and claim you just prompted an LLM. If they want, they can always find some magic “AI checker” that will return a high enough probability. We all know that with a good enough prompt and with round-trip validation against a checker (there are definitely products with this all built in) it will avoid the common tells, it’s just the matter of a few extra tokens.
It’s somewhat demotivating.
Derbasti 10 hours ago [-]
I wonder, could we use these catch phrases to track down what data was used dor training? They must have occurred in abundance in some training corpus. Perhaps some specific company's email culture?
raincole 9 hours ago [-]
> They must
Nope. LLMs are RLHF'ed to the brim.
srigbok157 9 hours ago [-]
[flagged]
dash2 8 hours ago [-]
Codex seems to love threading things through things. I don't usually know what it means, but it sounds clever.
sdthjbvuiiijbb 14 hours ago [-]
The ones that annoy me the most, which are very widespread, are the clickbaity one-weird-trick style ones:
"what really Xes"
"is genuinely X"
"that actually Xes"
"is/makes/does/etc a real X"
The real/genuine/actual cluster of words are wildly overused.
cheesecompiler 16 hours ago [-]
I hear "Substrate" a LOT.
triyambakam 17 hours ago [-]
- Ending something with "happy to ..." (usually "happy to help")
- And a variant of the above is omitting the subject, "happy to" instead of "I am happy to"
- Codex refers to "the spine" of something
- Claude often says some decision is "locked" (i.e. decided on)
palmotea 9 hours ago [-]
- The [utterly mundane thing] was decisive.
globular-toast 8 hours ago [-]
This stuff reminds me of the classic writing style guide Plain Words by Gowers which advises against all of the above nonsense. I absolutely hate the magazine writing style that LLMs seem to love to regurgitate. It's even worse when it's used not for entertainment but for actually conveying information.
tptacek 18 hours ago [-]
The LLM writing sameness is bad. Use LLMs to help your writing! But don't include a word they generate, even just a vocabulary adjustment, in your own output. Have them critique structure and flow, spot overused words and passive constructions and dumb picks for topic sentences. It's great for that, and those are all objective improvements in your writing that won't mess up your style.
The LLM sameness in web design is good. Most sites shouldn't try to be idiosyncratic. The best design for a site with real utility is legibility, and LLMs are better at that than the median developer. Always laying out the same buttons? Always using the same type scales? Good! If it looks good to you, you weren't going to do better on your own, and you were very likely to do worse.
bobmarleybiceps 16 hours ago [-]
I've been using claude while trying to setup a new personal site. It's very nice to be able to say "I want a nice looking menu with links to other pages" and it spits out something good enough.
I would feel very weird using LLMs for writing, except for filing out stupid applications. I've had collaborators use LLMs for some technical writing and it's pretty much always borderline nonsense that has the aesthetic of something correct. For creative writing, I feel like heavily using an LLM would defeat the purpose :shrug:
joegibbs 14 hours ago [-]
My problem with LLM web design is that it adds a lot of useless stuff all over the place. GPT-5.x is particularly bad for this. If it makes e.g. a dashboard it includes a ton of figures and bits of text all over the place that mostly just say the same thing twice. But of course this is not really an innate problem with the architecture and will probably be sorted out soon, and you'll get good results if you come up with all the copy first and then ask it to make the site.
nottorp 9 hours ago [-]
> The LLM sameness in web design is good.
I'd say that sameness isn't good either from a LLM or solo founder SaaS #171876137.
nicbou 9 hours ago [-]
I use them as a metaphor search and advanced dictionary. Every word is mine, but I get to improve my English and use some lesser-known (to me) expressions.
I have not used to review my writing yet. Is it that good?
devin 17 hours ago [-]
Absolutely agree. I recently wrote a speech and can't imagine how terribly hack it would have been had I taken the LLM's words as my own. I have second hand embarrassment just thinking about someone writing something important for or about a loved one and using the saccharine crap that was suggested at various points to me. Absolute drivel and a giant flag that you don't actually care enough about the audience to bring your own words.
sofixa 17 hours ago [-]
> The LLM sameness in web design is good. Most sites shouldn't try to be idiosyncratic. The best design for a site with real utility is legibility, and LLMs are better at that than the median developer. Always laying out the same buttons? Always using the same type scales? Good! If it looks good to you, you weren't going to do better on your own, and you were very likely to do worse.
See, I disagree. Having seen plenty of Claude generated websites and slide decks, to me it just screams "no effort whatsoever". AI sloppypasta for content, if you will.
If I can see within a few seconds that your website or slide was obviously AI generated, I will doubt its content, how much effort (if any) you've put into it, if it won't have hallucinations, and (especially for websites) if it's even real or a scam farm.
I'm not saying every website has to be unique, but at least tell your prompt to use a font or colour scheme or something specific to you that will make it seem like you've put in some effort and make the result stand out from the slop.
adamdb 17 hours ago [-]
I'm going to play devil's advocate, who cares if it all looks generally the same? I grew up before everyone had dial-up, and I remember back then, when Web surfing on Netscape Navigator, all the websites also had a similar structure. Homogeneity in this context, to me, signals a design system that works best in the moment.
ulrikrasmussen 12 hours ago [-]
Uniqueness is a costly signal in a sea of information that is all calling for your attention. It signals that you as an author have spent real time on your web page to make it yours.
embedding-shape 16 hours ago [-]
> who cares if it all looks generally the same?
Maybe here lies the crux; for some of us, the web and by extension the internet is about expression and individuality in a way, but all together all accessible by everyone. Everything looking the same instead looks conformist, and ultimately boring, which I guess is what many of us don't want day after day. We want new ideas, presented by the person/group who came up with it, in the way they would express it. The LLM kind of trashes the parts that add up to something interesting.
tptacek 16 hours ago [-]
If you're doing art, do art. Nobody's stopping you. If you're trying to solve a problem for other people, be legible. Legibility and individual expression are goals in tension.
embedding-shape 15 hours ago [-]
I'm not saying replace the entire thing with a flash animation or something drastically "artsy", just yours.
tptacek 14 hours ago [-]
Colors? Sure, within reason. Layouts? No, bad. Unless you really know what you’re doing and why.
sofixa 4 hours ago [-]
> who cares if it all looks generally the same?
It's not just about being the same, in which case the worst is that it has less to stand out with.
It's about looking the same as the other AI generated slops out there, which is a strong signal that the content is probably AI slop too, which doesn't merit time being spent on it and trying to understand if it's slop or a human that just used AI generated UI.
tptacek 17 hours ago [-]
This has been a bugbear of mine (and many other people) since long before the advent of LLMs. It is not an intrinsically virtuous thing for a web design to be "effortful". Some of the most well-regarded UX systems in the industry are defined by rigorous sameness. If the baseline is good, departing from it is as likely to reduce legibility as increase it.
refactor_master 11 hours ago [-]
Before LLM you could sum up the web as the hamburger menu, bootstrap and materialize. Even Apple threw everything in a hamburger at some point.
sofixa 4 hours ago [-]
Yes, but not everyone used the same colour scheme with the exact same box designs, highlight visuals, etc. etc.
tptacek 2 hours ago [-]
Right, it totally wasn't the case that half the sites on the Internet were vanilla Bootstrap.
metadat 17 hours ago [-]
Don't forget about Contrastive Negation:
> Contrastive negation is a rhetorical structure that denies a specific idea in the first half of a sentence and asserts an alternative in the second half.
> It typically follows an "It’s not X, it’s Y" or "not just X, but Y" formula.
As someone who’s writing gets flagged as AI a lot, I appreciate the opening disclaimer section.
And I especially appreciate the idea that these patterns aren’t the problem. Don’t just fix the patterns. The problem is they point to hastily or carelessly written content.
furyofantares 16 hours ago [-]
That's in the post
7 hours ago [-]
amelius 7 hours ago [-]
How long until LLMs are taught to avoid the patterns in that wiki page?
n42 19 hours ago [-]
No ___, no ____. Just _____
or using "honest" to describe an approach.
knollimar 18 hours ago [-]
Honest, straight, genuine, actual, real are all words that paper over a weak claim to me. Im thinking about a hook that injects a subagent fact checking in an "are you sure" style here because it's so bad.
Also the false not X it's Y is used in a similar way for faux distinctions like a sov cit claiming "it's not driving, it's traveling in a car"
GrinningFool 18 hours ago [-]
Jab, jab, thrust is how I think about that pattern. Or tap tap whack, if you prefer. And it shows up for for positives too:
"Smooth. Effortless. A perfect fit for your needs".
In any style of informal or persuasive writing this shows up , as if it has to drive the point in.
I kind of wish we'd stop talking openly about what the tells are. It's nice to be able to determine with fair accuracy - but it couldn't last forever.
rmellow 9 hours ago [-]
Ironically, your entire post can be read as such, almost perfectly!
Labeling each sentence (J)ab and (T)hrust, and using colon ":" to indicate arguments, one gets:
```
J: J. J. T.
J: "J. J. T".
T: T.
T: J. J. T.
```
Barbing 18 hours ago [-]
> I kind of wish we'd stop talking openly about what the tells are.
Least this way it’s out in the open perhaps, since enough users have training enabled labs will naturally learn what annoys us.
Had the same thought though
left-struck 12 hours ago [-]
Yeah, I think in this case, pointing out what’s obviously llm is genuinely useful since it will lead to more diversity in websites and a better tool. I mean I don’t usually care if a website is LLM generated as long as the copy is human written
cootsnuck 16 hours ago [-]
I call it "I'm not like other girls" writing.
ares623 15 hours ago [-]
Imagine a world where everyone talks like an Apple product page.
userbinator 12 hours ago [-]
I think that's been a tired marketing trope for many years before LLMs, and they just picked it up from the training data.
overgard 13 hours ago [-]
Don't forget the uncomfortable truth
Hfuffzehn 18 hours ago [-]
The interesting thing for me is that I do not feel like the writing of LLMs has improved very much lately stylistically.
They have reached a "good" level some time ago but the newer models havn't brought such improvements that you would prefer them to an expert human writer.
Will be interesting if that holds in other areas when chasing super intelligence.
kylemaxwell 18 hours ago [-]
At this point, I want somebody's raw(ish) writing, with spelling errors and grammar mistakes and whatever, at least when it comes to most writing: blog posts, Slack messages, etc. LLMs are great for helping generate ideas, writing code, and maybe even cleaning up some writing, but doing the writing overall? Please don't. I want to hear what you have to say, not what the AI says, if it's something along those lines.
OkayPhysicist 16 hours ago [-]
The way I phrase it: If you can't be assed to write it, there is zero reason for anyone to want to read it.
chatmasta 15 hours ago [-]
If you have Claude at work and are willing to point it to your emails, ask it to “read all my sent emails and create a skill to draft an email in my voice.” Even if you don’t want to use the skill, it’s fun to read the skill file it creates. It’s a bizarre feeling, asking Claude “who am I?”
I haven’t tried it with Slack messages because I’m a little scared to read what it says, haha. But the same concept surely applies.
There are a few people at work who are aggressively using Claude to write Slack messages. It’s easy for me to tell because one day they’re writing barely coherent English in multiple messages, and the next they’re sending perfectly coherent prose in a single message.
It's my daily driver, so I kind of twitched a bit saying that list in here. I never noticed because I was using it anyway, I guess.
paddycorr 2 hours ago [-]
I've been letting typos and punctuation errors slide in my communication so that its clear that its a human that drafted the message. Almost typing faster to encourage them.
renyicircle 4 hours ago [-]
> Humans trust symmetry because it feels like intelligence made visible
I hope this one didn't make it into the author's math blog. I don't understand what this means. I don't "trust" symmetry, I never think of symmetry as having to do with "intelligence". How did it even come up with that.
1970-01-01 18 hours ago [-]
The LLM doesn't smell like authentic writing but it does a great job for fast and cheap words. We've gained something similar to fast food. Words made very cheap, very fast, easily digestible, but they have no emotion. In short stints it does have a place in the world.
NicuCalcea 16 hours ago [-]
To me, it's more like prison loaf [0] than fast food. It contains the basic information it was intended to convey, but in a very bland, irritating shape. At least fast food gives you a dopamine hit that I certainly don't get from AI writing.
Like corporate manager-type emails, of which I get AI generated ones frequently from company ownership. They think LLMs are the best thing since sliced bread.
It's taken corpo-speak to an entirely new level. On the plus side I no longer have to read them, and can just have AI reply on my behalf with more fast food.
singingtoday 15 hours ago [-]
Which is fine too me; I never read those emails anyways...
david_shi 13 hours ago [-]
I've found double and triple negations ("Not this. Not that. Not that either.") instead of just removing stuff to be one of the clearest tells.
minikomi 16 hours ago [-]
<somebody> just <did something>.
And it changes everything.
Is my favorite linkedin-ism. Wish LinkedIn had a regex block option.
left-struck 12 hours ago [-]
Just don’t read anything on there, don’t need regex for that.
docheinestages 19 hours ago [-]
You are right to push back.
eapriv 7 hours ago [-]
> Late last year I started writing a math blog and decided to use LLMs to polish/enhance my writing.
Why would you do that in the first place? If you are just starting writing about math, I assume your goal would be to get better at it, and using LLMs is not how you get better at writing.
Sammi 4 hours ago [-]
This is a big fat "it depends". It depends on how you use the llm. You can use the llm to write your homework or you can use the llm as a teaching assistant to help you learn. Different people choose different paths.
I grew up seeing this very relevant image on the wall of my grandparents:
I personally wonder if the writing (and coding) smells are being leveraged for watermarking/steganography. Like, if it's quirky but intentional; they're biding the time, leaving breadcrumbs so they can more effectively sift new internet content, or perhaps tracing/de-anonymizing.
I can also see how it is not necessarily the case, since all models seem plagued by having unique cliche patterns. We all seem to experience the writing smells from the same models. I see 'cleanly' a lot less from GPT 5.5 vs <5.4
nijave 18 hours ago [-]
> :black_circle_for_record: Smoking gun.
> "belt and suspenders"
kivikakk 17 hours ago [-]
Or “belt-and-braces”. What the fuck.
dvt 19 hours ago [-]
It's kind of interesting how genuinely hard it is to get models to deviate from basically all of these tropes. You can straight up tell it "I hate that card design, do something different, get creative!" and it'll do something either (a) ugly as sin (clearly just essentially a random walk through parameters) or (b) some same-y derivation of that card.
In coding, I've noticed a few tropes as well: everything is a "contract" or an "artifact" (clearly trained on like three decades of Java lol), everything is constantly "backwards-compatible" or "versioned" (even if working on a brand new greenfield project), and a few others.
jkdufair 19 hours ago [-]
If claude says "load bearing" once more, I think I'll vomit.
dieselgate 18 hours ago [-]
That's a funny one. I don't use LLMs at all but "load bearing" is such a common/over-used internet joke for DIY building projects and stuff like "load bearing caulk". Have never heard it in a software sense really so am slightly perplexed
thewebguyd 18 hours ago [-]
> Have never heard it in a software sense really so am slightly perplexed
It's been used in an ops context for a long time, pre LLM even. Same with "blast radius" has been a cybersecurity term for as long as I can remember.
dvt 18 hours ago [-]
Hah, ChatGPT constantly says "that's real" or "less about X, more about Y."
topaz0 13 hours ago [-]
You could stop using it first I suppose
nottorp 9 hours ago [-]
> I hate that card design, do something different, get creative!
It can't get creative, it can only generate based of what's a majority in it's training data.
throwatdem12311 17 hours ago [-]
I’d rather they not deviate so I know right away that I can stop reading something because it’s slop.
overgard 13 hours ago [-]
It's funny, I've noticed my own writing has been getting a lot sloppier the past couple years just so that my writing doesn't get mistaken for AI. I actually used to use "--" pretty much all the time when I was young (granted I didn't go full em-dash, just the ascii version). It does make me kind of sad though, because writing in really short sentences (as one example) is actually a great way to make your writing easier to digest.
rldjbpin 7 hours ago [-]
these stochastic models just replicate what they see in training data. the reddit speak, american english stuff (some through osmosis in pop culture), etc. makes sense when stepping back a bit. but some of these do happen to be from the people based on whom we train everything, and it is interesting when they get in the crossfire from the content perfumer.
also, how come jetbrain mono has become one of these tells is insane to me!
offaxis 16 hours ago [-]
To be honest, I often feel that AI writes better than I do. Since AI drafts drafts quickly, my work speed has increased by about 80% compared to before.
ray__ 17 hours ago [-]
I wonder if the tendency to write short punchy sentences stems from deliberate RL efforts to avoid repetitive, consistent writing? I seem to remember that a critique of early LLMs was that they would produce sentences whose construction was too homogeneous. Would be interesting to know the answer to this.
SL61 16 hours ago [-]
One I've noticed, and it might just be Claude, is putting "The" in front of titles and headers. Its documentation will have one section after another with headers like "The Architecture", "The Caveats", "The Fixes".
rlorenzo 15 hours ago [-]
For designs, try https://impeccable.style/slop/ to detect AI slop patterns and improve your designs. I found it helpful for critiquing designs, developing a DESIGN.md guide, and iterating on UIs.
dropbox_miner 9 hours ago [-]
whoa this is really good
newer_vienna 18 hours ago [-]
I don't think I've met anyone who uses the word "genuinely" as much as Claude does.
singingtoday 15 hours ago [-]
I genuinely agree. Unironically.
danielodievich 19 hours ago [-]
All of those are included in the bulk of the documents passing my work input these days. It is infuriating. Out of principle I maintain 100% me in all my writing but I don't know if it matters. Well maybe it does... an interviewee recently complimented me on the "nicest and most human resume" they saw recently. That felt good
exe34 19 hours ago [-]
Do you send your resume to people before you interview them?
danielodievich 17 hours ago [-]
I meant interviewer. Sorry!
antoineMoPa 18 hours ago [-]
Abusing the words "canonical" and "normalized".
topaz0 13 hours ago [-]
New York is the Ljubljana of America
thoughtpeddler 16 hours ago [-]
Does anyone else use the 'smells' as a sort of 'game' to ensure you properly go through a given LLM output (of any kind, be it document, presentation, code, etc) and 'make it your own' by eliminating them? I have a high bar for sharing content so I always do a rigorous pass to eliminate the em dashes, the contrastive negations, the 'quietly', and any other extraneous verbosity, and find that it helps me just really thoroughly polish it up.
perching_aix 16 hours ago [-]
This reminds me to a video essay I saw a few months back. Guy explained that one of the metrics he evaluates game quality with, is how much the game manages to hide its game engine.
I think it makes a lot of sense, it's essentially an inversion. Another related thing I recall is hearing game creators talk in terms of "gimmicks" and "scenarios". Anything that gives a structure, a framework to operate within, I'd say is always useful. This is much the same.
usually the LLM will match against the style in the context, even if the words ask it to do otherwise. since your skill sounds like an LLM wrote it, I would be surprised if it didn't make things worse.
sorta like asking an LLM to get more creative with a visual design, that also never works.
NicuCalcea 16 hours ago [-]
I'm not sure to what extent an AI-generated skill will help the AI sound less like an AI.
eieiyo 5 hours ago [-]
That's quietly the most important part.
saaaaaam 16 hours ago [-]
Claude is currently and suddenly obsessed with describing anything a little bit involved as being “inside baseball”.
Last month it was quiet things being said out loud.
When you use the tools all the time it’s fun to watch these things pop up a week or so later as normies copy and paste the slop out on LinkedIn and their newsletters.
zkmon 10 hours ago [-]
I think we should stop discriminating or the pursuit of detecting LLM-generated content. This is not helping to stop the slop, it causing a harm - making the genuine human-generated content being branded as something bad. It's like branding words like "segregation, black/white" as racist. It is hijacking the common a language patterns and make them unusable in common human expression.
dropbox_miner 9 hours ago [-]
I support this. There is a mass psychological effect emerging out of this AI-content-witch-hunt where people are manufacturing "flaws" to beat the AI-slop allegations.
To list out a few personal examples:
1. Several students I knew at GaTech in 2024 taking the algorithm class (which is notoriously hard) started submitting assignments with sub-optimal/brute-force algorithms cuz the TAs kept reporting them for academic misconduct on optimal solutions.
2. I've started avoiding "em-dashes" in all my writing
3. Junior engineers leaving "typos" in their code reviews or submitting code-reviews with absolutely 0 comments (LLMs love to leave verbose comments)
Gotta stop shaming people for using AI fr
zkmon 7 hours ago [-]
People are being forced to express in suboptimal ways, just to avoid being detected as slop. Some others are instructing AI to inject some typos or write grammatically incorrect sentences. The whole "hey I detected that you have used AI" is so childish. It is same as "hey I knew that you used a car to get here, instead of walking". Ok, I will drive my car at walking speed and maybe replace it wheels with legs.
newer_vienna 18 hours ago [-]
Thank you, these are all things I've noticed too.
mil22 19 hours ago [-]
Those cards, so familiar! Exactly what Opus produced for me.
Did Anthropic and/or OpenAI deliberately train their models to produce websites with a specific design language, or did these stylistic preferences emerge naturally as some kind of LLM-selected optimum?
input_sh 18 hours ago [-]
It's not the base model, it's the system prompt in dev tools.
To give an example I'm personally frequently annoyed by, Google's Antigravity will consistently use the word "anthropomorphic" while "thinking" and the end result will consistently have obnoxiously large border radius (kind of like Android's design language).
Codex on the other hand likes to make websites with blue elements on a black background and likes to use emojis for icons for some reason, which is a terrible idea accessibility-wise.
jochem9 18 hours ago [-]
AI has no taste, so I suspect the labs just gave it a bunch of decent looking boilerplate as preferred style.
When you bring your own ideas you can get AI to dev pretty nice looking non-generic stuff.
manoDev 19 hours ago [-]
Welcome to the future of fast-food software. Taste of deep frying and preservatives.
debo_ 7 hours ago [-]
SmeLLMs
barrkel 18 hours ago [-]
Quietly. Clean. Honest. Sharp take.
tomrod 15 hours ago [-]
Moar! I want all the smells!
/endredditmode
I actually love folks documenting this. I'm all for LLMs producing rough drafts. But rough drafts are, as a rule, slop.
ramon156 8 hours ago [-]
Can we have a Wikipedia entry for these? per model? I wouldn't mind using this page for that
akomtu 11 hours ago [-]
That's an interesting difference between true intelligence and its LLM imitation. If you throw a pile of mediocre data at LLM, its level will drop to mediocrity, for it can't discern true from false, good from bad. However if you throw the same data at an expert human, he will ignore it, and maybe pick a few bits of novel knowledge, so overall his level will raise a bit.
reliablereason 17 hours ago [-]
"A is not B instead A is blah blah" instead of just saying "A" is a very common pattern have seen in Claude.
It is strange to read as the topic A has often not been introduced and introducing it by saying what it is not makes very little sense to a new reader.
viccis 17 hours ago [-]
One Python one I hate is that it adds crazy amounts of newlines for no real readability gains.
Instead of this:
def add_three_ints(x: int, y: int, z: int) -> int:
return x + y + z
it will write:
def add_three_ints(
x: int,
y: int,
x: int,
):
return x + y + z
While it's always preferable to do this when you get either long or complex function signatures, Opus 4.7 and GPT 5.5 do this everywhere. When you combine it with their penchant for writing helper functions for everything, you get a ton of vertical padding that messes up the readability imo because Python really relies on your eye seeing indents for scope.
duckmysick 7 hours ago [-]
A code formatter like Black can handle that. It's there to enforce a single code style no matter what the contributors use, whether they are human or AI.
tomjakubowski 17 hours ago [-]
The second way produces more billable output tokens. Worse, when you feed that code back into the LLM service, the extra whitespace counts as input tokens.
torginus 17 hours ago [-]
an LF is 1 character, just like a space. Its just looks bigger to our puny human brains.
fragmede 17 hours ago [-]
That's for diffing gains later.
If you have to add arguments, when they're on one line like that, the diff is cleaner, so the reviewer has an easier time kf understanding what's going on. That is, if you still have a human reviewing code, that is.
TacticalCoder 18 hours ago [-]
So the year is 2026 and we cannot point a LLM at, say, this HN thread, and give it the instructions: "I don't want to look like a dumbass, so don't make these obvious mistakes / don't use these obvious tells"!?
agos 9 hours ago [-]
This for me is one of the greatest cognitive dissonance moments with LLMs: on one hand we have the proposition “LLMs will do everything, take your job, automate anything that can be automated, produce novel research, lead humankind to a golden age” and other hand we have “no way to make it not sound like a guy who just learned this two sentences”.
singingtoday 15 hours ago [-]
You caught me. I do basically this for Reddit threads to "un ai" some of my projects.
Kind of works.
dionian 19 hours ago [-]
KPI cards,
purple gradients
poszlem 18 hours ago [-]
What I find amazing is how HARD it is to make the LLM produce a piece of text that does not sound like slop. I have had dozens of sessions where I tried to make it write like a human would, and yet it still uses those tired writing phrases. I don't understand why neither openai, nor anthropic are able to do anything to make it better, and in some cases it feels like we are actually going backwards.
Noumenon72 17 hours ago [-]
Alan Turing poisoned the context in ways we can't comprehend and all LLMs are bound by his dead hand.
singingtoday 15 hours ago [-]
wat
david_shi 13 hours ago [-]
"That holds."
ravirdp 1 hours ago [-]
[flagged]
sspoisk 5 hours ago [-]
[flagged]
stanleydupreez 12 hours ago [-]
[flagged]
stanleydupreez 17 hours ago [-]
[flagged]
eddysir 11 hours ago [-]
[flagged]
sid0707 16 hours ago [-]
[flagged]
wanoir 15 hours ago [-]
[dead]
nikhilpareek13 18 hours ago [-]
[dead]
willyv3 18 hours ago [-]
[flagged]
speak_plainly 18 hours ago [-]
I came here for the performative anti-AI intellectualism and was not disappointed.
Rendered at 15:39:00 GMT+0000 (Coordinated Universal Time) with Vercel.
A general pattern for LLMs is that they look really good at things you are bad at. What that means is that if you find yourself thinking of its output as significantly better than yours in a particular domain, there's a high chance that you are not equipped to judge that quality effectively.
This is true for coding, too, which I think, to a large degree, might explain the polarized differences in opinions on HN about the quality of LLM-produced code. You have the 1. "AI produces code better than I could possibly write, one shots things it would take me days to do, and has made me 10X more productive!" camp, and you have the 2. "AI constantly produces poor code needing rework, makes mistakes, has to be babysat, and ultimately costs me time!" camp, with a spectrum in between those. How could the output of the same product be seen so differently? Well, I have bad news for camp 1...
The language that I picked for the game runtime is Python. Claude really thought that the best way to validate user submitted Python was to bypass the WASM sandbox and execute it within the application container using shell exec - essentially opening up an RCE vulnerability.
I also find that the quality of Claude Code degrades substantially. Claude really wants to implement every feature in as bespoke way as possible. This is fine when you first generate the project but over time you'll find that every web modal is implemented differently. Every button is different. Business logic is disconnected. It's why agentically produced codebases are MUCH larger than they should be; every feature is developed in a vacuum.
Then I'm trying to shove stuff in my AGENTS.md or CLAUDE.md files like "ALWAYS look for existing patterns within the codebase to keep it consistent." But the harness doesn't always work and it'll generate useless, verbose code anyways.
In some cases it's useful - like if I am shaky on the DSA knowledge needed for a specific operation or optimization then Claude can replace Stackoverflow. But, man, I'm so frustrated with it.
I am slowly doing more of my own code and cutting out the LLM out of the loop in the unfamiliar territory I am working in.
My main concern is not so much productivity but understanding the code I have written and feeling agency over it.
The LLM is a very good teacher.
It's bad if they work in a part of the industry where code quality or efficiency matters. That's maybe 10% of the total though.
I have been coding since about 1983 or so. I shipped high quality products that have been used by millions of people. From embedded software to desktop applications to distributed systems.
I don't think I'm in the "don't understand what code should look like camp" (I mean you never know but the evidence seems to show that I do know what I'm doing). I use AI as a tool and it helps me be more productive. I don't "one shot things that would take me days to do". I use it to help me automate things that I could do manually where it is faster and more effective. I review every step and if I don't like something I adjust. There are some specific situations where it basically does as good a job as I would do in running some experiments, doing some analysis or writing some small amount of code. I still know what the changes need to look like broadly, where to make them, and what patterns to follow. It just automates the work and sometimes does have some additional insight that can complement my views. Unlike me it is all knowing about everything in terms of access to "knowledge". It knows all the details of how a certain runtime manages memory, Linux internals and various open source software. I could go look it up myself (which I'd do before AI) but I don't hold it all in my head like AI basically does. It is also "all knowing" in the code base I work in (more so than me, it's a huge code base, I have an outline and a high level picture in my head but not every single code line) where again I can dive into the code but it helps me extract the relevant information faster.
I think the polarization is more on the how you use the tool, what situations you use the tool for, which domain are you operating in (languages, applications etc.). You can also one-shot simple tools and helpers that are not the production software which is another way to accelerate your workflow.
That simple arcade game (without in game transactions) needs to be fun, that website that needs to attract visitors (but not sell them anything or handle sensitive data)?
They don't care about abstract code quality, they care if it works and useful.
So a good coder here means he or she could get to working results according to what the client wants fast. And those things likely make up the vast majority of written code. So no wonder AI gets adopted as it is a powerful tool here to be even faster.
Not all code runs in airplanes, handles financial transaction or sensitive user data - for this you need the best code possible and nothing vibe coded or quick and dirty hacks.
And oh wonder, it is possible to combine both. Because yes, websites often include financial transactions nowdays, but that part can and should be handled with care. People who move slow and check things. And then those who are quick to build things on top of it.
But I strongly object to dividing programmers absolutely in good and bad programmers, when the field is so big and the requirements not the same.
Some optimize in speed, some in quality. And yes, some are just bad in both. And some can do both - but they are very rare, in my experience.
The hard part too is it's not like you can just learn the basics and be able to tell good code apart from bad -- the more you learn to code, the more intricate your understanding of good code is. It's like becoming a good writer; just knowing grammar and spelling doesn't make your writing interesting. Not to mention that there's just a lot of bad advice out there that you can't recognize as bad advice if you're not a regular practitioner. Like, "Clean Code" is IMO a terrible book, but a ton of people follow it because it has the sheen of respectability.. until, hopefully, they learn some new patterns and realize those old ones aren't very good. But you pick these things up with experience and doing the work! Otherwise if you're just reading other peoples opinions, you'll see a bunch of people say "Clean Code is great" and a bunch of other people say it's rubbish, and you'll have no way to know who you should listen to. (If you disagree with me on Clean Code the book that's fine -- I'm just using it to make a point -- sub in a different book/ideology if it suits you)
I think looking at an LLM code and thinking you're now a coder is like watching a someone play guitar and think you can just pick up a guitar and play a song. The truth is, if you want to be good, you have to do the work.
One of the things I hate about AI is that we're going to have a generation of "programmers" that are absolutely shit at programming, create problems for everyone else, and will have absolutely no idea how bad they are. And they'll probably never get better, because you can't get better by just asking claude to do shit for you. And then the LLMs themselves will probably start to degrade because they'll be trained on the slop since it'll heavily outnumber handwritten code..
So many posts here on HN claiming they created another useful tool with AI.
No, you didn't create it. AI did. You only had a supporting role. You're Ringo Starr and the AI is John Lennon.
It's even worse than that: you're the Ringo Starr and the AI is a a "John Lennon" who sucks and is boring and uncreative.
No, AI assembled bits of code written by hundreds of programmers before you.
In my case I see Claude produce code much worse than I would, but it's certainly much quicker and, even after reworking, it makes me finish tasks in less time.
Then again, I just caught Claude writing setTransparent(!opaque == false), opaque being a bool, on a purely vibecoded project. Which was pretty impressive. ("• You're right, that's nonsense.")
For bigger production ready code, you indeed have to guard the architecture. But for the code, in some corners you can get away with sloppy code, as long as it kind of works.
What I'm saying is, code doesn't always has to be great. You will just have to judge the places where it needs to be high quality, and other places where you can get away with sloppy code.
So there are still only two camps
Code should grow according to need, not for its own sake. Start small, use it in the real world, and then improve it.
The industry largely has selected for camp 1 long ago.
If you don't get immediate negative feedback camp 1 can go quite a ways before problems surface.
Today, it's a kind of chaos magic wherein you summon the beast and try your best to contain him, knowing that someone will probably die in the process. Sometimes literally. It's still a force multiplier in the right hands and domain, and agentic coding is a paradigm that won't retract, at least until something better supplants it.
The problem is that few engineers actually have the discipline available to constrain these models appropriately and instead rely on a hodgepodge network of "skills" aka prompt fragments which are passed around and glued together.
I consider myself as having such discipline, being strongly architecturally-minded, user-first, etc. in both design and implementation. And I still struggle to contain the beast many days. I just got through screaming at Claude for intentionally taking a shortcut that I'd forbidden, leading to a ton of wasted time and tokens.
Sometimes I feel like I saved weeks of R&D with a single ten-minute task handed off to an agent, other times I feel like I'd get better returns playing slots in Vegas at the alarming rate Claude burns through money.
> the polarized differences in opinions on HN about the quality of LLM-produced code
Are there strong differences of opinion about the quality? I've seen very few people claim that LLMs write better code than they do.
> one shots things it would take me days to do, and has made me 10X more productive
This is an entirely different claim from the former, and you're conflating them.
The boost from LLM-assisted code isn't _expertise_, it's the power of having an always-on team of reasonable junior developers from every discipline you can possibly imagine willing to do your whim.
Take for example Jesse Vincent / obra[0], who is an exceptional developer, with great taste, and a stack of well-received open-source software to his name. He posts a lot on how he's being made more productive by AI-assisted development. Do you have bad news for him about the quality of his work...?
0: https://en.wikipedia.org/wiki/Jesse_Vincent
1) he is extraordinarily lucky
2) he is extraordinary brilliant at manipulating LLMs
3) you really are "holding it wrong" and you are hobbling yourself with your failure to properly learn the tools
The first two seem rather unlikely.
I rarely write code, and only once for a living. But I feel like I’m a superhuman and one step away from being a zillionaire when Claude gives me a bunch of code it has written in seconds. I WILL CHANGE THE WORLD!!
And then I remember that Claude can’t write words that don’t make me want to break things and I’m good at writing words but bad at writing code.
So then I delete the code and go back to doing more profitable things than being the next zuckerfuck.
The advantage of the writing vs images, is that it takes longer to absorb the whole with text, so its less apparent that the whole thing doesn't quite come together.
My problems was with Claude's prose and ideas is that it kept recycling the tropes and phrases after a while - something that has been observed that these models have very strong statistical biases - when asking for a random number for example, LLMs are far more predictable than even humans, this shows up in unguided writing exercises.
But as for actually crafting text that is both terse and to the point - such as oneliner explanations, or writing summaries - these models are quite bad. The best I have seen is they could turn a given length of prose into an even longer version - with generally some loss in the tonal accuracy or the points made in there.
As such they are a terrible tool for professional communication, but unfortunately, lots of people have started using them for exactly that.
I get that it sounds clever but that's the damn problem!
However, in fiction I’ve found it a useful collaborator. There have been more than a few occasions when, given some notes of how I want a character’s arc to develop in a particular scene, that the LLM gives some excellent pointers and ‘new’ ideas I hadn’t considered.
As far as editing my prose, I use it as a ‘thesaurus of phrases.’ When lazy, I can give it a rough sketch of the paragraph, giving it the gist of what I want, and have it generate a dozen or so versions. I usually can find nuggets of good phrases therein that are useable… much as I would refer to Roget’s to find a more precise word.
That said, one has to resist tbe temptation of using a chunk of generated text verbatim; no matter how good it sounds in isolation, the repetitive grammatical structure and other LLM-smells add up quick and become nauseatingly obvious if used frequently.
In any case, I think LLM’s get a bad wrap for writing… when used correctly, it is incredibly useful. And, it’s tiresome to hear pretentious snobs assume that an author who uses LLM simply lacks the taste to appreciate how bad the prose sounds. Not true in all cases.
This makes me think you're only exposing yourself to high quality writing online and from an intelligent circle of friends and coworkers. The average person's reading and writing abilities are _atrocious_ and only getting worse. We're almost at the point where kids are communicating through abbreviations and emojis exclusively. LLM prose is significantly better than what the average person can produce.
Way back in the past (around 30 years ago) I remember reading an article on "how to read a book" or a similar subject. They argued that, you should not skip the acknowledgments, preface and other "personal" related sections of a book, because it was there where you got a glimpse of the person that was writing the book. The idea being that, you should had in mind that the person writing was explaining something through you.
Carl Sagan even has a video where he argues Books/Writing is some sort of communication through time.
Now, this has been the case historically: A person writes some text (even in botched language like my writing, as English is not my first language) with thinking that someone else in the future will read the ideas and reason about them.
But what about text written by an LLM? Does it have inherent intention? When reading LLM text, it feels like looking at those "this is not a person" photos. Yeah, they are words, yeah they form sentences and paragraphs but... they lack "soul".
If so, this seems to be a trivial (still worthy) assertion.
For example, I intend to, say, construct a shed. I make mistakes that I only see because I actually constructed. I revise future endeavours involving sheds.
I admit to not having read this piece, and am merely reacting to the title.
—-
Okay, I got through the first paragraph of Walter’s writings. While I nod to the bitterness (I assent to the existence of it), I do not bow.
What I find to be the normal pattern (by intuition) is that the condensed leading text belies the expansive following text. This is likely lazy (a shortcut) and I am open to correction at your effort. If a call to your effort (I apologize) is unpalatable then I concede.
Maybe? That is one reason to read, but there are a lot of other reasons, too. It doesn't mean you are doing it wrong if you want to read something and don't care at all about the person who wrote it.
At some point you're just making bad excuses for false scarcity.
But that's the real problem with LLMs. Culture is aspirational. It has a consistent goal - find the best, highlight it and distribute it so others can build on it.
LLMs are the opposite - produce as much of everything as possible at the lowest possible barely-acceptable-if-you're-lucky quality.
This was already a problem before LLMs. Mass market content farms - Kindle Unlimited, Wattpad, Spotify, social media in general - give everyone an equal voice, with mass popularity and "likes" as the only metric.
Now LLMs are automating the creation process, so everyone gets more of everything.
Except inspiration. Not so much of the "That's astounding, I wonder if I can learn from that and reach for something in that league."
I think this is open to debate. To me, the code has always been the goal, and the fact that writing it sometimes serves to produce a product is important to others (and what brings the paychecks in), but ultimately not something I've ever been excited about or interested in throughout my career. So I judge a developer based on the beauty and quality of the code he produces, just as I judge an LLM by the same sorts of things.
The fact that AI can one-shot a working CRUD app is not really that interesting to me. If it could make the code beautiful, concise, maintainable, extensible, minimal, performant, readable, and bug-free: a work of art and love that a craftsman would be proud of... that would impress me.
I mean that's certainly one way of looking at it, and both can be impressive technical feats. But most people judge carpenters and artists on their end products, their overall vision, their motifs, their philosophy, and so on. On the other hand, as a trained logician, I definitely see proofs (which, by the Curry–Howard isomorphism, are computer programs) have some degree of beauty-within-themselves, but that's quite hard to achieve. Not everyone is a Gödel, after all.
I also think programming languages, despite being Turing complete (which is frankly not saying much), are far too limiting to truly construct magnificent things with.
> artists on their end products, their overall vision, their motifs, their philosophy, and so on
The main output of programmer's work is their understanding of the system they work with, the rest comes from that. Behind the code there's its author's intention, vision, their tastes, philosophy and experience that makes them tackle problems in specific ways. Code review is, aside of quality assurance, mostly about communication between people, convincing them to your ways of doing things (or getting convinced by others) and communicating needs. It's what keeps projects running and what makes people improve their skills.
You don't need to see magnificence in code to realize that there's more to it than just the syntax tree to compile.
I feel like I need to push back here, because some of the best programmers around: Carmack, Torvalds, Johnathan Blow, even folks that make programming languages like K&R, Rob Pike, etc. are judged on their respective end products, not on minutia found in code reviews. For example, if I asked you "why do you think Stroustrup is a good programmer?"—you wouldn't cite some obscure optimization he came up with, but would rather talk about his overall vision for C++, his ideas of evolving C, his staunch anti-GC takes over the years (and their justification), etc.
Frankly, I have no real idea of how good Carmack, Torvalds or Blow are as programmers, I have never worked with them so I don't really have a way to tell (even though I do contribute to Linux and I've seen some of their code). They're likely past a certain above-average threshold, but they haven't got famous for their programming skills.
That said, if you think Torvalds isn't being judged on "minutia found in code reviews", I'm not sure your take is very serious in the first place - that's the main thing he was being judged on for decades now :)
How?
> you mention things that are very clearly not end products but thoughts and visions behind them that only lead to end products
Thoughts and visions are much more closely intertwined with end products (in fact, likely supercede them) than some random code review is, so I'm not seeing where the contradiction lies.
> that's the main thing he was being judged on for decades now
Linus hasn't written any code[1] in at least half a decade+. To argue that he's being judged on his code misunderstands why Linux became so popular to begin with.
[1] https://linux.slashdot.org/story/20/07/03/2133201/linus-torv...
> Code review is (...) mostly about communication between people, convincing them to your ways of doing things (or getting convinced by others) and communicating needs. It's what keeps projects running and what makes people improve their skills.
The way he does that is exactly what most news stories about Torvalds have been focusing on for many years now. In practice, unless you run a project alone, code review is where thoughts and visions surface up the most. Or, well, should be - not everyone is good at it.
(that said, even though my point is that's he's obviously not being judged on his code, you can easily find code that he wrote as late as this month, so your statement is clearly wrong even if that doesn't really influence the discussion here - code review is still the vast majority of his job, just like he stated there under your link)
Could be both :)
The way I look at it is like this, and you could call this my thesis: I do not categorically think that code in itself is primarily relevant to us looking at a "software engineer" and saying "wow, she's good." The product (the Linux kernel, in Torvalds' case) is, on the other hand, what actually matters. I think we're getting caught up on the idea of a code review; a code review can serve many purposes, as a code review is basically just people talking about the code, the product, their feelings, and so on. Sure, sometimes it's like "this `i` should be a `j`", but other times it's "this should serve feature X, not feature Y."
Overall, I don't think Torvalds is judged by his code quality. And the snippet I cited is the man himself saying "I don't write code anymore" so I took that at face value, even though my conviction stands wether or not he actually does still write code. I don't think anyone actually cared that much about his code quality (maybe with the caveat that the kernel didn't crash).
PS: I could be totally wrong, and this is an interesting & stimulating conversation, regardless.
I write code for a living mostly by hand. In the odd case where I need help I still use google like I always have. I spend more of my time in meetings or staring at the ceiling than writing code. This was also true a decade ago before LLMs. It was also true several decades ago when someone else's ass was in my seat.
At least in the USA: 21% of adults in the US are illiterate in 2024. 54% of adults have a literacy below a 6th-grade level [1].
1: https://www.thenationalliteracyinstitute.com/2024-2025-liter...
FWIW, I'm with GP. It's quite easy to get just mind-numbingly tired reading beyond the first two sentences of a typical LLM output, let alone on something I'm familiar with.
Same to you though, have a nice day
How do you think the author of the page would read this? That sounded pretty asshole-like for me. If it's not for you I'm really sorry for you, you must have to endure really screwed up people.
And sorry about your blog :/ didn't know it was hacked. Looking at the comment section of the hello world though it gets pretty obvious LOL. You should consider removing it from your HN about though.
Naah I disagree with this. I think LLM's are good at gas-lighting you into thinking that good writing only comes in one flavor. And LLMs prefer a very "textbook/technical-manual" coded flavor of writing because maybe that way they are more useful to us humans. But human writing is not just about crafting the most elegant sentences. Sometimes great writing is just this doggo-drawing meme:
https://knowyourmeme.com/photos/2160304-the-winner-of-this-c...
Let's say you are correct.
You ask an LLM to write something for you, and to you it looks really, really good. So based on your conjecture, that means I am not a very good writer.
Ok, but how does that change what I should do? If I am not a very good writer, that means an LLM IS actually better than me, even if it might not be objectively good to an expert writer.
My two choices are to keep producing my own crappy writing, or use an LLM to create better (but not great) writing.
Wouldn't it make sense to use an LLM?
It seems to me your premise leads you to the same conclusion you would reach even if your premise was false; if me thinking an LLM is good at a task means I am very bad at that task, I am probably better off having an LLM do it. On the other hand, if you are wrong, and I think an LLM is good at something because it actually IS good at that thing, then I should also use the LLM to do the task.
Either way, the LLM is better than me at the thing.
From above, or from below with adequate exposure, it feels facile and hollow. It is good at weaving grammatical structures. It is not good at thinking in words in a way that invites a fellow human along for the journey. Because it doesn't think.
If you're not a very good writer, I'll at least skim your work to see if it contains any good ideas. If it's slop, I'll just close the tab. You already told me it's not worth caring about, so I'll agree with your decision.
Are you also an LLM or do you have the capacity to learn and grow?
And both come from ovens.
This is why code generation is a disaster waiting to happen. Hunderds of thousands of "programmers" with no idea of what they are pushing to production.
- “(The) honest answer:” (again, with colon)
- “The thing to internalize:”
- “The smoking gun:”
(really, sentences that start with “The <tag suggesting the next clause is the key point>:” are a strong tell, but those four are the most prolific)
- “load bearing” (when not talking about architecture)
- “blast radius” (when not talking about actual explosives, but rather the effect of an event/action)
- “smoke test” (esp. when “sanity check” is more apropos)
- Lists of three clauses/adjectives where the third is really just a combination of the first two
- Referring to the “shape” of things figuratively
- Social media posts that end with “Curious if anyone…”
- Stories or anecdotes using. “Oh. Oh.” (where the second “oh” is italicized)
Edit: Yes, some of those last ones are terms that we often use as devs...but I would argue about the actual frequency of their use. Plus, these tells live on in prose generated by the latest models.
Assuming you mean load bearing & blast radius, I'd see those used and use them myself very frequently pre LLM, mostly in online discussions though so its telling where they got their training data. Load bearing itself is/was a pretty normal phrase in the ops world in daily discussion.
Smoke test though, I can't say I've ever see irl usage.
We use it all the time at my employer, and have for decades. They're basic tests to tell you if the app is up or not.
Like: you go to this page, and it shows a big green banner if the app can connect to the database and its disk isn't full. If one of those basic things are wrong you get big red banner or you can't load the page at all.
If a repo is bare of CLAUDE.md but mentions a smoke test in a commit in the last year I assume it to be LLM written.
Also, here’s a link to well-documented patterns by Wikipedia: https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing
Everything is an escape hatch, try catch is an escape hatch, a cli flag is an escape hatch. It makes no sense, and quickly ended up in my “banned words and phrases” md file
I've always called them exit hatches, entirely unrelated to llms...
Now I wonder if I need to reword the docs... But realistically speaking, llms are the only readers of them nowadays, so I guess it doesn't matter.
I think that the convergence of these tics is just a symptom of distillation.
Simultaneously, because humans subconsciously mimic what we see, we also converge to sound more LLM-ish.
The harsh reality is that no matter what you write and how much research you put into it—especially if you try to be legible to others and not make grammatical mistakes—someone could discount all that and claim you just prompted an LLM. If they want, they can always find some magic “AI checker” that will return a high enough probability. We all know that with a good enough prompt and with round-trip validation against a checker (there are definitely products with this all built in) it will avoid the common tells, it’s just the matter of a few extra tokens.
It’s somewhat demotivating.
Nope. LLMs are RLHF'ed to the brim.
"what really Xes" "is genuinely X" "that actually Xes" "is/makes/does/etc a real X"
The real/genuine/actual cluster of words are wildly overused.
- And a variant of the above is omitting the subject, "happy to" instead of "I am happy to"
- Codex refers to "the spine" of something
- Claude often says some decision is "locked" (i.e. decided on)
The LLM sameness in web design is good. Most sites shouldn't try to be idiosyncratic. The best design for a site with real utility is legibility, and LLMs are better at that than the median developer. Always laying out the same buttons? Always using the same type scales? Good! If it looks good to you, you weren't going to do better on your own, and you were very likely to do worse.
I would feel very weird using LLMs for writing, except for filing out stupid applications. I've had collaborators use LLMs for some technical writing and it's pretty much always borderline nonsense that has the aesthetic of something correct. For creative writing, I feel like heavily using an LLM would defeat the purpose :shrug:
I'd say that sameness isn't good either from a LLM or solo founder SaaS #171876137.
I have not used to review my writing yet. Is it that good?
See, I disagree. Having seen plenty of Claude generated websites and slide decks, to me it just screams "no effort whatsoever". AI sloppypasta for content, if you will.
If I can see within a few seconds that your website or slide was obviously AI generated, I will doubt its content, how much effort (if any) you've put into it, if it won't have hallucinations, and (especially for websites) if it's even real or a scam farm.
I'm not saying every website has to be unique, but at least tell your prompt to use a font or colour scheme or something specific to you that will make it seem like you've put in some effort and make the result stand out from the slop.
Maybe here lies the crux; for some of us, the web and by extension the internet is about expression and individuality in a way, but all together all accessible by everyone. Everything looking the same instead looks conformist, and ultimately boring, which I guess is what many of us don't want day after day. We want new ideas, presented by the person/group who came up with it, in the way they would express it. The LLM kind of trashes the parts that add up to something interesting.
It's not just about being the same, in which case the worst is that it has less to stand out with.
It's about looking the same as the other AI generated slops out there, which is a strong signal that the content is probably AI slop too, which doesn't merit time being spent on it and trying to understand if it's slop or a human that just used AI generated UI.
> Contrastive negation is a rhetorical structure that denies a specific idea in the first half of a sentence and asserts an alternative in the second half.
> It typically follows an "It’s not X, it’s Y" or "not just X, but Y" formula.
Wikipedia also has a great resource which covers many of the common LLM patterns: https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing
And I especially appreciate the idea that these patterns aren’t the problem. Don’t just fix the patterns. The problem is they point to hastily or carelessly written content.
Also the false not X it's Y is used in a similar way for faux distinctions like a sov cit claiming "it's not driving, it's traveling in a car"
"Smooth. Effortless. A perfect fit for your needs".
In any style of informal or persuasive writing this shows up , as if it has to drive the point in.
I kind of wish we'd stop talking openly about what the tells are. It's nice to be able to determine with fair accuracy - but it couldn't last forever.
Labeling each sentence (J)ab and (T)hrust, and using colon ":" to indicate arguments, one gets:
```
J: J. J. T.
J: "J. J. T".
T: T.
T: J. J. T.
```
Least this way it’s out in the open perhaps, since enough users have training enabled labs will naturally learn what annoys us.
Had the same thought though
Will be interesting if that holds in other areas when chasing super intelligence.
I haven’t tried it with Slack messages because I’m a little scared to read what it says, haha. But the same concept surely applies.
There are a few people at work who are aggressively using Claude to write Slack messages. It’s easy for me to tell because one day they’re writing barely coherent English in multiple messages, and the next they’re sending perfectly coherent prose in a single message.
It actually works quite well
My favourite one today from today:
“The tax isn't the problem. The mindset is.”
Thought for sure we'd get a critique of Inter overuse. JetBrains Mono is a lovely font, though.
If JetBrains Mono suits your work you should use it, not avoid it specifically because AI often uses it.
Is it even legal to use it in $RANDOM_WEBSITE?
0: https://en.wikipedia.org/wiki/Nutraloaf
Like corporate manager-type emails, of which I get AI generated ones frequently from company ownership. They think LLMs are the best thing since sliced bread.
It's taken corpo-speak to an entirely new level. On the plus side I no longer have to read them, and can just have AI reply on my behalf with more fast food.
Why would you do that in the first place? If you are just starting writing about math, I assume your goal would be to get better at it, and using LLMs is not how you get better at writing.
I grew up seeing this very relevant image on the wall of my grandparents:
https://en.wikipedia.org/wiki/Matthew_7:13#/media/File:Der_b...
Lower quality version with The Eye of Providence not retouced out (the version I remember):
https://commons.wikimedia.org/wiki/File:Der_breite_und_der_s...
I can also see how it is not necessarily the case, since all models seem plagued by having unique cliche patterns. We all seem to experience the writing smells from the same models. I see 'cleanly' a lot less from GPT 5.5 vs <5.4
> "belt and suspenders"
In coding, I've noticed a few tropes as well: everything is a "contract" or an "artifact" (clearly trained on like three decades of Java lol), everything is constantly "backwards-compatible" or "versioned" (even if working on a brand new greenfield project), and a few others.
It's been used in an ops context for a long time, pre LLM even. Same with "blast radius" has been a cybersecurity term for as long as I can remember.
It can't get creative, it can only generate based of what's a majority in it's training data.
also, how come jetbrain mono has become one of these tells is insane to me!
I think it makes a lot of sense, it's essentially an inversion. Another related thing I recall is hearing game creators talk in terms of "gimmicks" and "scenarios". Anything that gives a structure, a framework to operate within, I'd say is always useful. This is much the same.
For those curious https://github.com/ryanthedev/oberskills/blob/main/commands/...
sorta like asking an LLM to get more creative with a visual design, that also never works.
Last month it was quiet things being said out loud.
When you use the tools all the time it’s fun to watch these things pop up a week or so later as normies copy and paste the slop out on LinkedIn and their newsletters.
To list out a few personal examples:
1. Several students I knew at GaTech in 2024 taking the algorithm class (which is notoriously hard) started submitting assignments with sub-optimal/brute-force algorithms cuz the TAs kept reporting them for academic misconduct on optimal solutions.
2. I've started avoiding "em-dashes" in all my writing
3. Junior engineers leaving "typos" in their code reviews or submitting code-reviews with absolutely 0 comments (LLMs love to leave verbose comments)
Gotta stop shaming people for using AI fr
Did Anthropic and/or OpenAI deliberately train their models to produce websites with a specific design language, or did these stylistic preferences emerge naturally as some kind of LLM-selected optimum?
To give an example I'm personally frequently annoyed by, Google's Antigravity will consistently use the word "anthropomorphic" while "thinking" and the end result will consistently have obnoxiously large border radius (kind of like Android's design language).
Codex on the other hand likes to make websites with blue elements on a black background and likes to use emojis for icons for some reason, which is a terrible idea accessibility-wise.
When you bring your own ideas you can get AI to dev pretty nice looking non-generic stuff.
/endredditmode
I actually love folks documenting this. I'm all for LLMs producing rough drafts. But rough drafts are, as a rule, slop.
It is strange to read as the topic A has often not been introduced and introducing it by saying what it is not makes very little sense to a new reader.
Instead of this:
it will write: While it's always preferable to do this when you get either long or complex function signatures, Opus 4.7 and GPT 5.5 do this everywhere. When you combine it with their penchant for writing helper functions for everything, you get a ton of vertical padding that messes up the readability imo because Python really relies on your eye seeing indents for scope.If you have to add arguments, when they're on one line like that, the diff is cleaner, so the reviewer has an easier time kf understanding what's going on. That is, if you still have a human reviewing code, that is.
Kind of works.