First, break the project down into smaller pieces.
Write in plain language what you want each piece to do. This way, you can do your thinking without getting bogged down in the details of code.
Build each piece of the project, starting with concepts you know. If you’ve been learning concepts first (instead of jumping into projects at the beginning), you should have a reasonable tool set by now.
When there’s a gap in your knowledge, reduce it to the smallest possible piece of functionality and look it up.
As you’re learning, don’t obsess over perfection. Perfection is the enemy of done!
Don’t be afraid to experiment with different approaches and ideas. Those polished tutorials you see online often go through a lot of experimentation before being presented. Its great to use them; but don't expect to do that level of coding for a while.
After you’ve tried a project yourself, look up similar projects in order to learn from other people’s approaches. This is a good chance to reach out and start asking questions, too. You'll find that other devs are very willing to help you out.
As you take these steps with more and more projects, you’ll begin to feel more comfortable picking the right concepts for the job. Most important do not get discouraged. 90% of success is having the courage to try.
Judith Rohatiner is a Front End Software Engineer with projects in higher education, retail, business and branding worldwide.