Top
Best
New

Posted by kiwieater 12 hours ago

The 100 hour gap between a vibecoded prototype and a working product(kanfa.macbudkowski.com)
222 points | 296 commentspage 4
jimnotgym 10 hours ago|
I have not been coding for a few years now. I was wondering if vibe coding could unstick some of my ideas. Here is my question, can I use TDD to write tests to specify what I want and then get the llm to write code to pass those tests?
kantselovich 3 hours ago||
TDD helps a lot, but it’s no guarantee - LLM is smart enough to “fake” the code to pass tests .

I’m working on project - a password manager, where I have full end to end test harnesses - cli client makes changes, sync them to the server and then observe the data in iOS app running in the emulator. More than once I noticed codex just hard coded expected values from the test harnesses directly into UI layout in iOS app to make the test pass…

Similar issues in the crypto layer - tests were written first , then code was written . During the review I noticed that the code was made to just pass the test - the logic was to check if signature values exists instead of checking if crypto signature is valid.

LLM can help with code reviews as well, but it has to be guided specifically what to look for for. This is with codex 5.4 model

_heimdall 10 hours ago|||
That's a great approach, though I'd also recommend setting up a strong basis for linting, type checking, compilation, etc depending on the language. An LLM given a full test suite and guard rails of basic code style rules will likely do a pretty good job.

I would find it a bit tricky to write a full test suite for a product without any code though. You'd need to understand the architecture a bit and likely end up assuming, or mocking, what helpers, classes, config, etc will be built.

potro 10 hours ago|||
You absolutely can. This is one of recommended directions with agentic coding. But you can go farther and ask llm to write tests too. The review/approve them.
mlaretallack 10 hours ago|||
Yes, I mostly do spec driven developement. And at the design stage, I always add in tests. I repeat this pattern for any new features or bug fixes, get the agent to write a test (unit, intergration or playwright based), reproduce the issue and then implement the change and retest etc... and retest using all the other tests.
linsomniac 9 hours ago|||
To expand on the "Yes": the AI tools work extremely well when they can test for success. Once you have the tests as you'd like them, you may want to tell the LLM not to modify the tests because you can run into situations where it'll "fix" the tests rather than fixing the code.
__mp 9 hours ago|||
yes. depending on the techstack your experience might be better or worse. HTML/CSS/React/Go worked great, but it struggled with Swift (which I had no experience in).
faeyanpiraat 10 hours ago||
Yes
hashmap 6 hours ago||
if something like a popup appears that i didnt ask the page to do i snap close the page and never look at it again
davispeck 6 hours ago||
The bottleneck seems to have shifted.

Before LLMs the slow part was writing code. Now the slow part is validating whether the generated code is actually correct.

dijksterhuis 3 hours ago|
... writing the code was never the slow part. correctness (according to what people actually needed) has always been the slow part.
risyachka 11 hours ago||
>> people who say they "vibecoded an app in 30 minutes" are either building simple copies of existing projects,

those are not copies, they aren't even features. usually part of a tiny feature that barely works only in demo.

with all vibe coding in the world today you still need at least 6 months full time to build a nice note taking app.

If we are talking something more difficult - it will be years - or you will need a team and it will still take a long time.

Everything less will result in an unusable product that works only for demo and has 80% churn.

ianm218 11 hours ago||
Can you expand on this? You definitely don’t need 6 months for a note taking app to be useable it is more you need to compete with the state of the art right
utopiah 10 hours ago|||
I'd argue you need between 6 minutes and 6 years.

It depends entirely on what you want. You can literally code a JavaScript 1-liner that will make a <textarea> then put the content back in the URL and it will work serverless on pretty much any platform with a Web browser.

You can also write a note taking app that will be federated yet private, that will have its own scripting language, etc. I mean you can yak-shave your way to write your own OS or even designing your own CPU for that.

So... I'm not sure that metric, time, means much without a proper context, including who does it. It's quite different if to do that, regardless of the tooling used, if you are a professional developer, designer, fullstack dev, prototypist, PM, marketer, writer, etc.

risyachka 10 hours ago|||
> Can you expand on this?

sure. does your note taking app supports formatting? you don't need it today. you will need it at some point. images? same.

does it handle file corruption etc? no? then its pretty much useless.

does it work across devices? in modern world, again, it is pretty much useless without it

it works across devices? then it needs hosting. if it is hosted it needs auth, it needs backups

you can go on for ever.

the bar for very minimal note taking app that you actually will use is very high, with other software it is even higher.

and this is not even state of art, this is must haves

ianm218 9 hours ago||
Obsidian is super popular and is generally local first and device specific.

And even so if your starting a note taking app most of those problems like file corruption and image support are largely solved problems. There is also the benefit of being able to reference tons of open source implementations.

I think one month to notion like app that is prod ready if you just need Auth + markdown + images + standard text editing

