Computers, explained in their most simplest form, perform tasks they are told to do – namely, calculations. Put enough calculations together, and you can do some interesting things. Telling the machine to do these various tasks one element at a time, though, would be an intense process. Instead, we use various programming languages to write the instructions for the computer.
The crazy thing about it is, there are, at this stage, seemingly as many languages as there are “types” of computers, possibly more, but all basically work the same way – a set of instructions are put in in a style established by the programming language and, when written correctly, is properly converted into raw instructions that the actual hardware makes use of – machine code – which is what instructions are actually performed by the machine itself.
Of course, a program, either as a separate piece of software or as a part of the core operations of the computer itself (like Commodre Basic, for example) conducts the actual conversion between the language and the machine code. It’s all rather complex, far more intricate than I make it sound here!
These days, unless you write programs, you don’t have to deal with much in the way of programming languages directly – maybe you know a bit of HTML, which is similar to but not quite a programming language, or maybe you do know some C++ or Fortran or anything else out there! It’s still a much more special case as the operating system handles all the work for us.
Let’s take another look back to computing in the early 80’s and see what the “language barrier” for human – computer operations was like.