The life of a programmer, even professional programmers, is a constant battle of solving one problem only to find yourself faced with another, often unpredicted obstacle.
Knowing how to get over these hurdles is essential to your success as a developer. Here are a few ideas to help you out.
Find A Mentor
The best advice I have for any new programmer is to find an experienced developer as a mentor.
This mentor doesn’t have to be an expert in your language (though it certainly helps), but they do have to be an expert programmer. That’s because there are common threads among all of the major languages that will help the mentor know where to look to help you solve your problem.
When I first started out, my biggest problems always centered around “the unknown unknown.” I never felt like I had a firm grasp on whether what I was doing was good, and when I encountered obstacles I didn’t even know where to begin to look in order to solve the problem.
That’s what a mentor will be able to teach you. It’s less about solving your specific problem, and more about showing you how you can solve all of your future problems.
This close-knit relationship and powerful long term effects is one of the reason why I so strongly recommend Thinkful’s coding courses. They give you a great opportunity to have weekly private lessons on your code.
Find A Community
The next best thing to a mentorship relationship is to find a community of developers for your chosen language or specialty. You’ll be able to get access to diverse views and opinions, and often multiple solutions for a given problem.
There are plenty of these around, so all you have to do is a few quick Google searches to find a good one that meets your needs.
Remember, however, that communities are places of mutual exchange. If you’re receiving help from others (especially if it’s free) then you should be prepared to pay it forward when the time comes and someone comes to you with a question!
Helping others in this way also challenges you to be at the top of your game, and forces you to question just how deeply you understand the material you think you’ve already covered.
Online Forums and Answer Boards
Finally, online programming forums and answer boards are in place for exactly this reason.
The good thing about programming is that chances are, if you’re faced with a difficult problem, someone else has already faced that problem before you.
Many times, just Googling a specific question will yield a relevant answer. The top answer board for developers is definitely Stack Exchange, which boasts a very active and large community that (oftentimes) will answer your question in a matter of minutes.
Also widely used is the Google Developer’s Forum and Quora, though Quora tends to focus more on career programming and language questions, rather than specific, technical answers to detailed problems.