It is estimated that there will be around 25 billion connected internet devices by 2020. The progress of projects such as 'Project Loon' and the development of IPv6 are making this estimation more and more plausible. It is believed that the world is progressively becoming divided into 2 distinct groups. Those who can code and those who can't. Even obtaining a 'rudimentary' knowledge of code can keep your career path firmly in your hands.
We have never been at a better point in time to take full control of our careers. The good news is that coding is not as 'foreign' as it may seem and it was far from rocket science that some of the best coders were raised on.
Reasons for language learners to code:
Creativity is key in the field of Arts and Humanities. It takes imagination to be able to etch words into memory quickly. It takes a certain kind of person to look at Chinese characters like they are inanimate objects. A certain kind of person to convey the subtle nuances in a foreign text to your audience.
Creativity is key in coding. It makes life a lot easier when you have your own ideas that you want to 'code to life' than to depend on other 'dreamers' to feed you their ideas.
We are told from a young age that it's a virtue, and rightly so. It's a virtue that will serve you well in both fields. In languages you have to start from scratch. The foreign text looks completely 'alien' in the beginning, that is until you break it down. This is exactly what coders do. The code looks complicated until you break it down, chunk by chunk, day by day, until it begins to slowly make sense.
In languages there are languages that may seem more complicated to you than others. The key is to pick the language that will play to your strengths and not just any random language. There is no language that is impossible but things get a lot easier when you choose a language that plays to your strengths.
In both disciplines, start with the language that makes the most sense to you and suits your needs at that moment in time. Then gradually progress to where it is you want to get to.
3. Basic Math required.
It is generally believed that you are either good at maths or languages but rarely both. I don't believe in this generalisation,it leads us to creating a narrow view of the world in our minds eye. Moreover, the idea that coders need to be gifted at maths is simply an illusion. I'm not sure where this idea has come from but it seems to exist nonetheless.
Coding is more about semantics and syntax than it is math. Two words that dominate the area of Linguistics and have been the topic of many a thesis. To be a good coder you need attention to detail and be able to proofread the work of others. Coders need to communicate with their teammates in order to reach common goals. The job specification for a coding role and a language role are very similar when they are written in plain English.
The key difference between semantic mistakes in coding and language is that in coding things break in the most unusual way when there is a single character missing or in the wrong place. Nevertheless, I have met translators and coders alike who have spent hours finely combing through a piece of text in order to produce what they believe to be great work
1. The colour grey is non existent in coding.
While I enjoyed the challenge of the subjectivity of language learning, I often longed to be either wrong or right. If you agreed with the previous points and are smiling at this last, then coding could well be for you.
In coding, you either complete the code you intended or you don't. You will never encounter two coders running the same code and getting different outputs. Computers are 'dumb', they only understand the binary language of one's and zero's. Even when we write the code in our native language, a compiler will compile (translate) whatever we say into a series of numbers which will be some sort of variation of this:
There is no blaming someone else. The computer will do exactly what you say. This can be quite an empowering feeling as you can now take full responsibility for the outcomes in your life.