Learn to Code the Proper Way
Learning code is easy. Way easier than you think. But now, as a beginner, you haven’t realized it yet. Most of the beginners begin their learning with an assumption that ‘learning code’ is all about mastering the syntax and other nuances of a specific language they choose to learn. But it’s not!
Learning programming is not about learning the programming language
Your intention to code is to solve a problem. It’s that simple. Your goal is to find ways to fix or solve a real-world problem and make people’s life easier. And a programming language is just a tool for that. Don’t confuse “learning the tool” with “learning the craft”.
Anyone can learn to use a screwdriver. It’s what you do with it matters.
So what you need to really learn is how to solve problems. How to analyse the problem, dissect it, and find a logical solution to ti. Almost all programming lives in this area.
Learn how to learn
You are a unique snowflake, like everyone else, and you have your own method to learn a new thing. For me, I love to reverse engineer stuff. For the most part, I love to learn top-down. So explore yourself and start with an approach.
But remember! When I say top-down, I don’t mean that you should expose yourself to huge walls of code and try to find what it’s all about. As a beginner, this will only daunt you and throw you in a limbo. You can’t skip basics.
Don’t skip the ABCDs
When you learn to speak or write, you need to learn the letters and numbers, right? Once you master that, you can very well go read great literary works for inspiration and write your own stuff.
So for programming, learning about its syntax is how you learn the letters and numbers for the programming language. But before that, you need to choose the right language.
Choose the right tool
A programming tool is more like your everyday communication tool—the language you speak. So just find what is easy for you and choose it.
If you are a beginner, just close your eyes and go for Python. It’s the most used multipurpose language in the world. It’s straightforward with a very good community and ample resources and libraries at your disposal. The learning curve is pretty lenient too.
In the end, it’s just a tool that you are going to use to solve problems. If at first, the concepts and notions of Python seems strange to you, fear not. Everyone great programmer once started at this stage—with no clue what anything meant.
The syntax
Now, back to the syntax. Find yourself a good resource, sip some patience, roll your sleeves and get through the basics—the basic syntax that is required to use the programming language in its bare-minimum state.
The most important part when you learn the syntax is to take it all in as muscle memory. Type out each example as you learn, even if it’s just a line.
This way, you can keep your mind free to learn other notions and concepts that are specific to a language.
Automate the real-world stuff
After all the boring examples in your exercises, it’s time for the best part of your programming journey—also, the most interesting part. Find a boring task you do, find a problem around your everyday digital routines, and figure out a way to automate it. Find solutions that might reward you for all the days you spent on learning.
Apply. Solve. Practice. Repeat. That’s how you push your boundaries, from the comfort of your seat. The more real-world problems, no matter how punitive, you solve, the better you will get at programming—the real programming.
Imposter what?
You might get a feeling that you are winging it or not doing anything real. It’s okay to feel that way as it’s a side-effect that’s been recorded in all professions. It’s really simple. If you solve a problem, no matter how you do it, you are a programmer for life. Whatever you feel otherwise is just you overthinking it.
To conclude, you need to explore your mind to crack the process that will be the most comfortable for you to learn. Learning to solve a problem is the primary objective of becoming a programmer. Efficiency and prowess will follow along with the secondaries—automatically.
May the force be with you!
This post was first published on October 14, 2012.