Coding, What It Is & What It Isn’t And More!February 21, 2022 2022-05-01 5:14
Coding, What It Is & What It Isn’t And More!
Coding, What It Is & What It Isn’t And More!
The amount of ideas and information that are scattered across the internet today is so massive that just by typing “Co”, one is highly unlikely to land on any results other than “Coding”. The correctness of such information on the internet has become a major concern over the past few years.
On the other hand, the term coding has started to go around even more than it used to. This is mostly due to several reasons; the first one is the unforeseen strike of Covid-19 which resulted in massive lock downs around the globe.
During this time, one of those jobs that was least affected was programming. It is reasonable for the masses to want to turn to fields that are more pandemic proof.
Another reason for the sudden boost in the popularity of coding is the direction the new world seems to be taking which is towards Artificial Intelligence and Machine Learning. Such fields are highly dependent on coding and programming so much that it is eventually impossible to run even a super simple project at the level of elementary schools.
In this article we are going to discuss what Coding actually is and what it is NOT! Let’s dive in now.
What It Is Not!
Before getting to what Coding actually is, let’s clear out the fog by talking about what it isn’t. Being able to distinguish the reality of a concept from the myths helps with making a well-informed decision that is free of doubt and misconceptions.
So have you watched the Matrix sequel? Do you remember the black screen with green cascading characters on it? Well that’s NOT coding! As bizarre as this may sound like, there are countless individuals out there who think coding looks somehow similar to that but the truth is that it actually doesn’t.
It is also not the evil knowledge of hacking into the computers of others, government organizations or banks. While one may be able to weaponize their coding abilities (which is too hard and troublesome to worth the while), there are so many better opportunities for a master programmer.
Coding is also not what you see in James Bond movies where the agent presses some buttons and opens a door. Neither is it one individual thing and not all of the programmers are night owls.
The truth being told, programming is not what we see on TV or in the movies. It is in fact quite far from it! Coding is actually a really fun thing to learn and provides a vast array of job opportunities for the individual.
So What Is Coding?
Think of it this way; if you are from an English speaking country and you go to a non-English speaking country, and want to buy a nice jacket that has caught your eye. What are you going to do? Well, you are most likely going to hire an interpreter or ask someone who speaks English to convey your message to the sales person.
To put it in the simplests way possible, Coding is turning human ideas into computer form. A programmer needs to explain thoroughly to the computer what it exactly has to do. There can be no compromises here! The computer must be told and taught what it should be doing at any given situation. Nothing can be overlooked. Nothing can be left behind!
Everything digital that we use today is made and run by code. Every website you visit, works through a program that was written in code behind the scenes. Every mobile or tablet app that you use was written using code. Even all the games that you play on any platform, literally ANY platform, is written by code. It doesn’t matter whether it’s a Playstaton, an XboX, a PC or mobile. They are all written by code; maybe by different codes, but with codes nevertheless.
Even all of our security systems work based on codes. Security cameras, your computer’s anti-malware software, that super cool and sophisticated that CSIS has been bragging about, they all run on code.
Pretty much all the modern vehicles, airplanes, drones and spacecrafts also operate with codes. Chances are that even your fridge and washing machine are running on some kind of code if they are programmable.
The number of applications, softwares, systems and ecosystems that are developed and run by programming is pretty much endless and this trend is highly unlikely to change course in the opposite direction.
Writing code from scratch is more or less like attempting to tell someone which roads they should take to go from Montreal to Toronto when they don’t even know what a car or a road is! That is how complicated things can get in programming!
You will have to explain to them what a car is and how it works, how they should be driving and then teach them about all the rules and regulations. Then you have to talk about roads and what those are.
Once you are through that stage, your next step will be preparing them for different conditions that may or may not occur during their trip. For example what they should be doing if a car that is in front of them is slowing down or stopping eniterly and which pedal they have to press in order to take the necessary action.
The above process is for the very professionals who work on very specific projects like launching spacecraft into outer space. Today, there are countless programming languages and devices out there that reduce the need of writing detailed instructions down to a noticeable amount by creating and adding a large number of pre-made templates and instructions into the coding language. This means that the programmer no longer needs to code the basics like what a multiplication is but instead, can readily use this function to write more complex codes and software.
You may have noticed some terminology related to this such as “Programming Language”, “Python”, “Syntax”, “Algorithm”, “Flowcharts”, “Loops”, “Print F”, “Variables”, “Constants”, “Compiler” and etc. The list is as long as the list of the words of the index in a typical university medical book.
Each of these have their own world and meaning in the realms of Coding. When someone codes, they are essentially translating the wants or a process that is in human language into computer language.
Coding is not as difficult as it sounds though. Generally speaking, there are two major areas that a programmer must cover in order to write his code to help the computers better understand and execute their code. These are “Logic” and “Syntax”.
Syntax is basically the grammar and vocabulary of a programming language. It’s very similar to how we put together the parts of speech in our languages to make sentences, paragraphs and other forms of communication medium.
Of course, similar to our human languages, computer languages have different languages with different grammatical concepts and structures. Some of the most famous programming languages that are out there today are Java, Python, C# (pronounced Sea Sharp), C++ (Sea plus plus), Go, Ruby, F#, Scala and Flutter.
Each of the programming languages are superior in one certain application. For example, Java is often used for creating computer and mobile software while Python is strongest in creating process automation and building websites.
Now let’s move onto the Logic.
This is sometimes referred to as the flow or the flowchart. Logic is how all the syntax must be put together in order for the computer to correctly follow the instructions.
One fact that is often overlooked is how sophisticatedly the human brain works. Transcribing our thought process into a proper flow is probably the most difficult part of coding.
This is often overlooked and for good reason. The truth is that we hardly ever dive into how we think what we think. This process is most often very unfamiliar and strange for the common individual.
Most Common Example in Coding
Let’s have an example. We have 3 random numbers. Let’s say they are 4, 9 and 16. When asking a person to select the largest number, they will immediately point to number 16. But how do they actually do that?
Here is the logic behind it! The person thinks of each number as a variable. For instance, they will name 4 as X, 9 as Y and 16 as Z. Now they start comparing their values.
This is how it works. They will compare X with Y and whichever is larger, they will then compare it with Z. If the largest among X and Y is smaller than Z, then Z is the largest number and if not, the winner among them is the same number as the greatest number between X and Y.
Now between X and Y, Y which equals 9 is the larger number and, between Y and Z, Z is the greater number which is 16 and so the answer is 16! Well done!
Most people do this work subconsciously in a fraction of a second but telling a computer to do so is a different story entirely but a programmer must be able to identify this thinking process prior to writing his code to prevent catastrophic mistakes.
In the above scenario, many concepts and functions such as “Variables”, “Numbers” and “Larger or Smaller” are defined prior to publishing the language for the programmers so they don’t have to go through the burdens of doing so by themselves.
Career Prospects That Require Programming Knowledge
The number of career prospects that are out there for a programmer at any level are literally countless. This is primarily because most of the businesses today are stepping toward using some form of customized computer programs.
Another reason for this is that the tech companies are growing both in numbers and size, more rapidly than ever before. This in turn creates more and more vacancies for programmers all around the world and does not seem to be stopping or even slowing down at all.
Today programming is not just a mediocre university degree that one needs to pursue academically in a place that is specifically facilitated for this purpose. In fact, many of the most successful programmers today hardly have a college degree. This makes entering this field of work less troublesome and costly.
However it is worth mentioning that some of these jobs require a university or college degree.
Most of the jobs that a mid-level programmer can aquire are also better paid than the rest of the professions. There are hardly any jobs in this field with an annual salary below the minimum.
Careers In Computer Science
For example, a Software Application Developer can earn up to $100,000 annually, a web developer makes up to $80,000 and a Database Analyst around $90,000. These are the most common jobs out there that are in most demand.
There are countless other jobs a programmer can take depending on the size of their skill arsenal. For instance, a good web developer with just over-the-average knowledge and a couple of years of experience in both back-end and front-end development, can apply for more high-level managerial positions in their fields.
Careers In Engineering
Computer Science is not the only field that requires knowledge of Coding. Programming is also essential when it comes to many other fields of engineering. There are literally no limits.
For example creating and debugging control systems in electrical engineering requires some advanced levels of Coding knowledge, experience and abilities. Most of the control systems, whether linear or nonlinear, that help run or supervise major ecosystems are run by computers which only speak in code!
A mechanical engineer will also equally take advantage of coding. They have to use a large amount of softwares for their calculations and design. While many of these have well-developed user interfaces, there are countless other times when the engineer has to run the software through code in order to execute their desired function.
What you Should Do
Now that we have spoken about coding in such detail, it has become apparent where the future success is going to be. It is the duty of the parents to help their children set course in the direction of future prosperity.
It is important for children to experience and learn the things that will be the building blocks of their careers from an early age onwards. This in turn will help them to make much better choices in terms of choosing their educational streams with more open eyes and have a clearer image of what is likely to happen if they choose a certain career, what their duties will be and even where it will take them in the more distant future.
Read our full article “The Benefits of Coding For Kids” to learn more about why your child should start learning how to code, where it will take them and how we are going to help them get through it having fun!