Introduction to Go Programming Language (GoLang)

A short overview of Go programing language and why it was created in the first place.

Uday Hiwarale
Published in
3 min readJun 30, 2018


(source: golang.org)

Go or Golang is a programming language created at Google, by Google developers and other programmers. This programming language is free and open-source and currently being maintained by Google. One of the founding members of Go is Ken Thompson who is best known for his work on Unix operating system development. Go compiler was initially written in C but now, it is written in Go itself, making it self hosted.

So what’s so special about Go?

  • Go is statically typed compiled language.
  • It supports the built-in concurrency model with the help of GoRoutines.
  • It has a built-in garbage collector and memory safety.
  • Strings in Go are UTF-8 encoded by default.
  • It has simpler syntax compared to other compiled programming languages.

The motivation behind its creation

There are tons of programming languages to choose from nowadays. Each language has its own benefits and different programmers find different languages friendlier than others.

But a language should be perfect in all sense and should be easy to work with for any programmer. A programming language can be great at performing only one task like COBOL or can be used for general-purpose programming, like Java or JavaScript.

The four important things a language must thrive to achieve is speed/efficiency, reliability, scale, and simplicity.

If we consider languages like C or C++, they are great at speed, scale, and reliability but in terms of simplicity, they are not so great.

Java on the other hand is very reliable and highly scalable, but moderately simple to write and not so efficient compared to other low-level languages. Python is a widely adopted language and very simple to write but not so efficient and reliable.

Whenever Google creates a language or a framework, I suppose it’s because they want to eventually use it in their own organization…