Nothing set me back more than spending eight months making something feel 'ready' before ever talking to a real potential customer.
At the time, every little tweak felt productive. Polishing the UI, rewriting the about page, swapping colour palettes - it all looked like progress because nobody could reject it. But rejection is exactly what you need early on.
What I didn't realise: all that busywork was just a way to avoid the scary part - asking someone to actually pay for it. When I finally launched, I found out most of the features I'd obsessed over didn't matter to anyone. The real feedback only came after I started forcing uncomfortable conversations.
If I started from zero today, I'd set myself a hard deadline of six weeks max for a rough version. Then I'd force myself to go live and immediately line up 20 customer calls. No more polishing until someone has handed over money.
That's the one lesson that would've saved me months.