Does it happen many a time that learning more than one programming skill at the same time becomes essential?
It might have happened with most of us. The ever increasing technology and the constant developments in increasing user interface and user experience, more and more programming paradigms are created. Thus, the need to learn multiple skills at a given point in time becomes essential.
Discussing this fact with many programmers, going through different online question forums and few presses, I came across the common myths which most of the programmers are nearly superstitious about.
Contrasting the myths which I had analyzed, following are some facts I would like to share that shall be kept in mind while learning any programming language:
- Programming is not about thinking like a computer or speaking to the computer.
- Programming cannot be learned as foreign languages
- Programming languages can be learned in a relatively less duration.
Lets discuss all the above facts:
1. Programming is not about :
- Thinking like a computer
- Speaking to the computer
The fact I want to share is, the programming languages are exclusively designed for the people like us.
There are two categories under Computer Programming, Low-Level Programming, and High-Level Programming.
Low-Level Programming like Assembly Language does speak directly to the computer to execute tasks one byte at a time. But the majority of the world users use high-level programming languages such as Python.
This is because the high-level languages are designed to resemble natural language and make use of mathematical concepts and logic as they should be “easy for humans to understand”, not computers.
Therefore, learning a new programming language does not mean that we should learn to speak to the computer, but we learn those because we do not know how to speak to the computer. Thereby, while learning any programming language, we should keep this fact in mind.
2. Programming Languages cannot be learned as foreign languages:
They are not hard to read and understand like foreign languages that involve lots of unfamiliar grammatical rules, syntaxes or dauntingly whole new set of vocabulary.
Take a glance at following code:
select id,name from books
Considering our native language as English, we will compare our language with SQL.
As we can see, the alphabets are certainly not foreign.
As an English reader, initially it may be a little difficult to figure out, but the statement says that select and display the id and name of the book from the books table in the database. This is the only thing which we need to learn.
Besides, every word in the sentence is pre-existing in the English dictionary thus no efforts for finding the meanings of the individual words.
Some of the programming languages do have certain abbreviations like “printf(), regex ” etc., but the full lexicon of the programming language is derived from existing real world language. Thereby it can be conferred that programming languages are more realistically the “dialects” than languages.
3. Programming languages can be learned in a relatively less duration:
Programming does not take years to learn, learning the commands and the functions of a programming language is made a lot easier by the fact that most of the words used by the programming languages are same as that of existing language (mostly English). Assuming, we speak this language, a huge chunk of learning time is eliminated.
Learning the syntax of the programming language may not be always easy, but high-level programming languages are designed to be easily understood, so it’s not insanely hard either.
Finally, the challenges of learning how to listen, pronounce and speak are literally non-existent. I’ve never heard anyone speak out loud in a programming language.
Keeping the above notes in mind, the perspective of learning programming languages can be directed to make it more focused and thereby learning multiple languages at the same time can be made much simpler.
(Featured Image Source : http://www.codepolitan.com)