I consider myself an “advanced beginner” in the field of web development and feel obliged to write this article to help those who have wondered aimlessly in search of being that bad ass programmer.
Answer the question: Why do I want to learn to code?
This is one very vital question which you must answer before going forward, else you may never truly focus on your goals, because you don't have none!
Let me provide you with some of my answers. Growing up to love mathematics and appreciating problems because of it's close neighbour – solutions -- I chunked out ideas from time to time in a notepad and started my coding journey to bring some of my ideas to life.
In addition to that, I had always loved playing with data and would enjoy data-driven solutions too which made me consider Julia, Python and D3.js as tools I'll need in my arsenal.
You get the point? I bet you did. So, look at the question again, answer it and write it down.
Don't Start with CMS tools or site builders
Using CMS tools and site builders will not help you in your cause to be a professional programmer but when you are comfortable with the core tools of the trade and have attained a level of proficiency in those tools, diving into them will not be an issue.
Don't be overwhelmed by the amount of stuff you have to learn
Trust me, if you start this journey you will notice the bulk of stuff you have to learn. This is the good part of the career as it always keeps you on your toes!
If I'm going to advice you on how to manage it, it will be this -- learn one thing at a time (yea you read that right) and be willing to learn something new always. The day you feel you've known enough to not learn something new, you'll become irrelevant. Period.
Ensure you're not infected with developaralysis
I recently came across a post on twitter by Prosper Otemuyiwa, an Andela Trainer who mentioned the term developaralysis and he defined it as:
The crippling sense that the software industry is evolving so fast that no one person can possibly keep up. So you want to learn all the available technologies, jumping from stack to stack without any clear sense of purpose .
Being curious, I asked “so what are the remedies you'll like to prescribe to those infected already? Thanks” and this was his reply:
- Take a deep breath and calm down
- Understand that these things will come and go, they never remain for long.
- Soak yourself deeply in the understanding of core programming principles and how languages work.
- Don't swayed by friends or colleagues that intimidate by speaking jargon because they learnt that new framework
Other important things to note
- Code for at least 15 minutes daily (no matter how busy you think you might be)
- Make Quora, Stack Overflow and Google search engine your close friends.
- Twitter? If you don't have an account, get one here. Follow industry leaders, innovative developers and fellow programmers will always keep you on your toes and ensure you stay relevant
- Download and listen to podcasts. I highly recommend CodeNewbie Podcast with Start here Podcast– which guides you through the path to becoming a web developer with each episode and accompanying show notes
- Never ever give up -- your super power is grit: perseverance and passion for achieving long-term goals
- Finally update yourself regularly on the latest in the industry to remain relevant by subscribing to relevant blogs and publications.
- Design a chart DAILY for your coding goals, remember: No one ever built a reputation based on what they were going to do tomorrow!
Be prepared for the next dose. What would you tell a newbie before writing that first line?
About the Author: Israel Obiagba is a young aspiring full stack web developer and Techpreneur. He has been teaching himself to code for over two months and currently volunteers as a planning team member and trainer at CodeSparkHub.