I was recently asked:
Man… I truly hope I can just know what to do at some point without having to ask. You think PHP is an easy language to learn though?
When I read that, it reminds of the frustration I felt when I first started learning how to code. It can be very frustrating and make you feel like you want to give up. Should you? Here’s why I think you shouldn’t:
- It will get easier. The first few months are the most difficult. It truly is like learning a new language… not just a new way of speaking but a new way of thinking. But, once you’ve immersed yourself in it for awhile you do start to think differently… and each new piece you learn gets little bit easier. Eventually, learning new skills is pretty simple and happens very quickly.
- It’s worth it. Learning how to code may not be easy, but it’s definitely worth it. From a career perspective, you will eventually reach a point where you control your own destiny. You make what you want to make, you work with only the people you want to, and only on the projects you want to. And, you eventually can set your own hours, take off when you want… and you get to build cool new things as your “job”. All in all, it’s a pretty badass lifestyle.
- It’s your passion. If you’ve made it this far, my guess is that building things in code is something you’re passionate about. If not, you would have already given up. That being the case you probably couldn’t walk away even if you wanted to. Your mind would continually bring you back to it and you’d find yourself once again tinkering with code. So, you might as well embrace it. In fact, I believe that no matter how frustrating it may be at any given moment… if you follow your passion it will always work out better for you in the long-run.
Of course, learning how to code doesn’t have to be as hard as most of us make it. I learned this the hard when with PHP. I made several mistakes that prolonged my learning curve and set me back a few years. Fortunately, you don’t have to make these mistakes because I’m going to share with you what they are and how to avoid them:
- Don’t try to do it all on your own. This is easily the biggest mistakes new coders make. It has to do a little bit with ego and a little bit with this false belief that if you let somebody teach then you’re not “smart enough” to be a good coder. It’s absolutely false. I know some really great coders and what makes them great is that they’ll take instruction from anyone. If it can help them master something they need to know faster, they’ll do it. So, don’t be afraid to let others help you (in fact, I am offering to do just that for you when it comes to both PHP & MySQL and responsive web design).
- Don’t learn without a purpose. The next big mistake I made was to code just to code. I was too afraid to take on clients or put out an open-source project, so I would just code things I thought I was “supposed to” know. The problem is that, as a beginner, you have no idea what you’re “supposed to” know. So you end up wasting your time on a lot of things that just aren’t very fruitful. Also, without any kind of deadline from a client, you can prolong and put off your coding… which really slows you down. As scary as it might seem, I recommend you take on clients or start an open source project. You’ll speed up your learning curve dramatically by doing so.
- Don’t give up. Sounds bit circular but I made this mistake several times. I would get frustrated and quit for a few weeks or months. But, I also ended up coming back to wanting to learn more. And, the time I took off really set me back. Not only did I miss that time, but I usually had to re-teach myself things I had already learned. Coupled with the things above, it extended my learning curve from a year or so to almost 4 years before I really felt comfortable as a coder. That doesn’t mean you shouldn’t take breaks… just keep them short.
At the end of they day, I know learning how to code isn’t necessarily easy… but I believe it’s worth it. And, if you follow the advice above you can boost your progress and slash the amount of time it takes you to finally get over the hump and feel comfortable as a coder.
QUESTION: Have you ever considered giving up coding? How did you deal with it?