1. Define your goal

Early on, figure out the main goal of your project. If you want to break out of your usual design style, focus on the design. If you want to test a new framework for your front-end, focus on the code. If you want to acquire a hundred users, focus on selling.

Define your goal early so you don’t get distracted and end up not achieving what you set out to do. Perhaps your project doesn’t become the next Snapchat, but by working towards your goal you will have honed the tools in your product-making arsenal. Little by little, you’ll be able to design, code, and sell faster and more efficiently.

2. Stay on track

Sometimes product makers fail to ship because they lose motivation. Set small goals; meeting those goals will help you build momentum. Small wins will compound.

Another thing you can do to stay on track is to be more public about your work. Share your progress online and with your peers. People love to see things like wireframes and will often times provide valuable input.

One trick that I find particularly motivating is making bets with friends. I tell them, if I don’t complete a task by a deadline, I’ll give them a hundred dollars. For example, I might set my task to getting twenty people to pay me within two weeks of launching a project.

3. Solve a problem

Start by solving a problem. If you have experienced the problem yourself, even better. Ask your friends what kind of problems they experience.

For example, I built YC Careers to address the needs of one my friends who was having trouble applying to jobs and interviewing as a product designer. Overnight, YC Careers made it to the top of ProductHunt and AtomSpace booked $100 dollars from strangers within 6 hours of going live.

The bigger the pain point you’re trying to solve, the easier it will be to find users.

Also, analyze problem-solutions from multiple perspectives. Some successful ideas might seem like a solution without a problem. For example, Instagram doesn’t seem to solve any immediate problem. But it does. Instagram solves the need for friends to stay updated on one another. If this need is not met, then it becomes a problem.

For further reading, John Carmack on Idea Generation and How to Get Startup Ideas are two great essays to get you started.

4. Ditch the “good idea / bad idea” mindset

Once you’ve identified a problem and come up with a solution, you’ll probably ask yourself if your idea is good.

Plenty of seemingly bad ideas have turned out to be great businesses. For example, no one wanted to invest in Airbnb. Brian Chesky, one of the co-founders of Airbnb, detailed their rejections in his essay 7 Rejections.

The only way to know for sure if your idea will work is to formulate a product hypothesis and run an experiment to test it. Talk to people and ask if they are interested in your solution. If you can get them to pay you before you’ve built anything, even better.

5. Ask for help

When working on a project, reach out to people and ask for their help. You will be surprised at how many people are willing to pay it forward and help a complete stranger.

Some of the best advice and feedback I have received came from reaching out to people with an email or a DM on Twitter.

Also, when asking for help, be specific and prepare your questions. If you want feedback on a design, send the mockup. If you want feedback on your marketing strategy, detail what you have tried so far. Context is key. And if you don’t get a response, follow up politely. Sometimes the person you’re reaching out to might have genuinely missed your message.