Tags /

#Software Design

3 posts

Cover for Value Objects & Entities in TypeScript: Building Blocks That Can't Break
Programming 3366 words 17 min

Value Objects & Entities in TypeScript: Building Blocks That Can't Break

Learn how Value Objects and Entities make invalid states impossible in TypeScript. Build self-validating domain code with TDD — the blocks that can't break.
Cover for Beyond PGN: Designing an Ultra-Efficient Chess Storage Format
Programming 1956 words 10 min

Beyond PGN: Designing an Ultra-Efficient Chess Storage Format

Every chess database begins with the same question: how do we store a game? PGN is the default answer — human-readable, portable, and surprisingly wasteful. A walkthrough of moving toward binary coordinates and legal-move indexing, and the engineering trade-off between the smallest format and the fastest one.
Programming 1526 words 8 min

TDD Isn't About Bugs — It's Your Permission to Refactor

Learn why test-driven development is really about permission to refactor, not catching bugs. With TypeScript examples, Result<T, E> patterns, and behavior-based testing from 3 years in production.