You’re probably making learning how to code more difficult for yourself than it has to be.
There are countless resources available to learn programming. There are online courses, paid and free of charge, there are college programs, after schools, meet ups or books.
Somebody’s desire to learn how to code will definitely not fall short because of the lack of resources available. The only requirement these days is the ability to read and to have access to a computer.
Someone might even go as far as to say the requirement of reading alone is sufficient in order to learn a programming language. After all you can read a well written book and learn coding that way. But who would ever want to do that?
Funny enough many people do. Actually a lot of people still do exactly that.
There is this new phenomenon of the learning by reading and passively taking courses, that arises out of the multitude on options available to us these days. The fact that most people see programming as kind of science that is difficult to understand- is not helping either.
So we watch, we read we are very interested, we make alot of notes, we do some examples. And we think that’s the way of actually learning this stuff.
Without knowing, by starting this way, we are making it harder for ourselves than we have to – and in terms of learning programming, you don’t want to make it any harder than it is. That can lead to a lot of frustration, including the urge to give up and try something else instead.
The dilemma and one of the main reasons why many people think it’s too hard to learn programming is that they can’t wrap their head around how they are supposed to do the programming part before you actually know how to program. (which leads to hours of watching lectures or reading books but being too scared to “try it out.”)
This wrong way that many people are using to try to learn programming is comparable to trying to learn how to ride a bike by watching a multitude of different biking events and training videos.
Even if they know everything there is to know about bicycles, the moment they get on the bike they will fall on their noses- or they will steer – eyes wide open – into the next lamp post.
Only by constantly trying over and over again, and and falling from the bike, will they eventually get the hang of it and drive off.
If someone would ask a cyclist how much of their actual learning experience was based on books they read or videos they watched, their answer will most likely be “It helped a tiny bit, but it was not important – since the actual experience was so different.”
In other words all these resources out there will help you but they can only play the part of a guide towards the final goal of being able to program.
It can be the essential guide along the way but it will be worthless if you are not actually start walking. Meaning- Learn by doing. Start a programming mini-project. Build something you really care about- even though you’re a total 100% complete newbie to programming.
“You have to learn by doing”. Everybody has heard this sentence many times- for some maybe too many times. But have you really thought about it? If you do, you will come to the same conclusion that I have.
There is no way to learn anything new unless you are applying it. This especially applies to programming of course, just as it might apply to learning to ride a bike, or a new martial art.
If you look at learning a certain programming skill as your final goal – saying “I want to learn HTML and CSS and I bought all the books for it, so I will finally be able to code” You already have a problem.
It’s like saying “I want to learn everything about my bike until I understand how it is made and how the physics behind it work, then I will be able to ride it.”
You can be a scientist in the science of bike ride mechanics and it still won’t help you one bit to do the actual thing.
Not even experienced programmers know every thing there is about the programming language they use every day. They know just as much as they need to in order to build the things they envision or are hired to do.
In terms of programming you need to know first what the programming is good for, what the programming language specifically does, and the why behind your desire to learn it. The project of your imagination.
The “why” is way more important than the “how.” Why do you want to ride the bike? So you can exercise, get from A to B fast, ride together with friends. How often do you think of your physical bike while doing these things? You often completely forget about the “how to ride the bike” part and focus on the why instead.
Same way you have to “ride” the programming language of your choice in order to get to your destination. It has to become something that is secondary to the actual goal – your goal.
Nobody’s goal is to be able to balance on a bike while the wheels are rotating forward. That’s not a goal. The goal is to ride it and go places –meaning to be able to forget about it already and just move on.
Until you know what you want to do, what you want to create, what your final vision is – learning how to code will be almost impossible. The motivation and vision wont be there. You need a direction that helps you steer through thousands of functions and features.
Nobody learns everything about an activity or art. They just learn as much as they have to in order to create their vision. If they reach an obstacle- a point where there vision exceeds their skill they keep learning. So the clearer the vision, and the urge to make this happen, the easier it will be to learn coding.
And as you are doing it you get better. You can only get better at drawing while drawing. You can only get better cycling while cycling. It’s all trial and error. You need to make mistakes and the motivation to keep doing it comes from your vision.
Developing that vision is essential. If you know what you want to create you will keep your eyes on the prize and you will only need to learn as much as you really need in order to get your idea out there.
If you learn something, you need to follow up right away and code something using what you’ve learned- as much as possible with your vision in mind.
The earlier you start seriously trying the things out that you learn, the sooner you make small steps in the direction of your final goal, and the more likely you will actually arrive there.
Somebody once said it takes 10,000 hours of action in order to become an expert in something.
So ask yourself how many actual hours are you away from becoming an expert in programming?
Latest posts by Martin Labud (see all)
- What Riding A Bike Has To Do With Learning Programming - November 1, 2013
- Motivation is Overrated- How to Get Things Done Without It - October 15, 2013
- Learning Programming: How I Overcame Initial Resistance - September 18, 2013
- Launch Your Start Up: Build the Minimum Viable Product - September 4, 2013