Go, or Golang, is an open sourced programming language designed by three Google employees: Robert Griesemer, Rob Pike, and Ken Thompson. At the start of developing Go, developers at Google had to maintain millions of lines of code that were constantly being updated. The time needed to convert their code into working programs was taking a substantial amount of time, from minutes to even hours! This problem was even compounded by the fact that each developer needed to undergo the same process. To address the problems, the designers of Go aimed to “eliminate the slowness and clumsiness of software development at Google, and thereby to make the process more productive and scalable”.
In other words, the purpose of Go was to make it faster and easier for developers to develop. It has modern features like garbage collection and it also takes advantage of powerful multi-core computer capabilities with built-in concurrency support. The appeal of Go’s features and speed has drawn interest by many different types of developers including: application developers and infrastructure teams. As Go’s adoption grows, it’s likely that we’ll see an even larger expansion of its utilization in apps, web development, command-line interfaces and many other implementations!
Before we can make full use of Go, we first have to go over the basics of how to read and run a Go program. Once you’ve finished the entire lesson, read our guide for developing Go locally to set up your computer and create Go programs on your own computer!