| |
| ▲ | johnisgood 2 hours ago | parent | next [-] | | All of them are really, REALLY bad. | | |
| ▲ | surajrmal an hour ago | parent [-] | | Bad by whose definition? They work really well in my experience. They aren't perfect but the amount of hand holding has gone down dramatically and you can fix any glaring problems with a code review at the end. I work on a multimillion line code base which does not use any popular frameworks and it does a great job. I may be benefiting from the fact that the codebase is open source and all models have obviously been trained on it. | | |
| ▲ | bdhtu 22 minutes ago | parent | next [-] | | It takes 10 seconds for Gemini CLI to load. 10 seconds to show an input field. This is for a CLI program. For comparison, it takes me less time to load Chrome and go to gemini.google.com. | |
| ▲ | causal 12 minutes ago | parent | prev | next [-] | | > They work really well in my experience. Yeahhh strong disagree there, I find Codex and CC to be buggy as hell. Desktop CC is very bad and web version is nigh unusable. | |
| ▲ | oblio an hour ago | parent | prev [-] | | At least Gemini and Claude constantly break down with scrolling in various Linux terminals, something which was solved by countless TUIs decades ago. I think a lot of the people prasing Claude & co are on Macs. | | |
| ▲ | causal 11 minutes ago | parent | next [-] | | I'm on a mac! And I still find bugs on a regular basis... | |
| ▲ | johnisgood an hour ago | parent | prev | next [-] | | Most of their issues have been solved a long time ago, with 1000x less code. It is depressing at this point. I really had no clue IT was in the shitters this much. I knew it was theatrical but I had no idea that it was by this much. | |
| ▲ | samusiam an hour ago | parent | prev [-] | | I haven't seen the scrolling glitch in months, where previously it was happening multiple times a day. Also haven't seen anyone complain about it in quite some time. Pretty sure they have resolved that. |
|
|
| |
| ▲ | lelanthran an hour ago | parent | prev [-] | | > Claude Code's 500k LOC doesn't seem out of the ordinary. Aren't all the other products also vibe-coded? "All vibe-coded products look like this" doesn't really seem to answer the question "Why is it so damn large?" It's a repl, that calls out to a blackbox/endpoint for data, and does basic parsing and matching of state with specific actions. I feel the bulk of those lines should be actions that are performed. Either this is correct or this is not: 1. If the bulk of those lines implement specific and simple actions, why is it so large compared to other software that implements single actions (coreutils, etc) 2. If the actions constitute only a small part of the codebase, wtf is the rest of it doing? | | |
| ▲ | samusiam an hour ago | parent [-] | | You're complaining about vibe coding while also complaining about how you "feel" about the code. Do you see the irony in that? | | |
| ▲ | lelanthran an hour ago | parent | next [-] | | >> I feel the bulk of those lines should be actions that are performed. Either this is correct or this is not: > You're complaining about vibe coding while also complaining about how you "feel" about the code. Do you see the irony in that? Where did I complain about how I feel about the actual code? I have feelings, negative ones, about the size of the code given the simple functionality it has, but I have no feelings on the code because I did not look at the code. | |
| ▲ | arandomhuman 34 minutes ago | parent | prev [-] | | Are you ESL by any chance? You’re missing the forest for the trees. |
|
|
|
| |
| ▲ | ernst_klim 3 hours ago | parent | next [-] | | Well FFmpeg is roughly 1500k, but it's C+Asm and it's dozens of codecs and pretty complex features. SBCL is around 500k I guess. I'm not saying that this is necessarily too much, I'm genuinely asking if this is a bloat or if it's justified. | |
| ▲ | forgotpwd16 3 hours ago | parent | prev | next [-] | | Other notable agents' LOC: Codex (Rust) ~519K, Gemini (TS) ~445K, OpenCode (TS) ~254K, Pi (TS) ~113K LOC. Pi's modular structure makes it simple to see where most of code is. Respectively core, unified API, coding agent CLI, TUI have ~3K, ~35K, ~60K, ~15K LOC. Interestingly, the just uploaded claw-code's Rust version is currently at only 28K. edit: Claude is actually (TS) 395K. So Gemini is more bloat. Codex is arguable since is written in lower-level language. | |
| ▲ | troupo 4 hours ago | parent | prev [-] | | It's a TUI API wrapper with a few commands bolted on. I doubt it needs to be more than 20-50kloc. You can create a full 3D game with a custom 3D engine in 500k lines. What the hell is Claude Code doing? | | |
| ▲ | neurostimulant 3 hours ago | parent | next [-] | | Just check the leaked code yourself. Two biggest areas seem to be the `utils` module, which is a kitchen sink that covers a lot of functionality from sandboxing, git support, sessions, etc, and `components` module, which contains the react ui. You could certainly build a cli agent with much smaller codebase, with leaner ui code without react, but probably not with this truckload of functionality. | | |
| ▲ | cogman10 44 minutes ago | parent [-] | | They are doing some strange "reinvent the wheel" stuff. For example, I found an implementation of a PRNG, mulberry32 [1], in one of the files. That's pretty strange considering TS and Javascript have decent PRNGs built into the language and this thing is being used as literally just a shuffle. [1] https://github.com/AprilNEA/claude-code-source/blob/main/src... | | |
| ▲ | neurostimulant 10 minutes ago | parent [-] | | Well, at least that confirms they weren't lying when they said all recent updates to claude code were made by claude. You certainly won't do this stuff if you were writing the code yourself. |
|
| |
| ▲ | hombre_fatal 3 hours ago | parent | prev | next [-] | | Software doesn’t end at the 20k loc proof of concept though. What every developer learns during their “psh i could build that” weekendware attempt is that there is infinite polish to be had, and that their 20k loc PoC was <1% of the work. That said, doesn't TFA show you what they use their loc for? | | |
| ▲ | sarchertech 2 hours ago | parent | next [-] | | I think that’s why the author was comparing to to a finished 3D game. | | |
| ▲ | hombre_fatal 2 hours ago | parent [-] | | I guess because you see 3D stuff in a 3D game instead of text, people assume that it must be the most complex thing in software? Or because you solve hard math problems in 3D, those functions are gonna be the most loc? It's a completely different domain, e.g. very different integration surface area and abstractions. Claude Code's source is dumped online so there's probably a more concrete analysis to be had than "that sounds like too many loc". | | |
| ▲ | sarchertech 2 hours ago | parent [-] | | It is a different domain but that wasn’t your argument. Your argument was that someone was comparing it to a POC when in fact they were comparing to a finished product. Also a AAA game (with the engine) with physics, networking, and rendering code is up there in terms of the most complex pieces of software. | | |
| ▲ | hombre_fatal 2 hours ago | parent [-] | | They just claimed that you can build a 3D game in 500k loc, thus Claude Code shouldn't use so many loc. They/you didn't render the argument for that. For example, without looking at the code, the superstition also works in the opposite direction: Claude Code is an interface to using AI to do any computer task while a 3D game just lets you shoot some bad guys, so surely the 3D game must be done in fewer loc. That's equally unsatisfying. You'd have to be more concrete than "sounds like a lot". | | |
| ▲ | lelanthran an hour ago | parent | next [-] | | > Claude Code is an interface to using AI to do any computer task Shouldn't interfaces be smaller than the implementation? | |
| ▲ | troupo an hour ago | parent | prev [-] | | > Claude Code is an interface to using AI to do any computer task Claude Code is quite literally a wrapper around a few APIs. At one point it needed 68GB of RAM to run and requires 11ms to "lay a scene graph" to display a few hundred characters on screen. All links here: https://news.ycombinator.com/item?id=47598488 > while a 3D game just lets you shoot some bad guys, so surely the 3D game must be done in fewer loc. Yes, most games should be done in fewer loc |
|
|
|
| |
| ▲ | mpalmer 2 hours ago | parent | prev [-] | | Check out `print.ts` to see how "more LOC" doesn't mean "more polished" | | |
| ▲ | hombre_fatal 2 hours ago | parent [-] | | Okay, I'm looking at it. Now what? This file is exactly what I'm talking about. Take the loadInitialMessage function: It's encumbered with real world incremental requirements. You can see exactly the bolted-on conditionals where they added features like --teleport, --fork-session, etc. The runHeadlessStreaming function is a more extreme version of that where a bunch of incremental, lateral subsystems are wired together, not an example of superfluous loc. |
|
| |
| ▲ | spiderfarmer 4 hours ago | parent | prev | next [-] | | Comments like these remind me of the football spectators that shout "Even I could have scored that one" when they see a failed attempt. Sure. You could have. But you're not the one playing football in the Champions League. There were many roads that could have gotten you to the Champions League. But now you're in no position to judge the people who got there in the end and how they did it. Or you can, but whatever. | | |
| ▲ | boomskats 4 hours ago | parent | next [-] | | I don't think this is warranted given that the comment you're criticising is simply expressing an opinion explicitly solicited by the comment it's responding to. | |
| ▲ | sarchertech 2 hours ago | parent | prev | next [-] | | It’s more like “Player A is better than Player B” coming from a professional player in a smaller league who is certainly qualified to have that opinion. | |
| ▲ | vardalab 3 minutes ago | parent | prev | next [-] | | Yes, exactly. I like this analogy. I am surprised the level of pearl clutching in these discussions on Hacker News. Everybody wants to be an attention sharecropper, lol. | |
| ▲ | troupo 3 hours ago | parent | prev [-] | | > Sure. You could have. But you're not the one playing football in the Champions League. The only reason people are using Claude Code is because it's the only way to use their (heavily subsidized) subscription plans. People who are okay with using and paying for their APIs often opt out for other, better, tools. Also, analogies don't work. As we know for a fact that Claude Code is a bloated mess that these "champions league-level engineers" can't fix. They literally talk about it themselves: https://news.ycombinator.com/item?id=47598488 (they had to bring in actual Champions League engineers from bun to fix some of their mess). | | |
| ▲ | spiderfarmer 13 minutes ago | parent [-] | | "Even I would have scored that goal"
==
"I would never ever have created a bloated mess like Anthropic" You just repeat the same statement. That bloated mess is what got them to the Champions League. They did what was necessary to get them here. And they succeeded so far. But hey, according to some it can be replicated in 50k lines of wrapper code around a terminal command, so for Anthropic it's just one afternoon of vibe coding to get rid of this mess. So what's the problem? /s |
|
| |
| ▲ | criley2 4 hours ago | parent | prev [-] | | Honest question: Why does it matter? They got the product shipped and got millions of paying customers and totally revolutionized their business and our industry. Engineers using LOC as a measure of quality is the inverse of managers using LOC as a measure of productivity. | | |
| ▲ | dandellion 3 hours ago | parent | next [-] | | More code means more entropy, more room for bugs, harder to find issues, more time to fix, more attack surface, more memory used, more duplication, more inconsistencies... I bet you at some point we'll get someone reporting how AI performance deteriorates as the code base grows, and some blog post about how their team improved the success of their AI by trimming the code base down to less than 100k LOC or something like that. The principles of good software don't suddenly vanish just because now it's a machine writing the code instead of a human, they still have to deal with the issues humans have for more than half a century. The history of programming is new developers coming up with a new paradigm, then rediscovering all the issues that the previous generation had figured out before them. | | |
| ▲ | criley2 3 hours ago | parent [-] | | The history of programming is also each generation writing far less performant code than the one before it. The history of programming is each generation bemoaning the abstractions, waste and lack of performance of the code of the next generation. It turns out that there is a tradeoff in code between velocity and quality that smart businesses consider relative to hardware cost/quality. The businesses that are outcompeting others are rarely those who have the highest quality code, but rather those that are shipping quickly at a quality level that is satisfactory for current hardware. | | |
| ▲ | sarchertech 3 hours ago | parent | next [-] | | > far less performant code than the one before it. That worked because of rapid advancements in CPU performance. We’ve left that era. It’s about more than performance. Code is and always has been a liability. Even with agents, you start seeing massive slowdowns with code base size. It’s why I can nearly one shot a simple game for my kid in 20 minutes with Claude, but using it at work on our massive legacy codebase is only marginally faster than doing it by hand. | |
| ▲ | dandellion 3 hours ago | parent | prev [-] | | You asked why the size of the code matters, I gave you the answer. If you want to ramble about the non technical aspects of software development talk to someone else, I'm not interested. | | |
| ▲ | criley2 2 hours ago | parent [-] | | I asked a rhetorical question to get the reader to think about a topic. I was not looking for a rote recitation of a well-known textbook answer. Maybe you should not be on the comment section of an engineering website if you find discussion so offensive. |
|
|
| |
| ▲ | GuB-42 an hour ago | parent | prev | next [-] | | Among the hundreds of thousands of lines of code that Anthropic produced was one that leaked the source code. It is likely to be a config file, not part of the Claude Code software itself, but it still something to track. The more lines of code you have the more likely there is for one of them to be wrong and go unnoticed. It results in bugs, vulnerabilities,... and leaks. | |
| ▲ | raincole 4 hours ago | parent | prev | next [-] | | It doesn't. LoC is only meaningful when you use it to belittle others' code. | | | |
| ▲ | sarchertech 3 hours ago | parent | prev | next [-] | | The reason it’s not useful as a measure of productivity is because it’s measure of complexity (not directly, but it’s correlated). But it tells you nothing about whether that complexity was necessary for the functionality it provides. But given that we know the functionality of Claude Code, we can guess how much complexity should be required. We could also be wrong. >Why does it matter? If there’s massively more code than there needs to be that does matter to the end user because it’s harder to maintain and has more surface area for bugs and security problems. Even with agents. | |
| ▲ | viktorcode 2 hours ago | parent | prev | next [-] | | More bugs. More costly maintenance. | |
| ▲ | blantonl 3 hours ago | parent | prev | next [-] | | Exactly. Imagine if Claude Code was a PHP script. Some folks would lose their damn minds | |
| ▲ | troupo 3 hours ago | parent | prev [-] | | > Honest question: Why does it matter? Because it's unmaintainable slop that they themselves don't know how to fix when something happens? https://news.ycombinator.com/item?id=47598488 | | |
| ▲ | sumtechguy 2 hours ago | parent | next [-] | | It will be exactly that. But that is a 'them' problem. I can look at it a go 'that looks like a bad idea' but they are the ones who have to live with it. At some point someone will probably take their LLM code and repoint it at the LLM and say 'hey lets refactor this so it uses less code is easier to read but does the same thing' and let it chrun. One project I worked on I saw one engineer delete 20k lines of code one day. He replaced it with a few lines of stored procedure. That 20k lines of code was in production for years. No one wanted to do anything with it but it was a crucial part of the way the thing worked. It just takes someone going 'hey this isnt right' and sit down and fix it. | | |
| ▲ | troupo an hour ago | parent [-] | | > But that is a 'them' problem. I When a TUI requires 68 GB of RAM to run, or when they spend a week not being able to find a bug that causes multiple people to immediately run out of tokens, it's not a "them" problem. |
| |
| ▲ | 3 hours ago | parent | prev [-] | | [deleted] |
|
|
|
|