Table of Contents
The Concept of State
Variables, RAM, and how computers remember data.
The Shape of Data
Data Types, Primitives, and strict memory molds.
Making Decisions
Control Flow, Booleans, and branching logic.
The Engine of Software
Loops, iteration, and avoiding repetitive code.
Reusable Machinery
Functions, the Call Stack, and Scope.
Contiguous Memory
Arrays, Lists, and managing blocks of sequential data.
Hash Maps
Dictionaries, hashing algorithms, and instant O(1) lookups.
Pointers & References
Passing by Value vs Passing by Reference. Understanding memory addresses.
Bundling State & Behavior
Object-Oriented Programming (OOP), Classes, and Instances.
When Things Go Wrong
Error Handling, Exceptions, and Stack Unwinding.
Persistence Beyond RAM
File I/O, writing to disks, and Data Buffers.
The Janitor of the Machine
Memory Management, Garbage Collection, and Reference Counting.
Measuring Efficiency
Algorithms, Big O Notation, and Time/Space Complexity.
Time Travel & Multiverses
Git, Version Control, Commits, and Branching.
Structured Persistence
Databases, SQL, Relational Algebra, and Indexes.
Computers Talking to Computers
APIs, Networking, HTTP, JSON, and REST.
Doing Two Things at Once
Concurrency, Async/Await, and the Event Loop.
Proving Your Code Works
Testing, TDD, Assertions, and Mocking.
Building the Skyscraper
Software Architecture, MVC, and Design Patterns.
Shipping to the World
Deployment, Docker, Containers, and CI/CD Pipelines.