- Lessons
- 10 modules
- 40
- Video duration
- 32 videos
- 5h 46m
- Download
- 0 files
- 0 bytes
- Quizzes
- 0
Zero to Gopher
Description
Go fundamentals in all their glory
Additional details
Go is the Future. Are you Ready to Build It?
Go is fast, powerful, and incredibly fun. It's the language powering high-scale systems at companies like Google, Uber, and Netflix. If you're ready to ditch runtime surprises and embrace a language designed for the modern cloud, "Zero to Gopher" is your perfect launchpad.
We start at the very beginning and rapidly build the real-world fundamentals knowledge you'll need to start your journeyy.
Who Is This Course For?
This course is specifically designed for junior to mid-level programmers with experience in languages like JavaScript/TypeScript, Python, or Ruby.
- You've felt the pain of dynamic typing and are intrigued by Go's simplicity and performance.
- You know compiled languages are the backbone of modern infrastructure, and Go is the one you need to learn.
- You simply haven't taken the plunge yet.
This is your moment.
Why Learn with Me?
I've been writing Go for over a decade and am the host of go podcast(). I've been in the trenches and know exactly what skills are needed for a successful Go career.
Join me in this 5+ hour, hands-on adventure where we'll build a solid Go foundation, covering everything you need for you to start writing Go programs and unlock next steps.
This course doesn't just teach syntax, it ensures you master the core concepts and the subtleties of the language. You'll finish the course ready to write clean, idiomatic Go programs that tackle real-world problems.
Stop watching from the sidelines. Become a Gopher today.
Your First Project: The Budget CLI
Even though this course focuses on core Go fundamentals, you won't just be doing dry exercises. You'll immediately start applying your knowledge by building a functional Command-Line Interface (CLI) Budget Tracker.
This project serves as a practical sandbox where you will:
- Master Go's Unique Type System: We'll model real-world concepts like an
Income
and anExpense
as standard Go structs. - Unlock the Power of Interfaces: You'll learn how both
Income
andExpense
can be treated uniformly as a singleTransaction
interface. This is a massive feature of Go, and you'll see firsthand how it leads to flexible, clean code.
Key Concepts You Will Master
Don't worry if terms like "struct" and "interface" sound new, we start from the absolute ground up! We build your foundation block-by-block, covering:
- Control Flow, Functions, and Data Types
- Idiomatic Error Handling (A critical skill for any Go developer)
- Unit Testing (Writing robust, reliable code)
- The Go Interface Model (The language's greatest strength)
A Note on Concurrency: You've probably heard that concurrency (goroutines and channels) is one of Go's most exciting features. While true, concurrency requires a solid understanding of all the basics covered here. To ensure you learn things correctly, we focus on the fundamentals first. Concurrency is a vast and exciting topic reserved for our next course!
Get ready to code, build, and become a Gopher!
Lessons in this course
All lessons are available after your purchase.
- Introduction
-
-
1.1 Welcome, what we're building 5 minsRequire purchase
-
1.2 Read this first 1 mins read timeRequire purchase
-
- Packages, structure, control flow
-
-
2.1 Packages 9 mins
-
2.2 Values, variables, constants 12 minsRequire purchase
-
2.3 Control flow 11 minsRequire purchase
-
2.4 Challenge 1 mins read timeRequire purchase
-
2.5 Solution 1 mins read timeRequire purchase
-
- Strings, numbers, dates
-
-
3.1 Strings 12 minsRequire purchase
-
3.2 Parse strings 11 minsRequire purchase
-
3.3 Date & time 9 minsRequire purchase
-
3.4 Demo 10 minsRequire purchase
-
3.5 Challenge 1 mins read timeRequire purchase
-
3.6 Solution 1 mins read timeRequire purchase
-
- Data structure in Go
-
-
4.1 Arrays and slices 9 minsRequire purchase
-
4.2 Maps 8 minsRequire purchase
-
4.3 Range loop 7 minsRequire purchase
-
4.4 Sorting your slices 2 mins read timeRequire purchase
-
4.5 Challenge 1 mins read timeRequire purchase
-
4.6 Solution 1 mins read timeRequire purchase
-
- Functions
-
-
5.1 What are functions 10 minsRequire purchase
-
5.2 Params and arguments 12 minsRequire purchase
-
5.3 Advance functions 8 minsRequire purchase
-
5.4 Challenge 4 minsRequire purchase
-
- Handling errors
-
-
6.1 Errors in Go 16 minsRequire purchase
-
6.2 Sentinel errors 11 minsRequire purchase
-
6.3 Custom errors 9 minsRequire purchase
-
- Testing your code
-
-
7.1 Why and how to test 12 minsRequire purchase
-
7.2 Unit tests 9 minsRequire purchase
-
7.3 Table tests 11 minsRequire purchase
-
- Structs and pointers
-
-
8.1 Modeling your data 16 minsRequire purchase
-
8.2 Methods and composition 17 minsRequire purchase
-
- Interfaces
-
-
9.1 Interfaces in Go 12 minsRequire purchase
-
9.2 Nil and interfaces 11 minsRequire purchase
-
9.3 Chalenge 10 minsRequire purchase
-
- Files, JSON encoding
-
-
10.1 Files in Go 15 minsRequire purchase
-
10.2 Buffered IO 9 minsRequire purchase
-
10.3 JSON / encoding 15 minsRequire purchase
-
10.4 Load and save budget data 9 minsRequire purchase
-
10.5 Make the load/save testable 15 minsRequire purchase
-
10.6 Adding entry, filtering 12 minsRequire purchase
-