dexterlagan 2 days ago

I feel ya, but there's a better way. I've been writing detailed specs to direct LLMs, and that's what changed everything for me. I wrote about it at length: https://www.cleverthinkingsoftware.com/spec-first-developmen...

  • skydhash 11 hours ago

    The issue with this is that code is the final form of specs, but fit for machine execution. Coding is mostly f(a, b, c, d, e, …) where all the variables are specifications. Iterating on specs is tweaking individual variables. You’re still missing the broader interactions between them, and sometimes, the formula itself changes (discarding some variables and getting new ones). And as soon as you hit production, the function is recursive (code is part of the things to take into account)

    So, specs is more like an historical archive of decisions taken. I prefer to take a change request (ticket) transform it into a list of requirements, then apply that against the code rather than iterating through old specs in order to produce a new version of the code.

    So it becomes f(z, k) where z is the specs for the change and k the old code, instead of f(a, b, c, …, z) (without k) where a and the others are updated specs and z is the new one.

    ADDENDUM

    In other words, specs are like memos while the code is the company policy handbook. No one edits past memos, you just issue new one, and then edit the handbook.

    So I rather have code versions (git commits, …) that links to change requests, which link to discussion and analysis. Not dealing with a pile of documents.

  • Avalaxy 15 hours ago

    Interesting read! My personal experience with Cursor aligns with this. The initial result of my prompt was stunningly good, but adjusting the code afterwards was not a great time. It also aligns with the software 3.0 concept pitched by Andrej Karpathy, making the english language (or other natural language) the new 'code'.

  • android521 a day ago

    That's crazy. I would rather write code than spec

    • sodothat 3 hours ago

      So boot your Rpi and do that

      I’d rather shared infrastructure fit a stability and correctness spec than fit the whims of some random programmers throwing a fit and refusing to adapt.

      I suppose you’re fine with bridges built haphazardly and airplanes with doors that fall off.

      There’s real infrastructure under the software that powers critical logistics. Such systems really should just be simple and straightforward.

      You want ornate meta software structures? Have at it on your personal laptop like a proper h4xx0r

      If you’re a real practitioner of the craft you’ll do it for free in your basement. If you’re just trying to unicorn you’re just a traditional capitalist and that’s boring.

joshstrange a day ago

For me, Copilot is the sweet spot (or insert your favorite auto-complete tool). It saves me significant time when coding and I’ve gotten really good at knowing when it pause for 1-2 seconds and then have it spit out the suggestion I hoped it would.

Agentic workflows are cool and have their place but essentially turn me into a full time code reviewer. Sometimes that’s acceptable/ok, sometimes I don’t like it. Essentially, if the agent gets even slightly off the path I want it on, I need to just do it myself. I give up on trying to prompt my out of a mistake it made. You get stuck thinking “one more prompt/round and it will fix the problem and everything will be perfect”, then you find yourself 4+ rounds in with the agent flip-flopping between 2 things it’s already tried.

obayesshelton 13 hours ago

I am not using Cursor as my IDE I typically get Claude or Gemini to give me feedback about a specific piece of code.

However, my biggest gripe with any of the LLMs or Tools is that they do not suggest package / library to solve my issue.

For example I wanted to do something with GEOJSON and it wrote a heap of code. In most cases for such things I would also use a well maintained and documented package.

I keep thinking that I need to write something that suggest a package / libary before writing code.

mittensc 2 days ago

I am in the same boat.

I don't need AI to generate code.

Pipelines are non existant (who wants useless code?, just make better abstractions)

Copy-and-paste code is non existant - taboo to duplicate, just find libraries to reuse within the project or write them.

I don't need it to write tests, I want to write tests myself to force myself to think of the problem.

Code base is large enough that it's generally useless for search (and old tools work much better)

And I don't see what else it would be useful for though I'm trying. (writing a class skeleton?, maybe?, but then, I can do that fast as well)

  • herbst 2 days ago

    From your examples the libraries are what AI is actually helpful for me.

    If I find any API I want to use I let the Claude built an API wrapper for me. Or any other specific issues that typically end up in a Lib.

    So a isolated, single purpose file that doesn't depend on any other files where the code base already includes similar files where it can steal the style from.

    This is a situation where it does really well usually without breaking anything.

    • mittensc 2 days ago

      Fair point, I'll give it a go to see for myself, thanks.

      Alternative, if it's web calls then openAPI and a specific generator will work faster long term... (write generator once then import swagger files for whatever you need or tell claude to generate the swagger if not available?)

      That would help with api changes longer term (just update swagger file, regen code and update where needed)

      If it's actual library calls (C/C++), then why would wrapper be needed?, doesn't add yet-anothet-layer that makes things more difficult to grasp?

      • herbst 2 days ago

        I am mostly coding with ruby so I constantly find myself wrapping APIs or Linux tools to get things done faster.

        Usually I just send a link to the API doc with a sentence or two to let it wrap one or two functions leading to small, specialized and mostly efficient wrappers without overhead. Easy to fix should something change.

        It's just a random aspect where I find AI to work really well for coding (for me).

d00mB0t 2 days ago

I think of AI as a better version of Google. There's a lot of Hype around AI and productivity, I don't think it will make anyone a 10x programmer.

  • cookiemonsieur 2 days ago

    Exactly, for me it's just a glorified stack overflow.

    • skydhash 10 hours ago

      It’s more like a dangerous/annoying stack overflow, but useful enough that you still use it (when you get past the ethics of how it was made). But it’s not something I would pay for (I’d pay to be part of a programmer community or access to curated raw material like documentation (like MDN or the old Apple documentation))

  • jf22 a day ago

    What AI code gen tools have you tried?

  • paulcole a day ago

    How many 10x programmers have you known? How many 0.5x programmers have you known? Do you think AI can make a 0.5x programmer a 2x programmer?

