Blog
Articles, guides, and notes on software engineering.
Steps for Code Reading Using AI
Master code reading procedures using AI by creating documentation, checklists, and improvement notes to accelerate comprehension and analysis.
Recent Posts
Clean Code Cookbook: A Recipe Collection for Improving Code Design and Quality
Clean Code Cookbook: A Recipe Collection for Improving Code Design and Quality
The Go Programming Language, 2nd Edition: An Idiomatic Go Practical Guide for Programmers from Other Languages
The Go Programming Language, 2nd Edition: An Idiomatic Go Practical Guide for Programmers from Other Languages
Delegation Over Inheritance
Learn duck typing and Liskov Substitution Principle. Build resilient Go applications using delegation patterns over inheritance.
Why Interfaces Change Less Frequently Than Implementations
Understand why Go interfaces change less frequently than implementations, stabilizing contracts while allowing implementation flexibility.
Why the Singleton Pattern is an Anti-Pattern
Examine why the Singleton pattern creates architectural problems and dependency injection provides superior design alternatives.
Understanding Terminal Specifications for TUI Development
Explore terminal specifications, raw mode, ANSI escape sequences, and termios for TUI development with practical Go implementations.
Test Doubles Explained: Mocks, Stubs, Fakes, and Spies
Learn the differences between test doubles: mocks, stubs, fakes, dummies, and spies. Understand when to use each type and how they improve unit test isolation and clarity.
Trends and Strategies for System Design Interviews
Trends and Strategies for System Design Interviews
Street Coder
Street Coder
Session-based and Token-based Authentication Methods
A comprehensive comparison and explanation of session-based and token-based authentication methods, covering technical details and implementation considerations.
Understanding Functional Programming
Understanding Functional Programming
What is the Architecture Advice Process (AAP)?
Implement Architecture Advice Process for decentralized decision-making with ADR and architectural governance frameworks.
Created a Spec Repository
Discover the bmf Framework and Cynefin-based story point estimation methods. Access community specifications and best practices.
Driving Domain with Data Modeling - Towards Distributed and Loosely Coupled Core Systems
Driving Domain with Data Modeling - Towards Distributed and Loosely Coupled Core Systems
Exploring Processes, Goroutines, and Memory in Go
Explore Go virtual address spaces, process isolation, goroutine memory sharing, stack and heap behavior.
Introduction to Prolog
Introduction to Prolog
The Penguin Who Became a Seagull
The Penguin Who Became a Seagull
The Importance of Explicitly Stating Constraints and Trade-offs in Technical Decision Making
Document technical decisions by explicitly stating constraints and trade-offs to enable future re-evaluation and org growth.
Basic Patterns of Cache Strategies
Learn the five cache strategies: Cache Aside, Read Through, Write Through, Write Back, and Write Around. Covers read/write flows, consistency trade-offs, and mermaid diagram walkthroughs.