Are you yet to learn your first programming language?
Why is it that you’re putting it off?
If you think it’s going to be too hard, like learning a real, spoken language – you are wrong.
In fact, you’ve fallen victim to what I like to call The Big Programming Language Fallacy – the mistaken belief that programming languages are analogous to real languages.
If you’re a victim of the Fallacy, you probably think that programming languages…
- are the ‘languages of computers’
- are foreign and hard to read, and
- take years to learn.
Let me tell you that all three of those beliefs are myths.
Continue reading to watch me disprove these three myths, and to discover that learning your first programming language is easier than you think.
Myth 1: Programming Languages are the ‘Languages of Computers’
A quick Google search reveals that people are saying things like this…
These people apparently think that learning a language like Python means…
- learning to ‘speak to the computer’,
- learning to ‘think like a computer’, and
- becoming ‘fluent’ in a language not ‘native’ to them.
In fact, the vast majority of the time, programming languages are designed exclusively for people like you and me.
In the context of computer science, there are low-level programming languages and high-level programming languages.
A low-level language like assembly language actually does speak to a computer directly – performing a long series of processor operations, one byte at a time.
But assembly language is only the 19th most used programming language in the world today. The vast majority of modern programmers write only in high-level languages like Python.
Here is the Collins English Dictionary definition of ‘high-level language’:
a computer programming language that resembles natural language or mathematical notation…
High-level languages resemble natural language, and use concepts like mathematics and logic, because they are designed to be easy for humans to understand, not computers.
Learning one of these high-level languages doesn’t mean learning to ‘speak to a computer’. The whole reason they exist is so that we don’t have to.
So if high-level languages are designed to be easy for us to understand, what does one actually look like? Continue reading to see an example…
Myth 2: Programming Languages are Foreign and Hard to Read
If you were to attempt to read some text written in a language foreign to you, you may be faced with…
- a different alphabet to the one you’re familiar with,
- unfamiliar grammar rules and syntax,
- and most dauntingly, a whole new set of words you’ve never seen.
But if you were to read some high-level programming language code, you’d be faced with none of those things.
Let me prove it to you…
Take a look at this code written in a programming language called SQL:
INSERT INTO Table VALUES ('1', 'SQL', 'Programming language')
For the purpose of this example, let’s assume your primary tongue is English, and we’ll compare that to SQL.
Firstly, the alphabet is most certainly not foreign. All the characters used can be found on a standard Roman alphabet keyboard.
Secondly, look at the grammar rules and syntax. While there’s a bit of deviance, ‘insert into table’ is familiar and readable. As an English speaker, you’d have little trouble figuring out the meaning of the code.
Lastly, look at the words. Every word there is pre-existing in the English language. No foreign words, no difficult pronunciations, no scratching your head working out the meaning of each word.
Granted, programming languages do invent abbreviations – such as regex (regular expression) and varchar (variable character), just to name a few.
But at the end of the day, the full ‘lexicon’ of a programming language is derived entirely from a real-world language – whether that be English or any other tongue.
This is why programming languages aren’t languages at all. In fact, you could say programming languages are really more like dialects than languages.
Learning your first programming language now doesn’t seem so hard as learning a real-world language. And as you’ll see next, it doesn’t take as long either…
Myth 3: Programming Languages Take Years to Learn
To learn a foreign language, you need to learn…
- the vocabulary (so that you have the words to express your ideas),
- the grammar (to be able to string them together into sentences), and
- the ability to read, listen, pronounce and speak.
That’s a lot.
So it comes as no surprise that it can range from 23 weeks up to 1.7 years, and beyond, for an average native English speaker to pick up a new foreign language.
Learning a programming language would probably take just as long, if not longer – if they truly were designed with computers in mind, and were foreign and hard to read.
But we already know that’s not true…
Learning the commands and functions of a programming language (the equivalent of learning the vocabulary of a real-world language) is made a lot easier by the fact that programming languages use the same words as an existing language (almost always English).
Assuming you speak this language, that’s a huge chunk of learning time eliminated.
Similarly, learning to read the language is not such a big deal. All the words will be familiar to you, and as we’ve seen, deciphering programming language code is not that hard.
Learning the syntax of a programming language (the equivalent of learning the grammar of a real-world language) isn’t quite so easy – but remember that high-level programming languages are designed to be easily understood, so it’s not ridiculously hard either.
Finally, the challenges of learning how to listen, pronounce and speak are literally non-existent. I don’t know about you, but I’ve never heard anyone speak out loud in a programming language.
So as you can see, there’s not nearly as much to learn in a programming language as there is in a real-world language. And less to learn means less time needed to learn.
Years? I don’t think so.
Programming languages are easy to read, quick to learn and designed with people like you in mind.
So why not make today the day you finally learn your first programming language? After all, now you have no excuses left!
Do you find learning a programming language easy or hard? Share your thoughts with us in the comments.
And if you enjoyed reading this post, you’ll love Learnable; the place to learn fresh skills and techniques from the masters. Members get instant access to all of SitePoint’s ebooks and interactive online courses, like HTML5 & CSS3 For the Real World.
Comments on this article are closed. Have a question about learning a programming language? Why not ask it on our forums?
Animating with CSS
Researching UX: Analytics
Rails: Novice to Ninja
Designing UX: Forms
- 1 Fun Functional Programming with the Choo Framework
- 2 5 Entrepreneurship Rules I've Learned from Starting 7 Figure Businesses
- 4 Developing Add-ons for Enterprise Apps like JIRA
- 5 Freelancer Mistakes: 5 Things You're Saying to Make Your Client Hate You