throwaway843 a day ago

Everyone's answering about using it for coding and deep knowledge work.

But what about the opposite: all the other stuff that's surface? Today I had it fill out a calendar, to generate test data meeting specs, to do some simple translation, to proof some reading, to search.

If there's a task that can be directed and it takes less time to direct than do, it's a productivity gain.

  • skydhash 10 hours ago

    There are better and faster tools for those.

repsiace 2 days ago

I work daily in Cursor, producing around 200k lines of code per week, though only a small portion ends up being truly effective (still significantly more than what I could achieve on my own before). I think we need to adapt to these changes and focus on shaping better workflows to fully harness the potential of AI.

  • joshstrange 2 days ago

    That works out to 5K/hr (200k/5/8), that’s absurd verging on insane. It’s over a line of code a second.

    I’d fire someone who was putting out that “code”.

    Seriously, there is no way someone can review all that code so you must be solo (or at a place that doesn’t code review). If you aren’t reviewing your code then you are “vibe coding” (said with maximum derision) and what you are “building” is a house of cards.

    • repsiace a day ago

      200k is just the number of lines of code generated, but effectively being merged is probably at the level of a few thousand lines, and I'm certainly responsible for its quality.

    • BugheadTorpeda6 a day ago

      I totally agree with you but the people and processes that led to this are going to be defensive no doubt. It's been telling who has been adopting "AI" coding and why.

    • jf22 a day ago

      The discussions about AI code always devolve into "derision" comments like this.

      "You are a dumb vibe coder producing bad slop"

      You don't know anything about the code, the project, the person, but feel justified to insult and demean.

      • muzani 19 hours ago

        Anyone driving slower than me is an idiot and anyone driving faster than me is a maniac

      • joshstrange a day ago

        > 200k lines of code per week

        Do you seriously think that someone can write/review/maintain that?

        Either they are lying about the output or they _are_ creating slop, period.

        Ridiculous comments like that should _not_ go unchallenged, I wouldn't want younger-me seeing that and thinking it was normal or a good idea.

        • jf22 a day ago

          Yes, I do.

          You didn't challenge, you insulted.

          You can ask how they ensure quality, what the review process is like, what QA is like, how do humans keep up with that pace of change, etc.

          • BugheadTorpeda6 a day ago

            In this case, it deserves an insult. The answer to all of those hypotheticals is "you don't, it's impossible". Please, go ahead and tell us how you ensure all of those things. I would very much like to hear what you have to say because it will be groundbreaking for the whole industry, clearly. You have found the golden goose.

          • joshstrange a day ago

            >>> 200k lines of code per week

            >> Do you seriously think that someone can write/review/maintain that?

            > Yes, I do.

            Then we have nothing more to discuss. If someone says "I can fly by flapping my arms" and I can absolutely say "That's absurd", I'm not going to respond with "What technique do you use? How can you do that?" because it's patently absurd. I'm not going to engage, I'm going to call out what is a lie or someone who has deluded themselves into thinking they are actually creating something of value.

            • jf22 a day ago

              Framing being productive with AI code gen as being similar to a physically impossible process is as bad faith as you can get.

              • judahmeek 6 hours ago

                No, claims made without supporting evidence are as bad faith as it gets.

                Claims regarding productivity gains would require long-term studies involving multiple metrics to be credible.

                Until those exist, the benefits of AI code gen are basically as credible as MAHA pseudoscience.

        • BugheadTorpeda6 a day ago

          I'm reasonably certain that a lot of that sort of bullshit is literally just astroturfing by desperate AI companies. I know it happens but that doesnt mean there aren't people really going along with it.

  • mittensc 2 days ago

    Why do you need yo write that much?

    Is it all just throw away code to test out ideas?

    Would libraries to help abstract stuff and you writing a few lines at a higher lever be better?

    Since you throw away most of the code, could you design a bit before jumping to code and just develop something near desired solution?

  • boothby 2 days ago

    I've gotta ask. Who wants you to write that much code and why?

    • repsiace 2 days ago

      It's just one way of working. In reality, I only need a few thousand lines of effective code out of it. If I were to do it all on my own, it would likely take two to three times longer—perhaps with better or worse quality. While LLMs generate code incredibly fast, the full process of trial, error, and debugging takes more time. Additionally, since this involves multiple projects and contexts, a lot of junk code inevitably gets generated along the way.

      • mittensc 2 days ago

        > In reality, I only need a few thousand lines of effective code out of it. If I were to do it all on my own, it would likely take two to three times longer—perhaps with better or worse quality.

        Have you tried doing it on your own as comparison?

        Any lessons why that might be true?

        Are you missing some design/brainstorming stage that you are doing now by iterating through junk code and which might not be necessary?

        You might be right now, but you gain experience that you otherwise lose by delegating to the LLM. With experience the reverse might be true.

herbst 2 days ago

Auto complete actually saves me a lot time. Discussing and fixing architecture Claude has built often takes just as long as just building it. But tab/automcomplete is crazy.

(Especially for html layouts and repetitive changes)

ifonlyenigmax 2 days ago

For me, AI mostly simplifies life rather than complicates it. Definitely a productivity helper, even if it’s not magic.