top | item 47020860

(no title)

appplication | 15 days ago

This was essentially my experience vibe coding a web app. I got great results initially and made it quite far quickly but over time velocity exponentially slowed due to exactly this cognitive debt. Took my time and did a ground up rewrite manually and made way faster progress and a much more stable app.

You could argue LLMs let me learn enough about the product I was trying to build that the second rewrite was faster and better informed, and that’s probably true to some degree, but it also was quite a few weeks down the drain.

discuss

order

Mavvie|15 days ago

That makes sense, but surely there's a middle ground somewhere between "AI does everything including architecture" and writing everything by hand?

layer8|14 days ago

I wonder about that. A general experience in software engineering is that abstractions are always leaky and that details always end up mattering, or at least that it’s very hard to predict which details will end up mattering. So there may not be a threshold below which cognitive debt isn’t an issue.

appplication|15 days ago

Of course! The original attempt wasn’t really AI doing everything. I was writing much of the code but letting AI drive general patterns since I was unfamiliar with web dev. Now, it’s also not entirely without AI, but I am very much steering the ship and my usage of AI is more “low context chat” than “agentic”. IMO it’s a more functional way to interface with AI for anyone with solid engineering skills.

r_lee|15 days ago

I think the sweet spot is to make the initial stuff yourself and then extend or modify somewhat with LLMs

it acts as a guide for the LLM too, so it doesn't have to just come up with everything on its own in terms of style or design choices in terms of consistency I'd say?

mattmanser|14 days ago

I think it's closer to "doing everything by hand" than you'd expect.

For me, anyway.

I design as I code, the architecture becomes more obvious as I fill in the detail.

So getting AI to do bits, really means getting AI to do the really easy bits.