Learning

A personal knowledge base of deep-dive engineering notes — written to understand systems from first principles, not just to use them. Each topic is broken down session by session, building intuition from the ground up.

Contents

bridgeonline/ — Building a real-time multiplayer Bridge game

A session-by-session developer guide covering the design and implementation of BridgeOnline: a four-player, real-time Contract Bridge web app. The notes trace the whole system — domain logic, real-time sync, persistence, voice, testing, and the bugs found along the way.

ModuleTopic
00 — Project OverviewWhat the app is and why it’s worth studying
01 — Architecture & DesignHow the system fits together
02 — Game Logic as Pure FunctionsBridge rules and DSA inside the engine
03 — Database Design with PrismaSchema, FK constraints, ORMs
04 — Real-Time with Socket.ioEvents, rooms, pub-sub, state sync
05 — Testing StrategyUnit → Integration → E2E
06 — WebRTC & Voice ChatP2P, SDP, ICE, mesh topology
07 — ScalabilityRedis, queues, reconnection, observability
08 — TypeScript & Next.js PatternsAsync params, Prisma JSON, enum narrowing
09 — Game State Bugs & Defensive CodingGuard clauses, spec tests, API testing
10 — E2E, Playwright & Node.js 24webServer env, CDP, multi-browser contexts
11 — Full Game Simulation & Play-Route BugsEnd-to-end play debugging
12 — Turn Order Fix & Passed-Out UITurn order, passed-out hand handling

cloud/ — Cloud computing & Kubernetes from first principles

Notes on the mental models, architecture, and mechanics of modern cloud computing.

  • basic_learning.md — Cloud from first principles to production
  • MentalModels/ — Utility model, statistical multiplexing, virtualization, fault tolerance, networking, elasticity, cost
  • Architecture/ — Global infra, compute, storage, networking, load balancing, databases, serverless, containers, security, observability
  • kubernetes/ — The ladder from kernel → OS → VM → Docker → Kubernetes

How these notes are written

Each document explains why a thing exists before how it works, builds on the previous one, and assumes strong DSA fundamentals. DOUBTS.md files capture open questions worth revisiting.