weird-eye-issue 10 hours ago|||
What universe do you live in
hmmmmmmmmmmmmmm 10 hours ago|||
>with all vibe coding in the world today you still need at least 6 months full time to build a nice note taking app.

Bad example, note apps loaded with features are anti-productive and are for people who treat note taking as a hobby itself.

You have Obsidian anyway if you want something open source to work with.

glst0rm 8 hours ago|||
I don't disagree, but I found it ironic I built ZenPlan, my ideal hybrid task/notetaking app, in about 50 hours with Claude Code this month after being frustrated with notebook and task management sprawl in OneNote. www.getzenplan.com
Ekaros 10 hours ago||||
Ah, note taking as hobby finally explains to me why these apps seem so popular. I don't think I have ever considered that I need one. And it to be something that shouldn't be fully solved multiple times now. But it really being hobby does kinda make the point for me.
benwaffle 8 hours ago|||
obsidian isn't open source
margalabargala 10 hours ago||
You seem to be making the assumption that "app" means "sellable product", rather than "one off that works for me". It doesn't.

When everyone is able to make their own one off prototype in 30 minutes, no one will pay for the thing that took someone 6 months.

risyachka 10 hours ago||
whatever you prototype - the one who built it in 6 month will have economy of scale to make it cheaper than your diy solution, and because they serve many customers and developed it for 6 months - their product will be 100x better than the one you diy

there is very very rare use case when diy makes sense. in 99% of cases its just a toy that feels nice as you kinda did it. but if you factor in the time etc it is always costs 100x more than $5/month you could usually buy

margalabargala 8 hours ago||
Based on your earlier comment and your last paragraph, your impression of AI vibe coding ability is at least a year out of date.

In late 2024 it might have taken 6 months. Today, two weeks, maybe 3.

quickrefio 9 hours ago||
The speed of prototyping right now is wild.

The interesting shift seems to be that building the first version is no longer the bottleneck — distribution, UX polish and reliability are.

esafak 10 hours ago||
Look at the screenshots to understand what the author means by 'product'.
stavros 10 hours ago||
We don't need to shit on someone who shared their experiences and thoughts.
Lerc 9 hours ago||
I agree with you point, but I do look sidelong at the number of points the post has. It is, at the very least, unexpected.
spiderfarmer 10 hours ago||
This would have been generic slop if it wasn't for AI.
jonstewart 11 hours ago||
Woodworking is an analogy that I like to use in deciding how to apply coding agents. The finished product needs to be built by me, but now I can make more, and more sophisticated, jigs with the coding agents, and that in turn lets me improve both quality and quantity.
mahirsaid 7 hours ago||
i found that to be effective is to use multiple AI tools at once. I'm using Gemini newest model i cant think of at the top of my head right now, and Claude newest model. i have each for its purpose with rustover IDE to speed things up. Rustover is particularly helpful because of how rust is worked with, the constant cargo cli commands and database interactions right in the IDE. i know visual code has this to a certain limit but IMO i prefer Rustover. Using multiple models is because i know what each one is good at and how my knowledge works with their output, makes my life way easier and drives frustration down, which is needed when you need creativity at the forefront. This is being said it def helps to know what you are doing if not 100% at least 60% of the things you are asking the models to do for you, I have caught mistakes and know when a model might make mistake which im fine with, sometimes i just want to see how something is done like the structure for a certain function of crate as im reading cargo.io doc constantly to learn what im doing.

There are plenty of ways to code and use code, which-ever works for you is good just improve on it and make it more effective. I have multiple screens on my computer, i don't like jumping back and fourth opening tabs and browsers so i have my set up the best way that works for me. As for the AI models, they are not going to be that helpful to you if you don't understand why its doing what its doing in a particular function or crate (in case of rust) or library. I imagine the the over the top coder that has years of experience and multiple knowledge in various languages and depth knowledge in libraries, using the same technique he can replace a whole Department by himself technically.

StilesCrisis 7 hours ago||
It seems like the entire "product" here is just a ChatGPT system prompt: "combine this image of a person with this image of a dinosaur".

The only thing he needed to code was an NFT wrapper, which presumably is just forking an existing NFT wholesale.

The interesting, user-facing part of the project isn't code at all! It's just an HTML front end on someone else's image generator and a "pay me" button.

Very disappointing.

quater321 9 hours ago|
It already starts with BS. Yes there are apps you can build in 30 minutes and they are great, not buggy or crap as he says it. And there are apps you need 1 hour or even weeks. It depends on what you want to build. To start off by saying that every app build in 30 minutes is crap, simply shows that he did not want to think about it, is ignorant or he simply wanted to push himselve higher up by putting others down. At this point, every programmer who claims that vibecoding doesn't make you at least 10 times more productive is simply lying or worst, doesn't know how to vibe code.
More comments...