Structured learning materials and notes organized by topic.
Lessons (236 total)
- Day 001: Distributed Systems Foundations (Distributed systems fundamentals) [DONE]
- Day 002: Gossip Protocols and Epidemic Algorithms (Gossip protocols fundamentals) [DONE]
- Day 003: Operating Systems and Process Coordination (Operating systems fundamentals) [DONE]
- Day 004: Fault Tolerance and Failure Handling (Fault tolerance mechanisms) [DONE]
- Day 005: Consensus Algorithms: Raft and Paxos (Consensus algorithms fundamentals) [DONE]
- Day 006: OS Concurrency and Synchronization Primitives (Concurrency and synchronization) [DONE]
- Day 007: Time and Causality in Distributed Systems (Logical clocks and causality) [DONE]
- Day 008: CAP Theorem and Real-World Trade-Offs (CAP theorem and trade-offs) [CURRENT]
- Day 009: Complex Systems and Emergence (Complex systems and emergence) [TODO]
- Day 010: Adaptive Systems and Self-Organization (Adaptive systems and feedback) [TODO]
- Day 011: Cross-Scale Coordination and Hybrid Systems (Hierarchical coordination systems) [TODO]
- Day 012: Advanced Applications and Case Studies (Production systems analysis) [TODO]
- Day 013: Comprehensive Integration and Review (Systems integration review) [TODO]
- Day 014: Advanced Project Application (Production systems design) [TODO]
- Day 015: Advanced Optimization and Real-World Considerations (Performance optimization strategies) [TODO]
- Day 016: Future Research and Advanced Topics (Research and innovation) [TODO]
- Day 017: Event Sourcing and Durable History (Event sourcing fundamentals) [TODO]
- Day 018: CQRS and Specialized Read/Write Models (CQRS pattern fundamentals) [TODO]
- Day 019: Saga Pattern and Distributed Workflows (Saga pattern fundamentals) [TODO]
- Day 020: Stream Processing and Continuous Data Flows (Stream processing fundamentals) [TODO]
- Day 021: Distributed Tracing and Request Causality (Distributed tracing fundamentals) [TODO]
- Day 022: Chaos Engineering and Controlled Failure (Chaos engineering fundamentals) [TODO]
- Day 023: Resilience Patterns and Failure Containment (Resilience patterns fundamentals) [TODO]
- Day 024: Testing Non-Deterministic Distributed Systems (Distributed systems testing) [TODO]
- Day 025: Microservices and Bounded Service Boundaries (Microservices architecture fundamentals) [TODO]
- Day 026: Service Mesh and Infrastructure-Mediated Networking (Service mesh architecture) [TODO]
- Day 027: Kubernetes and Declarative Cloud Operations (Kubernetes fundamentals) [TODO]
- Day 028: Edge Computing, CDNs, and Geographic Locality (Edge computing fundamentals) [TODO]
- Day 029: Constraint-Driven System Design (System design fundamentals) [TODO]
- Day 030: Architecture Case Studies and Transferable Lessons (Architecture case studies) [TODO]
- Day 031: Serverless, Edge, and Evolving Abstractions (Serverless and edge systems) [TODO]
- Day 032: Writing and Reviewing Architecture Proposals (Architecture decision documents) [TODO]
- Day 033: Process Lifecycles and Service Lifecycles (Process lifecycle fundamentals) [TODO]
- Day 034: Memory Hierarchies and Distributed State (Memory management fundamentals) [TODO]
- Day 035: Scheduling Fairness from CPUs to Load Balancers (Scheduling and load balancing) [TODO]
- Day 036: IPC, RPC, and Communication Boundaries (IPC and RPC fundamentals) [TODO]
- Day 037: File Systems and Distributed Metadata (File system fundamentals) [TODO]
- Day 038: Block, File, and Object Storage (Storage abstractions) [TODO]
- Day 039: Caching Across Storage Layers (Caching fundamentals) [TODO]
- Day 040: Replication, Logs, and Storage Consistency (Storage consistency fundamentals) [TODO]
- Day 041: Network Layers and Application Communication (Network stack fundamentals) [TODO]
- Day 042: Serialization, Schemas, and Protocol Choices (Serialization fundamentals) [TODO]
- Day 043: Timeouts, Retries, and Backoff (Failure handling fundamentals) [TODO]
- Day 044: Network Partitions and Failure Models (Network failure fundamentals) [TODO]
- Day 045: Containers, Isolation, and Shared Kernels (Container isolation fundamentals) [TODO]
- Day 046: Orchestration and Declarative Cluster Control (Cluster orchestration fundamentals) [TODO]
- Day 047: Observability Across Local and Distributed Systems (Observability fundamentals) [TODO]
- Day 048: Designing Hybrid Local and Distributed Systems (Hybrid systems design) [TODO]
- Day 049: REST and Resource-Oriented APIs (REST API fundamentals) [TODO]
- Day 050: GraphQL and Client-Shaped Data (GraphQL fundamentals) [TODO]
- Day 051: Authentication, Authorization, and API Trust (API security fundamentals) [TODO]
- Day 052: API Versioning and Contract Evolution (API evolution fundamentals) [TODO]
- Day 053: Layered Backend Architecture (Layered architecture fundamentals) [TODO]
- Day 054: Dependency Injection and Runtime Composition (Dependency injection fundamentals) [TODO]
- Day 055: Repositories, Units of Work, and Persistence Boundaries (Persistence abstraction fundamentals) [TODO]
- Day 056: SOLID Principles in Backend Design (SOLID backend fundamentals) [TODO]
- Day 057: Validation at Backend Boundaries (Backend validation fundamentals) [TODO]
- Day 058: DTOs, Entities, and Data Mapping (Data mapping fundamentals) [TODO]
- Day 059: Request Lifecycles Through the Backend (Request lifecycle fundamentals) [TODO]
- Day 060: Backend Error Handling and Failure Semantics (Backend error handling) [TODO]
- Day 061: Caching Strategies for Backend Performance (Backend caching strategies) [TODO]
- Day 062: Connection Pooling and Database Optimization (Database performance fundamentals) [TODO]
- Day 063: Monitoring and Observability for Backends (Backend observability fundamentals) [TODO]
- Day 064: Testing Strategies for Backend Systems (Backend testing strategies) [TODO]
- Day 065: Cache Fundamentals and Core Patterns (Caching patterns fundamentals) [TODO]
- Day 066: Redis as a Shared Caching Layer (Redis caching fundamentals) [TODO]
- Day 067: CDN and HTTP Caching Layers (HTTP caching fundamentals) [TODO]
- Day 068: Cache Invalidation and Freshness Control (Cache invalidation fundamentals) [TODO]
- Day 069: Queue Fundamentals and Asynchronous Thinking (Queue fundamentals) [TODO]
- Day 070: RabbitMQ, AMQP, and Message Routing (Message routing fundamentals) [TODO]
- Day 071: Redis Queues and Lightweight Job Systems (Redis queue fundamentals) [TODO]
- Day 072: Reliable Queue Processing (Queue reliability patterns) [TODO]
- Day 073: Worker Pool Architecture (Worker pool fundamentals) [TODO]
- Day 074: Scheduling, Delayed Jobs, and Time-Based Work (Job scheduling fundamentals) [TODO]
- Day 075: Rate Limiting and Backpressure for Workers (Worker backpressure fundamentals) [TODO]
- Day 076: Observability for Worker Systems (Worker observability fundamentals) [TODO]
- Day 077: Load Balancing Fundamentals (Load balancing fundamentals) [TODO]
- Day 078: Health Checks and Circuit Breakers (Service resilience fundamentals) [TODO]
- Day 079: Horizontal Scaling Patterns (Horizontal scaling fundamentals) [TODO]
- Day 080: Zero-Downtime Deployments (Deployment safety fundamentals) [TODO]
- Day 081: Microservices Principles and Trade-Offs (Microservices principles) [TODO]
- Day 082: Service Decomposition and Boundary Design (Service decomposition fundamentals) [TODO]
- Day 083: Inter-Service Communication Patterns (Service communication fundamentals) [TODO]
- Day 084: Service Discovery and Dynamic Topology (Service discovery fundamentals) [TODO]
- Day 085: API Gateway Patterns (API gateway fundamentals) [TODO]
- Day 086: Gateway Authentication and Edge Security (Gateway security fundamentals) [TODO]
- Day 087: Gateway Rate Limiting and Traffic Shaping (Gateway traffic control) [TODO]
- Day 088: Service Mesh Fundamentals (Service mesh fundamentals) [TODO]
- Day 089: Event-Driven Fundamentals (Event-driven fundamentals) [TODO]
- Day 090: Event Streaming and Kafka Fundamentals (Event streaming fundamentals) [TODO]
- Day 091: Choreography and Orchestration (Workflow coordination patterns) [TODO]
- Day 092: Event Sourcing and CQRS (Event sourcing fundamentals) [TODO]
- Day 093: Distributed Tracing Fundamentals (Distributed tracing fundamentals) [TODO]
- Day 094: Centralized Logging for Distributed Services (Centralized logging fundamentals) [TODO]
- Day 095: Monitoring Distributed Systems (Distributed monitoring fundamentals) [TODO]
- Day 096: Service-Level Objectives and Error Budgets (Service-level objective fundamentals) [TODO]
- Day 097: Machine Learning Fundamentals (Machine learning fundamentals) [TODO]
- Day 098: Linear Regression Fundamentals (Linear regression fundamentals) [TODO]
- Day 099: Gradient Descent Fundamentals (Gradient descent fundamentals) [TODO]
- Day 100: Polynomial Features and Regularization (Polynomial features and regularization) [TODO]
- Day 101: Logistic Regression Fundamentals (Logistic regression and binary classification) [TODO]
- Day 102: Decision Trees and Rule-Based Splits (Decision trees and impurity reduction) [TODO]
- Day 103: Naive Bayes for Text Classification (Naive Bayes and probabilistic classification) [TODO]
- Day 104: Classification Metrics and Trade-Offs (Classification metrics and threshold selection) [TODO]
- Day 105: Support Vector Machines and Margin (Support Vector Machines and margin maximization) [TODO]
- Day 106: K-Nearest Neighbors and Similarity (K-Nearest Neighbors and similarity-based learning) [TODO]
- Day 107: Random Forest and Bagging (Random Forest and ensemble variance reduction) [TODO]
- Day 108: Gradient Boosting and Sequential Correction (Gradient boosting and sequential ensemble learning) [TODO]
- Day 109: Feature Engineering and Representation (Feature engineering and data representation) [TODO]
- Day 110: Cross-Validation and Reliable Evaluation (Cross-validation and evaluation stability) [TODO]
- Day 111: Overfitting, Underfitting, and Regularization (Generalization and regularization) [TODO]
- Day 112: Learning Curves and Model Diagnosis (Learning curves and model diagnosis) [TODO]
- Day 113: Perceptron Foundations (Perceptron and linear classification) [TODO]
- Day 114: Activation Functions and Nonlinearity (Activation functions and nonlinear representation) [TODO]
- Day 115: Feedforward Propagation and Layered Representation (Feedforward propagation and layered representation) [TODO]
- Day 116: Loss Functions and Error Signals (Loss functions and task-aligned optimization) [TODO]
- Day 117: Chain Rule & Computational Graphs (Chain rule and computational graphs) [TODO]
- Day 118: Backpropagation Algorithm - Step by Step (Backpropagation algorithm) [TODO]
- Day 119: Implementing Backpropagation from Scratch (Implementing backpropagation from scratch) [TODO]
- Day 120: Gradient Checking & Debugging (Gradient checking and debugging neural networks) [TODO]
- Day 121: SGD Variants - Momentum, RMSprop, Adam (SGD variants and optimization dynamics) [TODO]
- Day 122: Learning Rate Schedules (Learning rate schedules and training dynamics) [TODO]
- Day 123: Weight Initialization (Weight initialization and signal propagation) [TODO]
- Day 124: Batch Normalization (Batch normalization and training stability) [TODO]
- Day 125: Dropout & Regularization Techniques (Dropout and regularization techniques) [TODO]
- Day 126: Data Augmentation Strategies (Data augmentation and invariance) [TODO]
- Day 127: Introduction to PyTorch (Introduction to PyTorch) [TODO]
- Day 128: Building Production Neural Networks (Production-minded neural network training in PyTorch) [TODO]
- Day 129: Convolution Operation (Convolution in neural networks) [TODO]
- Day 130: Pooling and CNN Architecture (Pooling and basic CNN architecture) [TODO]
- Day 131: Classic CNN Architectures (Reading classic CNN architectures) [TODO]
- Day 132: Building CNNs in PyTorch (Implementing CNNs in PyTorch) [TODO]
- Day 133: RNN Fundamentals (Recurrent neural network fundamentals) [TODO]
- Day 134: LSTM and GRU (Gated recurrent units and long short-term memory) [TODO]
- Day 135: Sequence-to-Sequence Models (Encoder-decoder sequence models) [TODO]
- Day 136: Text Generation with RNNs (Autoregressive text generation with recurrent networks) [TODO]
- Day 137: Transfer Learning Fundamentals (Transfer learning and reusing pretrained representations) [TODO]
- Day 138: Fine-Tuning Pre-trained Models (Adapting pretrained models with fine-tuning) [TODO]
- Day 139: Embeddings and Feature Extraction (Embeddings as reusable learned representations) [TODO]
- Day 140: Domain Adaptation and Few-Shot Learning (Adapting models under domain shift and label scarcity) [TODO]
- Day 141: Model Optimization for Production (Optimizing ML models for production constraints) [TODO]
- Day 142: Serving Models with APIs (Serving machine learning models via APIs) [TODO]
- Day 143: Containerization with Docker (Containerizing ML services with Docker) [TODO]
- Day 144: Cloud Deployment (Deploying ML inference services to cloud platforms) [TODO]
- Day 145: Introduction to Complexity Theory - What Makes Systems Complex? (Complex systems fundamentals for engineers) [TODO]
- Day 146: Self-Organization - Order Without Central Control (Self-organization in natural and engineered systems) [TODO]
- Day 147: Emergence - When the Whole is Greater Than the Sum of Parts (Emergence in complex systems) [TODO]
- Day 148: Feedback Loops - The Engine of Complexity (Feedback loops in complex systems) [TODO]
- Day 149: Cloud Computing Paradigm - From Servers to Services (Cloud computing as a service-oriented operating model) [TODO]
- Day 150: Elastic Scalability - Infrastructure That Adapts to Demand (Elastic scalability in cloud systems) [TODO]
- Day 151: Infrastructure as Code - Programmable Infrastructure (Infrastructure as code in cloud platforms) [TODO]
- Day 152: Cloud-Native Patterns - Designing for Failure (Cloud-native resilience patterns) [TODO]
- Day 153: Containers - Process Isolation as Building Blocks (Containers as process-isolation units) [TODO]
- Day 154: Kubernetes Architecture - Control Plane & Reconciliation Loops (Kubernetes as a declarative control system) [TODO]
- Day 155: Pod Orchestration - Scheduling, Probes & Lifecycle (Pod orchestration in Kubernetes) [TODO]
- Day 156: Service Mesh - Sidecar Pattern & Traffic Management (Service mesh and sidecar-based traffic policy) [TODO]
- Day 157: CI/CD Pipelines - GitOps & Automated Deployments (CI/CD and GitOps delivery systems) [TODO]
- Day 158: Observability - Metrics, Logs & Distributed Tracing (Observability in distributed systems) [TODO]
- Day 159: Monitoring & Alerting - SLOs, SLIs & On-Call Best Practices (Monitoring, alerting, and SLO-driven operations) [TODO]
- Day 160: Month 10 Capstone - Complexity + Cloud + DevOps Integration (Integrating complexity, cloud platforms, and operational feedback) [TODO]
- Day 161: Chaos Theory in Production Systems (Nonlinearity, sensitivity, and unstable regimes in production systems) [TODO]
- Day 162: Failure Injection Patterns (Designing useful fault injection experiments) [TODO]
- Day 163: Game Days & Fire Drills - Practicing Chaos (Running game days as socio-technical resilience exercises) [TODO]
- Day 164: Chaos Mesh & Litmus - Kubernetes Chaos Engineering (Using Kubernetes-native chaos tooling without losing the experimental mindset) [TODO]
- Day 165: Conway's Law - Systems Mirror Organizations (How communication structure shapes architecture) [TODO]
- Day 166: Team Topologies - Organizing for Fast Flow (Designing teams and interaction modes for sustainable flow) [TODO]
- Day 167: Platform Engineering - Internal Products (Designing internal platforms as products for developer flow) [TODO]
- Day 168: Developer Experience Metrics - Measuring Productivity (Measuring developer friction, flow, and platform effectiveness) [TODO]
- Day 169: Trunk-based Development - One Branch to Rule Them All (Reducing integration risk through small-batch continuous integration) [TODO]
- Day 170: Feature Flags & Progressive Delivery Advanced (Decoupling integration, exposure, and rollout safely) [TODO]
- Day 171: Release Trains & Coordination at Scale (Coordinating multi-team change without drowning in release friction) [TODO]
- Day 172: Deployment Strategies Advanced (Choosing deployment strategies by coexistence, rollback, and traffic control) [TODO]
- Day 173: High-Cardinality Observability (Balancing diagnostic power against observability cost and stability) [TODO]
- Day 174: Tail-Based Sampling - Intelligent Trace Collection (Keeping the most valuable traces under real cost constraints) [TODO]
- Day 175: Real-Time Anomaly Detection - ML-Powered Alerts (Using anomaly detection to surface unusual behavior without replacing core reliability signals) [TODO]
- Day 176: Cost Optimization - Observability at Scale (Designing observability signal quality under real budget constraints) [TODO]
- Day 177: Zero-Trust Architecture - Never Trust, Always Verify (Moving trust from network location to identity, context, and policy) [TODO]
- Day 178: Supply Chain Security - Trust But Verify Your Dependencies (Reducing trust in code, build systems, and artifacts you did not create yourself) [TODO]
- Day 179: Secrets Management - Never Commit a Secret Again (Treating secrets as portable authority that must be issued, scoped, rotated, and audited) [TODO]
- Day 180: Security Scanning & Shift-Left - Find Vulnerabilities Before Production (Placing security feedback where findings are still cheap to fix and precise enough to trust) [TODO]
- Day 181: ML Pipeline Security (Protecting data, training jobs, model artifacts, and promotion paths in machine learning systems) [TODO]
- Day 182: Model Security (Protecting deployed models against extraction, evasion, privacy leakage, and abusive query patterns) [TODO]
- Day 183: ML Model Deployment (Serving models as versioned inference systems with controlled rollout, rollback, and observability) [TODO]
- Day 184: Data Privacy & Compliance (Designing systems so personal data collection, use, retention, and access stay justifiable and controllable) [TODO]
- Day 185: Infrastructure as Code Security (Preventing insecure infrastructure from being created repeatedly through code, modules, and automation) [TODO]
- Day 186: Kubernetes Security (Controlling workload isolation, cluster permissions, and admission paths in a highly dynamic shared platform) [TODO]
- Day 187: Service Mesh Security (Moving workload identity, mTLS, and policy enforcement into the east-west network path) [TODO]
- Day 188: Golden Paths & Developer Experience (Making the safest and most operable platform path the easiest one for product teams to follow) [TODO]
- Day 189: SLOs, SLIs, and Error Budgets (Turning reliability promises into measurable operating contracts and release constraints) [TODO]
- Day 190: Observability & Monitoring (Using signals not just to detect known failures, but to explain unexpected behavior fast enough to act) [TODO]
- Day 191: Incident Management (Coordinating detection, leadership, communication, containment, and learning under production uncertainty) [TODO]
- Day 192: Chaos Engineering (Testing resilience assumptions with controlled experiments before real incidents discover the weakness first) [TODO]
- Day 193: Introduction to Gossip Protocols (Introduction to Gossip Protocols) [TODO]
- Day 194: SWIM Protocol - Scalable Membership at Scale (SWIM Protocol) [TODO]
- Day 195: HyParView - Hybrid Partial View Membership (HyParView) [TODO]
- Day 196: Gossip Topologies - Overlay Network Design (Gossip Topologies) [TODO]
- Day 197: Phi Accrual Failure Detector - Adaptive Suspicion (Phi Accrual Failure Detector) [TODO]
- Day 198: Heartbeats vs Gossip - Direct Probes vs Epidemic Dissemination (Heartbeats vs Gossip) [TODO]
- Day 199: Membership Protocols - Join, Leave, and Failure Handling (Membership Protocols) [TODO]
- Day 200: SWIM Improvements - Infection Dampening & Health Multipliers (SWIM Improvements) [TODO]
- Day 201: Plumtree - Epidemic Broadcast Trees (Plumtree) [TODO]
- Day 202: Anti-entropy with Merkle Trees (Anti-entropy with Merkle Trees) [TODO]
- Day 203: CRDTs for Gossip Convergence (CRDTs for Gossip Convergence) [TODO]
- Day 204: Vector Clocks - Causal Ordering in Gossip (Vector Clocks) [TODO]
- Day 205: Gossip Performance Optimization (Gossip Performance Optimization) [TODO]
- Day 206: Gossip Security & Byzantine Tolerance (Gossip Security & Byzantine Tolerance) [TODO]
- Day 207: Gossip in Production - Case Studies (Gossip in Production) [TODO]
- Day 208: Gossip Testing & Debugging (Gossip Testing & Debugging) [TODO]
- Day 209: Consensus Foundations: Safety, Liveness, and Fault Models (consensus safety liveness and fault models) [TODO]
- Day 210: FLP Impossibility and Failure Detectors (flp impossibility and failure detectors) [TODO]
- Day 211: Paxos Fundamentals: Single-Decree Consensus (paxos single-decree consensus) [TODO]
- Day 212: Multi-Paxos and Leader-Based Optimization (multi-paxos leader optimization) [TODO]
- Day 213: Raft Design Principles and Strong Leadership (raft design principles) [TODO]
- Day 214: Raft Log Replication and Commit Semantics (raft log replication and commit semantics) [TODO]
- Day 215: Raft Membership Changes and Joint Consensus (raft membership changes and joint consensus) [TODO]
- Day 216: ZAB and Total Order Broadcast in Practice (zab total order broadcast) [TODO]
- Day 217: Replication Models: Primary-Backup, Multi-Leader, and Leaderless (replication model trade-offs) [TODO]
- Day 218: Distributed Logs and Ordering Guarantees (distributed logs and ordering guarantees) [TODO]
- Day 219: Logical, Vector, and Hybrid Logical Clocks (logical vector and hybrid logical clocks) [TODO]
- Day 220: Snapshotting, Checkpointing, and Log Compaction (snapshotting checkpointing and log compaction) [TODO]
- Day 221: Exactly-Once Semantics, Idempotency, and Deduplication (exactly-once semantics and idempotency) [TODO]
- Day 222: Consensus Systems in Production: etcd, Consul, and ZooKeeper (consensus systems in production) [TODO]
- Day 223: Jepsen-Style Verification and Failure Injection (jepsen-style verification and failure injection) [TODO]
- Day 224: Monthly Capstone: Design a Consensus-Backed Control Plane (consensus-backed control plane capstone) [TODO]
- Day 229: Sloppy Quorums - Availability on Reachable Nodes (Sloppy Quorums) [TODO]
- Day 230: Hinted Handoff - Returning Temporary Replicas Home (Hinted Handoff) [TODO]
- Day 231: Chain Replication - Strong Consistency Through Ordered Replication (Chain Replication) [TODO]
- Day 232: Read Repair & Anti-Entropy - Healing Diverged Replicas (Read Repair & Anti-Entropy) [TODO]
- Day 233: OS Threads & Processes - Isolation, Sharing, and Scheduling (OS Threads & Processes) [TODO]
- Day 234: Locks & Synchronization - Preserving Invariants Under Interleaving (Locks & Synchronization) [TODO]
- Day 235: Lock-Free Data Structures - Progress Without a Mutex (Lock-Free Data Structures) [TODO]
- Day 236: Memory Models & Ordering - When Program Order Is Not Enough (Memory Models & Ordering) [TODO]
- Day 237: Async IO Fundamentals - Concurrency While Waiting (Async IO Fundamentals) [TODO]
- Day 238: io_uring - Shared Rings for Modern Linux Async IO (io_uring) [TODO]
- Day 239: Containers - Processes with Isolation and Resource Control (Containers) [TODO]
- Day 240: Isolation, Concurrency, and Virtualization - Integration Design Project (Isolation, Concurrency, and Virtualization) [TODO]