What is Go?

A small, fast language that runs a big part of the internet

6 min read

Welcome! You are about to learn Go, one of the friendliest languages you can start with. Go (some people call it Golang) was created at Google in 2009 by a small team who wanted a language that was simple to read, fast to run, and easy to share with teammates.

So what is Go, exactly?

Go is a compiled programming language. You write your instructions as plain text, and a tool called the compiler turns them into a program your computer can run directly. Compiled programs are fast, and that speed is one big reason companies love Go.

Go was built with a clear job in mind: powering the back-end of the internet. The back-end is everything that happens behind the scenes of a website or app: storing data, checking passwords, answering requests from your browser. Some famous things built with Go:

  • Docker, which packages apps so they run anywhere
  • Kubernetes, which manages fleets of servers in the cloud
  • Big parts of the systems at Google, Uber, Twitch, and Cloudflare

Why Go is great for beginners

Some languages have hundreds of features and ten different ways to do everything. Go takes the opposite path. It is a deliberately small language:

  • There is only one kind of loop, called for. You will meet it soon.
  • The style rules are built in, so everyone's Go code looks the same.
  • The compiler gives clear error messages that point right at the problem.

Small does not mean weak. The same little language that prints your first hello also runs some of the largest cloud systems in the world.

Your first look at Go

Here is a complete Go program. Do not worry about understanding every word yet; we will take it apart piece by piece in the next lesson.

package main

import "fmt"

func main() {
    fmt.Println("Hello, Go!")
}

Read it out loud in plain English: this file is part of a package called main, it borrows a toolbox called fmt, and its main function prints a friendly message. That is the whole program.

How this course works

Each lesson explains one idea in plain English, shows real Go code, and ends with a quick quiz. When we show a program, pause and try to predict what it prints before reading on. That tiny habit is how programmers are made.

Quick check

Q1 Which of these best describes Go?

Q2 How many kinds of loop does Go have?

Want to save your progress? It's free.

Create a free account