I was pleasantly surprised when I attempted to scroll down and realized everything the author wanted to present fit on-screen. It's almost ironic that this site is able to make such an obvious, compelling presentation without being overly verbose or complicated (something which LLMs have a hard time doing). I wouldn't read TOO deeply into what is being presented, but the author has done a good job to not inject their own bias into the presentation which works well.<p>I suspect, as we continue forward, humans will slowly start to adopt the language of LLMs, or at least certain language quirks that come from interacting with LLMs. Something I've noticed in my own writing is that I now present lists of examples in a consistent way: "... such as <example 1>, <example 2>, etc., ...". I started to notice I was using this pattern quite a bit somewhat recently, but I took a quick look at some of my social media posts and realized it's been occurring for a while. I had realized that I grown accustomed to this kind of language because, especially early on, LLMs would focus too much on the specific examples I'd provide when, really, I was just trying to give them a sense of what I was looking for. I just picked up that providing two examples then adding the "etc." worked to get the LLM to not focus so much on the specific examples and to understand that they need to consider more than what I explicitly presented. Of course, now I write like that in my social media comments, in Slack with my colleagues, etc. :><p>I'd be interested to see if anyone can identify trends like this, since I think the human-language component of the adoption of LLMs is probably being somewhat neglected despite probably being surely dramatically affected.
In the enterprise, we are already adopting them. “Seam”, I term I’d never heard used before, is now not only our defacto way to describe the boundary between systems/workflows/components, it is encoded into our organizational roles and responsibilities descriptions.<p>I am the proud owner of several seams, and am considering giving them person-names. The empty space between my inventory APIs and their clients might be “Karen”.<p>I can’t say that Claude invented this; the same type of terminology cycling happens every few quarters based on what leadership is reading/being told by Gartner.
"seam" dates back to refactoring & software engineering literature that pre-date LLM use by 20 years -- see Working Effectively With Legacy Code for one example (<a href="https://www.oreilly.com/library/view/working-effectively-with/0131177052/" rel="nofollow">https://www.oreilly.com/library/view/working-effectively-wit...</a>). Its a great book, still use techniques from it everyday.<p>"load-bearing" I have never heard used for programming before Opus, and its incredibly annoying and over-used.
I believe the term "seam" came from Michael Feathers' "Working Effectively with Legacy Code": “a seam is a place where you can alter behavior in your program without editing in that place”.<p><a href="https://martinfowler.com/bliki/LegacySeam.html" rel="nofollow">https://martinfowler.com/bliki/LegacySeam.html</a><p>Claude is using it a bit liberally, but not totally incorrectly.
Author here :)<p>Thank you for the compliment! I did spend a lot of time designing a nice experience on both desktop and mobile. Even the scrollbar to select words was non trivial as I wanted the words to be of different size, yet avoid flickering when scrolling!
I've found myself rewriting my own words to avoid Claudisms (because they can be cringe and I don't want people to think I'm copy/pasting Claude output at them).
Saying "the language of LLMs", while technically correct, is not exactly precise. It should really be the language of "AI agents", or "chatbots". OG LLMs would just mimic the style of its context based off of (pre)training from text on the Internet.<p>The kind of quirks you see came from crowd-sourced human-in-the-loop fine-tuning, with not very good work conditions or level of qualification (so resulting in "what non-writers thought good writing looked like", before people had developed the flair to detect these patterns) as well as feedback loops during agentic reinforcement learning and RLVR.
Author here! Grateful for the kind words, human communities like HN really hit differently when you spend the whole day chatting with sycophantic and bullshitting agents (including to make this page).<p>I'm currently adding a search bar as well as increasing the data to 1000 PR per day.<p>A nice thing that is not obvious on the main page is that the dataset and analysis are updated daily using Github Actions (at least when they don't suffer from an outage ^^). I find it pretty cool to be able to build such apps without a "backend"!
Very cool! I'm trying to understand the graph, so the bottom-most section seems to be the cluster identifying Claude written PRs. What are the other 7, any reason there are 8 in total?<p>I've been scraping instagram posts recently to identify AI misinformation accounts that all repost each other's carousels and get hundreds of thousands of likes in engagement. Thinking of ways to present it and your dashboard looks very helpful. Did you experiment with any other types of visualizations before deciding on a stacked area chart for the clusters?
Nice work. I would suggest rewriting your README with Gemini, the most human of them, so it doesn't read exactly like the thing you are pointing at: <a href="https://github.com/louisabraham/load-bearing" rel="nofollow">https://github.com/louisabraham/load-bearing</a>
Agree with rewriting with Gemini, but I'd characterize its output as very "neutral" and "encyclopedic", rather than "human" (contra Claude which is as of recent models "trying-too-hard-to-be-human"-sounding).
leaving the README like this is a good bit, though
I really love this. It’s comprehensive, it consolidates the data to the point where the argument effectively ‘makes itself’, and the way it’s presented respects the reader’s time. It also makes for an interesting challenge (for me at least) to try to characterise the subject matter of a language problem so narrowly.<p>No ream of slides. No narrative. Just a lovely big painful conclusion.
Thank you so much! The presentation was really my goal here, more than the model itself.
> the argument effectively ‘makes itself’<p>What argument? I don't know what to take away other than "Claude likes certain words". Some of them are kind of amusing, but I'm not convinced the vocabulary is bad or that this is a problem, just from looking at this.
I wonder to what extent this is the result of suboptimal RLHF versus the inherent intelligence of the model making its language more intricate and difficult for humans to easily parse? On the one hand, it's a common trope that highly educated people can talk in a way that's confusing and annoying to regular people who don't know all the jargon. But on the other hand, it's a mark of a skilled communicator to be able to efficiently distill complex information to its bare essentials in an easily-digestible way. Of course, that also seems to imply that these models are working at a higher level and need to talk down to us to an extent. Or maybe "Claudish" is just akin to stuff like "caveman", raw chain of thought, neuralese, etc., which are likewise much more dense/efficient but harder to interpret?
I don’t think they’re “talking down”. If anything - it’s way more difficult to distill something into a genuinely easy to digest format. I personally think that they aren’t immediately capable of this, and so we get word salad instead. Extra prompting required to strip extraneous prose out.<p>Maybe I am dumb and it IS talking down to me, but there have been many occasions where I’m reading AI generated docs / plans and it makes absolutely no sense, but looks really in depth at a glance.
It doesn't seem like word salad as such. There's normally a coherent point expressed, it's just obscured by circuitous sentence structures, unusual word choices, "verbing weirding nouns", metaphors, etc. Could be a result of training that rewards novel/surprising language, but it also feels like it could be an artifact of models imperfectly compressing high-level multidimensional reasoning into language that's easy for them to process but cognitively taxing for humans.
I've been thinking more about how 99.9% of us don't have the experience of someone significantly more intelligent, yet also subservient working under us, which is why I keep going crazy second guessing whether Claude is spouting RLHF'd bullshit that sort of resembles English, or is genuinely (pun not intended) just better at "intuiting" things I'm working on, leading to its language.<p>A notable exception would be people like CEOs and managers higher up in big tech, who might be used to skilled engineers and domain experts reporting to them in unfamiliar lingo. Maybe that's why we don't hear as much on the everyday annoyances of Claude's language from that camp?
I find Claude language often hard to process and having to wade through these words can be draining. Embarrassingly, I’ve recently caught myself using them in conversations! Do all models have the their own jargon?
I swear claude took a detour recently, its written output has been nearly incomprehensible to me. At first i thought i was getting AI-brained and just lost critical thinking but as i dug into response after response its was just the most obtuse language to explain what was going on. Really mentally taxing to wade through it all day.
I'm surprised vacuous is not on the list.<p>The word selection and way of writing has taken the joy out of using Claude.
No "smoking gun"?
That confirms the recent spike of Claude calling everything I was recently working on a 'spike'. I still don't know what that term is supposed to represent (apparently).
A spike is an early prototype that you're supposed to throw away after having figured out the real design.<p>I think it was subtly dissing you.
In some software development methodologies, "spike" is a task whose goal is figuring something out instead of delivering shippable code. <a href="https://agiledictionary.com/209/spike/" rel="nofollow">https://agiledictionary.com/209/spike/</a>
A lot of these “Claudeisms” are simply jargon I’ve seen or heard firsthand myself while working at tech companies. I don’t think it’s limited to Claude either; I’ve seen Codex use load-bearing and many of these phrases as well.<p>I think using agents is just like speedrunning the whole experience of working with technical coworkers. Whereas you might have had a few coworkers at your company who used some of these phrases regularly, you now have a “coworker” who uses all of them regularly at a much faster pace.
Really spectacular analysis – thank you for sharing, fun to scroll and easy to understand.<p>Is it possible to expand this analysis beyond words to other Claude ticks? Contrastive framings, sentence length, caveating, for instance.
Author here, thank you so much! I really tried to make it nice to use, beyond the (quite original) modelling.<p>A prototype I did tried to detect some grammatical constructions, eg "it's not ..., it's ...", but I am not sure how to systematize that.<p>Also just a disclaimer: I am NOT tracking Claude tics, I am merely finding that a particular cluster of vocabulary increases. Tracking Claude requires labelled data IMO. I tried using model release dates in a structural model to constraint the clusters but the result was not compelling, so I ended up simplifying the model a lot!
I wish there was a search bar for the terms, I wanna see for "gate".
I thought about that, I might add it if I can find a nice design!
Chrome's `find` finds it for me ;)
I have been using it as well, but I think adding a search bar will heighten the experience. I'm trying out some designs right now :)
Yeah Ctrl/Cmd+F works just fine on Firefox as well.
@labo333 do u think soon we may need a dictionary? ive been playing with something u may like, but my approach has been to ask for definitions in-session so hard to do from outside.<p><a href="https://www.themachinevernacular.net/" rel="nofollow">https://www.themachinevernacular.net/</a>
While Claude's style is obnoxious, I'm more frustrated by its inscrutable explanations.<p>You need a PhD to understand its explanation of a code snippet.
I'm not even sure a PhD helps. It just overuses jargon that has NO meaning. Sometimes, it actually hand waves too much as well while trying to dumb down stuff for you.<p>I am not sure whether it's a consequence of learning to reason from its traces or some RLHF that trips it into using weird terms to sound smarter to the humans who rate it.
PhD was a joke.<p>My intuition is that Claude is trained to communicate to itself while coding. You see this in how bizarrely granular it is when explanation prior work, you also see this in the comments it leaves behinds.
I have a PhD and can confirm. Oftentimes, the stuff which comes out of Claude is just impenetrable because it invents jargon on the fly, and uses verbs in the most atrocious ways.<p>"The fibred side folded its capstone into the existing name, so the kinds are asymmetric."<p>What on earth does it mean to fold a capstone into a name‽
Is that an actual Claude output or hyperbole? It feels like I'm trying to parse an equation in a new math class which makes me want to take a stab at it regardless.<p>So there's a "fibred side".. the most likely candidate seems to be "fibred categories" which I hadn't heard of before, and it's talking about one side of some mapping between two sets such that if f is the primary function and f(x)=y then there exists an inverse function g(y)=x? Was it something that converted some data bidirectionally with a different algorithm on both sides?<p>The capstone of the inverse function would be the most important thing about it maybe?<p>My best guess is "In the process of working on the inverse function, the existing name (of the inverse function itself maybe?) was made to reflect the operation of the inverse function, so now the name does not follow the same naming convention as the name of the primary function (which does not contain its 'capstone')."<p>Its original wording is certainly dense and harder to follow for us, but it's fascinating how the model finds this the best fit for what it's trying to express IMO. Like it arrives at its own ways of overloading words/concepts, and things we would refer to in different ways in different contexts all get compressed to the same more-useful/complete idea.<p>Codex has never said anything nearly so alien as the Claude examples I've seen floating around, interestingly. I wonder if it just has a better training on choosing its words to present to the user or if it inherently arrived at a somewhat different mapping that favors 'plain language' more.
Sometimes I can't even tell if what it's saying actually makes any sense to someone who understands all the terms its using, or if it's just throwing together words in a way that only make sense to its own model of language.
They just addressed this with "Output styles"<p><a href="https://code.claude.com/docs/en/output-styles" rel="nofollow">https://code.claude.com/docs/en/output-styles</a>
This solution:<p>1. Adds a small prompt to each turn with the agent[1].
2. Is like a band-aid on a bullet wound, properly solving it would mean retraining the model and they probably are already working on it.<p>[1] <a href="https://x.com/_can1357/status/2090360068529111530" rel="nofollow">https://x.com/_can1357/status/2090360068529111530</a>
don't forget LLMs are great at translating between languages, and within the same language. depending on the problem it works on, it will often reach for terminology that tend to be more common or familiar within that problem set. which appears inscrutable, but there's many different ways to skin a cat. just remind it to translate it back to the terminology and subject matter you're already an expert in.
Is it the obnoxious style that causes this?
I think it's the hierarchies of agents summarizing each others' summaries before presenting a final answer to the user. The principal agent has the full context from all its workers, but when it distills this down to a message to the user it summarizes it into a mess of confident jargon that pertains to a conversation the user wasn't a part of and never saw.
I had an idea for an experiment. Take a decent text, any one, and ask AI to rate it. Then patch that text by replacing words for ones that AI likes (honestly, load bearing etc) whenever possible and ask AI to rate it again to see how the evaluation changes.
To all the people in the HN comments saying negative things about Claude: why don't you just use other models instead?
Don't much care for the misdeeds of the alternative
Claude is all we have at $work, if you don’t count MS Copilot (and you shouldn’t count MS Copilot).<p>Imagine being “incentivized” to aggressively use a tool for your job, and that tool produces thousands of lines of text in Olde English which you need. You’d be griping too, methinks.
Work only allows the tools they buy. So at least for me, I am stuck with Claude. At home for personal projects I am a fan of DeepSeek v4 Flash.
I'd be interested to know what distinguishes the 7 pre-AI types. I wonder, are there certain buckets of 'Pre-AI' comments that we'd recognize?
Sadly pretty uninteresting, you can probably just launch Claude code on the repo to see by yourself. One cluster is french and spanish, another is about design, another about frontend, etc...
Things like seam, fold, and load-bearing are useful concepts, they are everywhere, and they are more descriptive <i>and</i> more concise than alternatives. Over-usage can definitely be irritating (e.g. these should NOT appear in documentation) but they are almost unavoidable for humans engaged in code review or colab on complex stuff.<p>I don't want to use more words or letters than "seam" to actually <i>pinpoint</i> boundary conditions and the mechanical details of joinery when the context is understood by all. Too much effort for people! Easy for robots though.. so why are they abbreviating, and why would we want to allow it? A phrase like that permits a human who wants to educate a human to do so quickly with minimal time/effort. But it allows a robot a chance to not mention a filename, function-name, or to not reinforce/clarify it's own understanding or to state specific intentions.<p>It's bad for human-to-human comms if we just accept "ok, all technical terms are slop now, we have rephrase everything". Now YOU must cite details and sources, and the robot doesn't? Fuck that noise. Seam and fold are fine! Humans can be lazy! Robots should do the real work of explaining themselves without hiding behind tactical ambiguities.
Thanks to the infinite well of human creativity I am able to read "load-bearing" both as the intended affectation (I won't call it meaning) as as well "being full of shit".
Everyone talks about Claude, but I'd like to bitch about Sol. "Unusually" is its absolute favorite word in the chat interface (less so in Codex), and I fucking hate it. Every single thing is unusually something. "Unusually good", "unusually efficient", "unusually inexpensive", "unusually attractive", "unusually difficult", "unusually nasty", "unusually cacheable", "unusually interesting", "unusually decisive", "unusually narrow", I'm surprised I haven't seen "unusually unusual". If I search chat history for "unusually" it brings up every single fucking chat I have from before I added it to an illegal words instruction. I can't believe I haven't seen anyone else complaining about this, it's as pervasive if not moreso than anything I've seen from Claude.
Why are people getting so hung up on the "load-bearing assumption" turn of phrase that Claude uses? I get that it becomes cliche, but it is also a rather semantically dense way to communicate an idea that a lot of people run into.
It might be, when used sparingly, but when it's the first sentence in a wall of text as Claude goes way off the deep end on a two page description it becomes the easiest readily available tell that you're about to be frustrated.<p>Humans are very good at pattern recognition - Claude is _incredibly_ repetitive in the way it starts to struggle to communicate. I think there's also a ton of overlap in the Jargon instead of Usefulness that developers see in annoying middle management/salespeople. Circle back, synergy blah blah.<p>I don't think the individual turns of phrase are inherently problematic - but the process is triggering.
ItMs because Claude sprinkles these words as flavoring without aiding understanding. It feels like Claude thinks of metaphors that don’t actually mean anything (or maybe only makes sense to itself).
It's a waste of tokens to do it post-hoc instead of fixing it upstream, but when I see a wall of text I just prompt "TLDR;"