← Back to Home

Go Fundamentals

Master the fundamentals of Go programming.

beginner13 courses15h estimated

Courses

1

Go Basics

Start your Go journey here. Learn variables, types, control flow, loops, functions, and error handling through hands-on coding exercises, and a slug generator project.

20 lessons+1070 XP3h
2

Composite Types

Build on your Go foundations with slices, maps, and structs. Learn to work with collections and create custom data types through practical exercises.

19 lessons+300 XP4h
3

Pointers & Memory

Master Go's pointers: take addresses, mutate through pointer parameters and receivers, handle nil safely, and see where memory lives. Capstone: build a feature-flag store that finds-or-creates flags and updates them in place through a returned pointer.

17 lessons+420 XP1h
4

Project: DNS Resolver

Build a DNS resolver in Go. Manage DNS records with pointers, implement a cache with TTL expiry, detect CNAME cycles, and handle zone transfers.

8 lessons+225 XP3h
5

Project: YAML Data Pipeline

Build a YAML data processing pipeline in Go. Parse multi-document YAML, transform rows, compute aggregations, and chain pipeline stages, all using slices, maps, and structs.

6 lessons+250 XP3h
6

Interfaces & Polymorphism

Learn to define behavior with interfaces, implement them implicitly, use the empty interface, perform type assertions, and compose interfaces to create flexible, maintainable Go code.

5 lessons+300 XP3h
7

Concurrency Fundamentals

Master Go's powerful concurrency features. Learn goroutines, channels, synchronization with WaitGroups and Mutexes, and the select statement for building efficient concurrent programs.

10 lessons+300 XP4h
8

Go Generics Masterclass

Master Go generics - type parameters, constraints, and best practices for writing reusable, type-safe code.

9 lessons+150 XP3h
9

Project: Rate Limiter

Build a rate limiter from scratch in Go. Apply your Go basics knowledge — slices, maps, structs, and pointer receivers — to build a real backend component that every API needs.

9 lessons+250 XP1h
10

Packages & Organization

Learn to organize Go code into packages, understand exported vs unexported identifiers, work with the standard library, manage dependencies with Go modules, and structure larger projects.

7 lessons+300 XP3h
11

Real-World Patterns

Apply your Go knowledge to real-world patterns. Learn file I/O, JSON handling, HTTP clients and servers, and testing strategies used in production applications.

12 lessons+350 XP5h
12

Go Language Deep Dives

Deep dive into advanced Go fundamentals. Master variadic functions, named return values, panic/recover patterns, and debugging techniques.

7 lessons+200 XP2h
13

Capstone: Web Crawler

Build a concurrent web crawler from scratch. Apply everything you've learned: goroutines, channels, mutexes, structs, interfaces, and error handling to crawl a live tech gadget shop.

7 lessons+500 XP7h