We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Learn Go

Learn Go from the ground up: all the simple syntax, explicit errors, interfaces, and patterns you'll use to build real services.

What will you learn?

Master the fundamentals of the Go programming language in this comprehensive interactive course. Go is one of the most popular languages of 2025, and Go developers are among the highest paid in the world. You'll practice writing performant, idiomatic Go with these hands-on lessons, challenges and quizzes.

Chapter List

1
Variables
Learn the basic syntax for declaring and using variables and why you should use Go in the first place
2
Constants and Formatting
Learn how constants work in Go and how to format output using the fmt and unicode packages.
3
Conditionals
Use if/else statements to control the flow of your program
4
Functions
Learn about how functions behave
5
Structs
Idiomatically model data in Go using structs
6
Interfaces
Master one of Go's most powerful tools: the interface
7
Errors
Learn how Go uniquely handles errors
8
Loops
Practice various algorithms in Go
9
Slices
Learn about Go's take on ordered lists
10
Maps
Go has an answer to Python's sets and dictionaries, we call it a map
11
Pointers
Learn about pointers and their pitfalls
12
Packages and Modules
Learn how go projects are organized on your local machine
13
Channels
Master the #1 reason to use Go: its elegance of concurrent programming
14
Mutexes
Continue learning about concurrency with mutexes
15
Generics
Learn how Go approaches polymorphism with generics: a new feature added in 1.18
16
Enums
Go famously doesn't support proper enums, but we'll go over how Go developers solve the same kinds of problems with the tools they have.
17
Quiz
Learn about go-specific design patterns and fun language facts

Join 102,616 students in the Learn Go course

Read reviews of their learning experiences

The "Learn Go" course was a fun, basic intro to the language. The exercises were evocative and not usually taxing. I'm a Go newbie, and it was at a "just right" level to get me comfortable with reading the code. Looking forward to more Go.

(5/5)
Peter Schwenk profile image

Peter Schwenk

Newark, DE, USA

Hello Boot, this course is very good. I think you really teach Go well than Python course. Thank you!

(5/5)
Tùng Nè profile image

Tùng Nè

Vietnam

Harder than expected but nice

(4/5)
Nguyen Hieu profile image

Nguyen Hieu

Vietnam

Demn nice structured course, enjoyed a lot and loved the UI

(5/5)
Kartikay Pandey profile image

Kartikay Pandey

India

crazy good course, went from zero to hero real quick

(5/5)
Darryl Mathias profile image

Darryl Mathias

India

Nice to start with go. Lacks from my POV a bit in depth. Like using bytes or contexts.

(4/5)
Patrick Lubach profile image

Patrick Lubach

Germany

Very good course

(4/5)
lord willmore profile image

lord willmore

India

Enjoyed it a lot!! Will do it again fosho

(5/5)
Farhan Ahmed Fahim profile image

Farhan Ahmed Fahim

Bangladesh

This one was challenging at parts but mostly very simple and a great overview of Go

(5/5)
Andreas O'Rourke profile image

Andreas O'Rourke

United States

Showing 1-9 of 504

or view more reviews

Mediocrity doesn't cut it anymore

The only way to become a great developer is to write a lot of code

Avoid tutorial hell

by writing a ton of code

Stay motivated with

a game-like curriculum

Build portfolio projects

to prove your skills

Delve deeper

into foundational concepts

Learn flexibly online

without interrupting your life

For 1% the price of college

to minimize your financial risk

Frequently asked Questions

Got questions? We've got answers

Yes! It's free to create an account and start learning. You'll get all the immersive and interactive features for free for a few chapters. After that, if you still haven't paid for a membership, you'll be in read-only (content only) mode.