6-month track
C++
Six months from your first compiler error to a real systems project, in modern C++.
What is C++?
C++ is a compiled, high-performance systems language that adds object orientation, templates and fine-grained memory control on top of C. It still powers game engines, trading systems, browsers and embedded firmware because it gives you direct control over memory and hardware without making you write everything from scratch.
What you'll learn
- Read and write idiomatic modern C++ (C++17/20), not just C-with-classes
- Manage memory safely with RAII and smart pointers instead of raw new/delete
- Use the STL's containers and algorithms instead of hand-rolling your own
- Debug a real program with gdb and reason about undefined behaviour
Curriculum
month 1
Foundations
Get comfortable with the compiler, the syntax and the basic building blocks.
- Variables, types and operators
- Control flow: if/else, loops, switch
- Functions and header files
- Compiling and linking with g++
month 2
Memory & Pointers
Move from values to addresses — the part of C++ most languages hide from you.
- Pointers and references
- Arrays, the stack and the heap
- Dynamic allocation with new/delete
- Debugging a segfault
month 3
Object-Oriented C++
Model real problems with classes instead of loose functions.
- Classes, constructors and destructors
- Inheritance and polymorphism
- Operator overloading
- Encapsulation and access control
month 4
The Standard Library
Stop reinventing containers and algorithms — use the STL.
- vector, map, set and string
- Iterators and ranged for
- <algorithm>: sort, find, transform
- Working with strings properly
month 5
Modern C++
Write C++ the way it's actually written today, not in 1998.
- Smart pointers: unique_ptr, shared_ptr
- Move semantics and RAII
- Templates and generic functions
- Exceptions and error handling
month 6
Capstone Project
Put six months together into one real, working program.
- Design a small systems project (e.g. a key-value store)
- Multithreading basics
- Debugging with gdb
- Ship and document the project