When someone says the word ‘coding’, what comes to mind? A bunch of 1’s and 0’s? Complicated commands? Unreadable data that takes up the entire screen like in the Matrix? That’s the conclusion a lot of people jump to - something that's just complicated and out of reach for them.
But if you’re already here and reading this blog post, then you’re already on your way to learning a simple fact: coding isn’t as hard as sometimes others make it out to be!
Ditch the stereotypes!
Let’s firstly clear this up before we continue.
For many people, coders represent the geek archetype, always eager and willing to jump at mathematical problems. This stereotype exists for very good reason - for a long time, coding was more complicated than it is right now and did rely on the maths skills of the software engineer to perform their tasks.
Popular media at the time reinforced this stereotype and the image of the coding introvert entered our consciousness, a creature often found lurking in their lair, coding by day, slaying demons on Dungeons and Dragons by night.
Not that there’s anything wrong with that, I’m quite partial to the occasional maths problem and slaying of demon myself.
But nowadays, coding has come a long way. There are plenty of courses for people to learn how to code that barely involve any math, instead, they focus on simple problem solving with commands that you can learn in a couple of minutes.
A high-level programming language is designed to simplify computer programming and is written in a form closer to our human language. It is referred to as high level since it is several steps removed from the actual code that runs on a computer's processor, so you don’t need any particular knowledge of hardware. This let's you to focus on functionality of your app.
So yes, those walls of code that you have seen are real, but they aren’t as difficult to understand as you think.
Software development is chiefly about problem solving and knowing which programming language to wield to achieve your desired result.
As well as coding syntax, a good course should cover approaching the kinds of problems you will face in the real world, understanding how to break them down and navigating the documentation that accompanies most coding languages. You’re not expected to know every feature by heart and trying to do so would be counter-productive. Rather, it comes to down to developing an analytical mindset and knowing where to turn to and get the information you need.
A programmer in our modern world could look like anything. It can be the hipster from your local coffee shop or the helpful librarian always happy to help you out. There is no stereotype anymore; coding simply doesn't have a face.
Do I need to have a specific personality?
Not at all. This also stems from the stereotypes discussed above because people think they need to have a brain that is wired to like maths and problem-solving. This is true to some extent, but not as much as you think.
You really do need to have a desire to solve problems and seek out errors in your code if you want to be successful. But that's part of every job out there. When you do something, and it doesn't end up the way you want, then you need to fix it.
The key personality traits you need to have if you want to start coding is ambition and a desire to push yourself.
Besides this, you have your own pre-existing characteristics, perhaps you're dedicated, strong-willed or stubborn and won't let go of a matter until it's solved. These are all traits that can help you become a keen programmer.
You can check out this article I wrote on the surprising soft-skills in tech you may have already mastered.
What are the hard parts of coding
I'm not trying to sell that coding is the easiest thing in the world.
There are a few personal characterizes and hurdles you should try to develop and keep in mind if you decide to start this learning process. They should hopefully help to keep you motivated!
When you first begin learning how to code, you will come across some elementary examples, like making the computer output "Hello World!" in a command-line terminal. That will be initially encouraging, I mean it's already pretty cool to get your computer to speak, right? However, once you get into commands that aren't so straight-forward, there is a good chance you will stop for a minute.
You may even consider whether it's still worth it.
In reality, all you will need to do is readjust your thinking to get the hang of coding. That requires persistence and willpower on your part even when the learning curve suddenly feels like it's getting a lot steeper.
Here's an article I wrote on the mindset and habits helpful in learning to code.
I believe that everyone can learn to code. But there's quite a lot to take on board before you can successfully program something above the level of outputting text to the console.
That's not going to happen overnight and you need to be prepared for the long-haul. It's probably going to take at least six months of consistent part-time learning before you can program even a basic application independently.
Though you can't force your learning, you can do little things to help yourself along, such as getting more out of your free time by learning through an app or reading throughout the day.
Exploiting all opportunities to study is especially important if you already lead a busy life.
Try to be consistent, and you slowly accumulate on your knowledge where and when you can.
Many people want to start coding because they want to do something specific, like building a website from scratch or coding a game. These are extraordinary ambitions to have but they can make the learning curve really steep because you already have a specific picture in your head of what you want to see when you run the code, but your abilities might not yet match your ambitions.
If you go this way you will either end up really frustrated or you will just steal pieces of code from other websites. Neither will likely take you to the place where you want to be.
You need to set yourself realistic goals, and achieving each goal will help to build self-esteem and a sense of accomplishment.
I'm working on a guide that I will publish soon, detailing what to expect at each stage of your learning process. Stay tuned for that.
So, is learning to code out of reach for you?
Absolutely not! It doesn't matter if you're 1 or 100 years old, you can learn to code if you are willing to put in the time and effort required to master this skill.
There are plenty of resources that can make coding more understandable or even simpler if you can't get the hang of it at first. You can always go somewhere for help if you get stuck, and you will never truly hit a wall that will put an end to potentially the best decision of your life.
Coding is a reasonably rare skill, and programmers are always in demand, so if you can learn to code then you have a really good chance of changing careers. Even if you have been doing the same thing for 20 years. So, at this point, what's stopping you? 😊