← Back to coursesprogramming
Go
Simple, fast, and concurrent. From Google.
Level: Beginner to Intermediate
About this course
Go is designed for clarity and concurrency, making it ideal for services, tooling, and cloud-native applications. You will learn the language basics, concurrency with goroutines and channels, and how to build reliable, efficient programs.
Curriculum
- Go fundamentals
- Installation and workspace
- Variables, types, and control flow
- Functions and multiple return values
- Composite types and methods
- Structs and embedding
- Methods and pointer receivers
- Interfaces and polymorphism
- Concurrency
- Goroutines and the runtime
- Channels and communication
- Patterns: pipelines, fan-out, context
- Packages and testing
- Creating and importing packages
- Writing tests and benchmarks
- Error handling and best practices
- I/O and HTTP
- Reading and writing files
- Building HTTP servers and clients
- JSON and encoding
- Projects and deployment
- Structuring a small service
- Building and cross-compilation
- Ecosystem and next steps