Welcome to Golang Programming - Fundamentals — a complete introduction to the Go programming language designed for people who have never written code before.

Go (often called Golang) was created at Google in 2007 to solve a specific problem: large-scale software was getting harder to build, and existing languages were either too slow, too complicated, or both. Today Go powers Docker, Kubernetes, and large parts of the cloud you use every day.

What You’ll Learn

By the end of this course, you’ll be able to:

  • Read and write Go programs with confidence
  • Understand the building blocks of programming — variables, conditions, loops, functions
  • Work with Go’s data structures — arrays, slices, maps, structs, pointers
  • Organize code with packages, methods, and interfaces
  • Handle errors the Go way
  • Write concurrent programs using goroutines and channels
  • Test your code and use generics

Course Outline

  1. Getting Started — Install Go, write your first program, learn the toolchain
  2. Language Basics — Variables, types, operators, conditionals, loops
  3. Data Structures — Arrays, slices, maps, pointers, and structs
  4. Functions, Methods & Interfaces — Reusable code and Go’s approach to polymorphism
  5. Errors & Packages — How Go handles failure and how to organize larger programs
  6. Concurrency — Goroutines, channels, and synchronization primitives
  7. Advanced — Testing, reflection, and generics

Prerequisites

None. This course assumes zero prior programming experience. You’ll need:

  • A computer running macOS, Linux, or Windows
  • A text editor (we’ll recommend Zed, but anything works)
  • Curiosity, and an hour or two a week

That’s all you need. The rest — Go itself, the toolchain, your first program — we’ll set up together as we go.

Let’s begin.

Toggle theme (T)