Comment by jumploops

Comment by jumploops a day ago

31 replies

> It takes me at least the same amount of time to review code not written by me than it would take me to write the code myself, if not more.

As someone who uses Claude Code heavily, this is spot on.

LLMs are great, but I find the more I cede control to them, the longer it takes to actually ship the code.

I’ve found that the main benefit for me so far is the reduction of RSI symptoms, whereas the actual time savings are mostly over exaggerated (even if it feels faster in the moment).

adriand a day ago

Do you have to review the code? I’ll be honest that, like the OP theorizes, I often just spot review it. But I also get it to write specs (often very good, in terms of the ones I’ve dug into), and I always carefully review and test the results. Because there is also plenty of non-AI code in my projects I didn’t review at all, namely, the myriad open source libraries I’ve installed.

  • jumploops a day ago

    Yes, I’m actually working on an another project with the goal of never looking at the code.

    For context, it’s just a reimplementation of a tool I built.

    Let’s just say it’s going a lot slower than the first time I built it by hand :)

  • hatefulmoron a day ago

    It depends on what you're doing. If it's a simple task, or you're making something that won't grow into something larger, eyeballing the code and testing it is usually perfect. These types of tasks feel great with Claude Code.

    If you're trying to build something larger, it's not good enough. Even with careful planning and spec building, Claude Code will still paint you into a corner when it comes to architecture. In my experience, it requires a lot of guidance to write code that can be built upon later.

    The difference between the AI code and the open source libraries in this case is that you don't expect to be responsible for the third-party code later. Whether you or Claude ends up working on your code later, you'll need it to be in good shape. So, it's important to give Claude good guidance to build something that can be worked on later.

    • swader999 an hour ago

      Vertical slice architecture keeps you out of the corner.

    • vidarh 18 hours ago

      If you let it paint you into a corner, why are you doing so?

      I don't know what you mean by "a lot of guidance". Maybe I just naturally do that, but to me there's not been much change in the level of guidance I need to give Claude Code or my own agent vs. what I'd give developers working for me.

      Another issue is that as long as you ensure it builds good enough tests, the cost of telling it to just throw out the code it builds later and redo it with additional architectural guidance keeps dropping.

      The code is increasingly becoming throwaway.

      • hatefulmoron 17 hours ago

        > If you let it paint you into a corner, why are you doing so?

        What do you mean? If it were as simple as not letting it do so, I would do as you suggest. I may as well stop letting it be incorrect in general. Lots of guidance helps avoid it.

        > Maybe I just naturally do that, but to me there's not been much change in the level of guidance I need to give Claude Code or my own agent vs. what I'd give developers working for me.

        Well yeah. You need to give it lots of guidance, like someone who works for you.

        > the cost of telling it to just throw out the code it builds later and redo it with additional architectural guidance keeps dropping.

        It's a moving target for sure. My confidence with this in more complex scenarios is much smaller.

cbsmith a day ago

There's an implied assumption here that code you write yourself doesn't need to be reviewed from a context different from the author's.

There's an old expression: "code as if your work will be read by a psychopath who knows where you live" followed by the joke "they know where you live because it is future you".

Generative AI coding just forces the mindset you should have had all along: start with acceptance criteria, figure out how you're going to rigorously validate correctness (ideally through regression tests more than code reviews), and use the review process to come up with consistent practices (which you then document so that the LLM can refer to it).

It's definitely not always faster, but waking up in the morning to a well documented PR, that's already been reviewed by multiple LLMs, with successfully passing test runs attached to it sure seems like I'm spending more of my time focused on what I should have been focused on all along.

  • Terr_ a day ago

    There's an implied assumption here that developers who end up spending all their time reviewing LLM code won't lose their skills or become homicidal. :p

    • cbsmith 21 hours ago

      Fair enough. ;-)

      I'm actually curious about the "lose their skills" angle though. In the open source community it's well understood that if anything reviewing a lot of code tends to sharpen your skills.

      • Terr_ 20 hours ago

        I expect that comes from the contrast and synthesis between how the author is anticipating things will develop or be explained, versus what the other person actually provided and trying to understand their thought process.

        What happens if the reader no longer has enough of that authorial instinct, their own (opinionated) independent understanding?

        I think the average experience would drift away from "I thought X was the obvious way but now I see by doing Y you were avoid that other problem, cool" and towards "I don't see the LLM doing anything too unusual compared to when I ask it for things, LGTM."

  • ramraj07 12 hours ago

    That's a great perspective but its possible you're in a thread where no one wants to believe AI actually helps with coding.

sagarpatil a day ago

I always use Claude Code to debug issues, there’s no point in trying to do this yourself when AI can fix it in minutes (easy to verify if you write tests first) o3 with new search can do things in 5 mins that will take me at least 30 mins if I’m very efficient. Say what you want but the time savings is real.

  • layer8 16 hours ago

    Tests can never verify the correctness of code, they only spot-check for incorrectness.

  • susshshshah 21 hours ago

    How do you know what tests to write if you don’t understand the code?

    • 9rx 21 hours ago

      Same way you normally would? Tests are concerned with behaviour. The code that implements the behaviour is immaterial.

    • wiseowise 21 hours ago

      How do you do TDD without having code in the first place? How do QA verifies without reading the source?

    • adastra22 20 hours ago

      I’m not sure I understand this statement. You give your program parameters X and expect result Y, but instead get Z. There is your test, embedded in the problem statement.

    • [removed] 21 hours ago
      [deleted]
mleonhard a day ago

I solved my RSI symptoms by keeping my arms warm all the time, while awake or asleep. Maybe that will work for you, too?

  • jumploops a day ago

    My issue is actually due to ulnar nerve compression related to a plate on my right clavicle.

    Years of PT have enabled me to work quite effectively and minimize the flare ups :)

  • [removed] a day ago
    [deleted]
hooverd a day ago

Is anybody doing cool hybrid interfaces? I don't actually want to do everything in conversational English, believe it or not.

  • jumploops a day ago

    My workflow is to have spec files (markdown) for any changes I’m making, and then use those to keep Claude on track/pull out of the trees.

    Not super necessary for small changes, but basically a must have for any larger refactors or feature additions.

    I usually use o3 for generating the specs; also helpful for avoiding context pollution with just Claude Code.

    • adastra22 20 hours ago

      I do similar and find that this is the best compromise that I have tried. But I still find myself nodding along with OP. I am more and more finding that this is not actually faster, even though it certainly seems so.

  • bdamm a day ago

    Isn't that what Windsurf or Cursor are?