Hacker News new | ask | show | jobs
by greysteil 3073 days ago
It's tough, but really rewarding.

Technically, getting something that's polished enough that other people can use it is a higher bar than having something that works for you. In particular, you need to think about:

- Error handling (i.e., non-happy path flows). Your users won't be able to see your logs / error reporting emails, so their experience is different to your own one.

- UI. Your users won't know how they're meant to use your product, because they didn't build it. They'll have a much harder time figuring out how to use it than you do.

- Robustness (i.e., bugs). Once you have lots of people using your product, they're going to start surfacing lots of bugs you didn't know existed. They're also going to start using the product in ways that you yourself don't. You'll need a robust test suite to ensure you don't have to load all of the additional context into your head each/every time you make changes.

Beyond that, getting 1,000 people to use your thing is going to need some thinking about distribution:

- You almost certainly want to start with "sales". Even if you're giving your thing away for free. You'll learn more, faster by contacting people individually and trying to persuade them to use your thing. You'll also see a more predictable growth in users, and save yourself from getting depressed about botched launches / blog posts that no-one reads.

- Later, you need a growth engine just like any business.

There are lots of great interviews on IndieHackers (https://www.indiehackers.com/businesses) that might help with the above. My own personal experience is from building Dependabot (there's an interview on there from me!).