What is Go ...and what is a gopher
It is all in the name
Go is a programming language. Go is also an ancient far-eastern board game. But, just to confuse things, there is also Go!, with an exclamation mark, which is also a programming language.
So just to make this clear, we mean the programming language called “Go” which is sometimes also know as “Golang” after the Internet domain.
Okay, but what IS it?
Go is a computer programming language, originally invented at Google in 2007. OK but that probably doesn’t help you much!
A programming language is a man-made language that a programmer uses to give instructions to a computer. A programming language looks a little like a combination of English and Mathematics. They are used to create the programs that a computer runs. The web browser you are using now to read this is just a computer program.
That’s a lot of stuff, so let’s explain this a little more. Go is a computer language, but it is a man-made language. It is not like English, French, German or Spanish. These are all natural languages. They just evolved from the sounds people make when they speak. No one invented them.
A programming language is different. Someone did invent it. A programming language is more like man-made languages found in books like Elvish from The Lord of the Rings or TV like Klingon from Star Trek.
Go was invented by three people. Ken Thompson (who is a very famous computer scientist), Rob “Commander” Pike (who is another famous computer scientist) and Robert Griesemer (who is famous for his work on the JavaScript and Java computer languages).
A programming language can, at least in theory, be used to write any program to do anything. We say in theory because you have to be able to describe the problem in the programming language first.
Okay, but what does it look like
Go is textural computer language. Scratch or Alice or Kodo are visual or graphical programming languages. In these languages you program by moving coloured blocks to create a program.
Textural computer languages are different. You have to type everything - Sorry, but this is actually what real programmers do most days. And if you find you have a talent for it, there is so much more you can do with textual computer languages that aren’t possible with visual ones.
Notes
Hello World in Scratch looks like this:
Hello World written in Go looklike this:
Notes
In the Scratch program the middle, purple say
block is the one that prints
“Hello, world! to the screen.
In the Go program, it is line 6 that prints “Hello, World!” to the screen.
The programs are similar because they both solve the same problem, how do you print “Hello, world!” to the screen. But they are different because they are written in two very different programming languages.
What is a gopher?
A gopher is a small furry rodent. A gopher is also the name the Go community uses for someone who can program in Go. Once you learn Go, you too will be a Gopher.
The mascot of the Go language is also a gopher, the “Go Gopher”. The Go Gopher was drawn by Renee French and has an interesting history all of his own.
The GopherCoders gopher is based on a drawing Ben did on a Post-It note!