Advanced Go: Building your own Redis
Learn how to build complex software with Go by building a Redis clone.
20 video lessons and 5 workshops, 5 h 55 min in total. 7 lessons free, the rest included with a membership. Each lesson is a video you can pause to take over the instructor's editor, change the code and run it in your browser, with challenges and instant feedback along the way.
Building the Store
- What we're going to build (Video lesson, 4 min, free)
- Scaffolding the store: structs and methods (Video lesson, 8 min, free)
- Maps: building the key-value storage (Video lesson, 13 min, free)
- Test Driven Development (Video lesson, 13 min, free)
- Testing Practice (Video lesson, 14 min, free)
- Sidequest: The Phantom Key (Workshop, free)
- Effective Error Handling (Video lesson, 13 min, free)
- Enforcing a max capacity (Video lesson, 14 min)
- Expiring keys: TTL and encryption (Video lesson, 16 min)
- Understanding Interfaces (Video lesson, 7 min)
- Composition with Interfaces: Middlewares (Video lesson, 12 min)
- Workshop: Metrics Middleware (Workshop)
- Understanding Pointers (Video lesson, 17 min)
- Cloning a Store (Video lesson, 8 min)
Concurrency
- Dispatching commands concurrently with goroutines (Video lesson, 13 min)
- Goroutine Synchronization (Video lesson, 8 min)
- Workshop: Goroutines Practice (Workshop)
- Race Conditions (Video lesson, 9 min)
- Making the store concurrency-safe: mutexes (Video lesson, 16 min)
- Understanding RWMutex (Video lesson, 9 min)
- Workshop: The Ticket Shop (Workshop)
- Channels (Video lesson, 9 min)
- Communicating with Channels (Video lesson, 11 min)
- Pizza Kitchen: Channels Practice (Workshop)
- Cancelling work with Context (Video lesson, 19 min)
Next course: Backend API Development