Hacker News new | ask | show | jobs
by slyzmud 4 days ago
I've working on a small side project with a non technical friend for a couple months. It's really small but we are selling it to some clients.

The other day my friend discovered lovable and vibe coded an entire app and he started feeling like I was scamming him. Why would I take weeks or months in building our app if he could do it on hours?

He might be stubborn but ended up blindly believing me, but I couldn't find a good way of explaining that a prototype wasn't a final product. It has lots of errors, doesn't consider edge cases and it's impossible to fix if something breaks. Of course what I said didn't mean much because he didn't understand what I was talking about.

How do you communicate this problem? That there's much more than what you see in a frontend? Seems really hard to explain to non technical people.

3 comments

It's the same problem we've had all along though, right? Maybe it's magnified now but the essence of the confusion is the same.
Show it. Pick a missed edge case or breaking point in his app and demonstrate the pain the customer is going to encounter. You don't have to live in the realm of hypotheticals. He has given you a concrete, but flawed, implementation that offers proof of your message.
I did it and he "fixed" it with AI, making him even more convinced of it.

I'm pretty sure something else must have broken but didn't see it immediately.

I guess eventually it will fall from its own weight but I'm surprised how far he was able to get.

You are convincing me of it too. It is clear that your friend still needs your system thinking to point out edge cases and whatnot, but if you applied that by spending a couple of days adding a test suite to provide the missing validation, it seems like together you could have a pretty robust product built in less than a week. What justifies a couple of months?
let them launch and fail

it’s the only way they learn

"Prompt more" is my default answer now.

Your 80% of the way there? Keep going!

If they're satisfied with the result, I save myself a reluctant client.

If they realize the difference, I save myself an explanation and we can start talking about good foundations.

they don't know that it'll break, that's the problem of course
I think the point is that those are the clients you don't want, so you encourage them to select themselves out of working with you. The fact that it might be bad for their own business is not relevant to you as a consultant.
I think it's normal for non-technical people to have no idea of how things work and of what to expect. It's our responsibility to communicate. And, within reason, theirs to listen.
This can only happen if they have reason or motivation to trust the expertise, and an expectation that the relationship can be fruitful.

Like you said, they must at least be willing to listen.