← Back to context

Comment by hombre_fatal

15 days ago

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?

Check out `print.ts` to see how "more LOC" doesn't mean "more polished"

  • 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.

    • The file is more than 5000 lines of code. The main function is 3000. Code comments make reference to (and depend on guarantees in connection with) the specific behavior of code in other files. Do I need to explain why that's bad?

      1 reply →

I think that’s why the author was comparing to to a finished 3D game.

  • 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".

    • 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.

      10 replies →