A piece of advice that took me longer than it should have to actually follow: if you're not slightly embarrassed by your first version, you spent too long on it before anyone else saw it.

Early in a project it's tempting to keep polishing privately until the thing feels presentable — fixing the rough edges, handling the cases nobody's hit yet, making the interface feel finished before a single other person has used it. That instinct feels like diligence. Usually it's just avoidance of the discomfort of being watched while something is still unfinished.

The first version's job isn't to be good. It's to be honest about what the idea actually is once it exists outside your head. Ideas change shape substantially the moment they meet a real interaction, a real dataset, or a second person's expectations — and no amount of private polishing substitutes for that contact.

The projects on this site that turned out best all had embarrassing first versions I showed to someone too early by most people's instincts. The embarrassment was the signal that I'd actually shipped something real instead of a plan disguised as a finished product.

This doesn't mean shipping careless work. It means separating 'not embarrassing' from 'not ready for feedback' — those are different bars, and confusing them is usually what stalls a first version for months longer than it needed.