What is a programming language.
If someone asked you this question can you answer it.
Programming is simply a way for us to give instructions to computers.
We give it an instruction manual and the computer follows without code.
Computer programs wouldn't do anything.
You wouldn't be able to move the mouse around on your screen.
You wouldn't be able to Google things you wouldn't be able to play Pokemon on your phone right.
I can't just tell my computer what to do.
You see computers don't understand English or any other human language for that matter.
So what language do computers speak well they speak in ones and zeros all electronics speak that language
of on or off zero or 1 but writing ones and zeros would be gibberish for us.
It's hard for us to communicate like that.
Right.
So humans have developed programming languages that are in between human language and machine language.
That is zeros and one some programming languages are lower level than others.
That is they're closer to machine language and other programming languages are higher level than others.
That is they're closer to English or a human language and there are lots of programming languages.
You have languages like assembly that is really really close to machine code.
You have languages like Python and javascript that are really really close to English.
That's great.
We have these pieces.
But what are we missing here.
I mean if I want to find flights to Hawaii how do we go from here to.
Well having let's say a Web site show us a display of all our flights telling the computer to show those
flight information on our screen what are we missing here.
Well we have these programming languages that we usually write on a file such as Python javascript maybe
even Java.
And then we somehow need to get these files that we write into ones in zero so that the our machines
can understand.
Well we need a translator right.
We take our code that we write what we call a source code written in a programming languages and we
give that to a translator that can understand that language but also understands machine language.
And this translator just translates these files for us.
So what is this.
TRANSLATOR It's not really a person right.
I'm not giving my code to somebody and somebody is going to just start shouting at the computer and
be quite silly.
What is this translator ready to have your mind blown.
Well it's a nother program written by a human it can either be an interpreter or a compiler.
Now Python usually uses an interpreter usually an interpreter.
Just like a translator goes line by line through our code and executes our code on our machine.
Compilers are a little bit different.
They take your code all at once read the entire file all at once and then translate that to machine
code.
So again interpreter goes line by line and each line executes an instruction a compilers takes the entire
file and turns it into machine code.
Now the differences between these two are a little complicated and beyond the scope of the course.
And don't worry we're going to come back to this topic but I want you to just have this general picture
that when we write code whether it's Python JavaScript Java C or C++ what we're doing is we're typing
it in a language that is human readable.
We're giving it to one of these translators like an interpreter or a compiler.
And these spit out code that are able to run on our machines so to review interpreters translate.
Line by line and execute the line before going to the next line compilers translate all lines of a program
to a file usually called a binary and execute the whole file at once now in the next video we're going
to talk about this process a little bit more in detail especially on how it works with python.
But why did I start with this.
I mean this is a complex topic.
Most developers especially if they're starting out don't even know of this process.
They just know that they write code and then it runs.
So why did I teach this here.
Because in order for us to be able to write Python code well I can't just write it anywhere.
Right if you work right now to your computer and let's say you opened up a text file like this one and
you started typing Python code but for now we don't know Python so let's just say I want to go search
for Pokemon Well this might be code we don't know if it is but I can't just use this right.
I mean this isn't really Python code but how would my computer know what I'm talking about in order
for us to start writing Python.
We need to download this translation service in the next video I'm going to show you how to do that.
I'll see in that one.