Today, computers become a big part of our lives. Learning computer programming is now a part of the traditional school system and this is no surprise.
So what is computer programming? It is our way of teaching the computer how to do a specific task. Just like we teach our kids to tie their shoes, we explain to the computer how to solve a given problem. We do this with the help of a programming language.
A computer can really “understand” only numbers and perform operations with them.
The trouble is that big series of numbers are not convenient for us, humans. For this reason we need a “translator” that will take as input a human kind language and turn it to a machine-friendly code. That translator is called a compiler. The human-friendly language is the programming language.
A programming language is a set of rules, words, operators and symbols. It is just like the languages, that we, humans, use to communicate with each other.
To truly understand how the computer works I will give you one example:
Even the symbols you see right now are just numbers for the computer. These numbers are called character codes. For instance, the C programming language uses the ASCII Code Table to represent the characters.
Computer programming has not always been the same, as we know it. It changed with time, for different reasons. For instance, the computers themselves changed throughout the history of the computer and thus the software needed to adapt.
The first computers where not actually programmable. Their behavior was determined by the way they were designed. In a way their hardware was both their hardware and software.
Then, the first programmable computers appeared. They had a small set of instructions. Computer pioneers had to use machine instructions to change the behavior of the computers.
Later, the first high level languages appeared. They allowed programmers to create more complex programs with less effort.
As time passed by and more code was written, the concepts of OOP began to emerge. It followed by a rapid growth of the number of programming languages, but many of them remained rarely used.