A comprehensive deep-dive into version control systems — from Git's internal model to advanced CLI tricks, branching workflows, GitHub power features, AI-assisted workflows, and running a self-hosted Git platform in your home lab with Gitea, Forgejo, and Woodpecker CI.
Development
-
Version Control Mastery: Git, GitHub, AI Agents, and the Home Lab Stack -
The Art of Code Review Code review is not a bug-catching net; machines are better at that. Its real payoff is shared understanding, design pressure, and a team that can safely change code none of them wrote alone. This is a guide to reviewing and being reviewed well: what humans should actually look for, how to write comments that land, why small pull requests are the highest-leverage habit, and how to keep review from becoming a bottleneck or a battleground.
-
Systematic Debugging Strategies Debugging is not guessing with extra steps. It is a discipline of forming hypotheses, designing experiments that can disprove them, and binary-searching the gap between a working state and a broken one. This is a working engineer's field guide to reproduction, bisection, observability-driven debugging, concurrency and heisenbugs, production debugging without a debugger, and turning every fixed bug into a test that keeps it dead.
-
Testing Strategies That Actually Work Tests do not prove your code is correct; they buy you the confidence to change it. This is a working strategy for spending a finite testing budget well: what the pyramid gets right and where the testing trophy disagrees, why testing behavior beats testing implementation, the real cost of mocks and flakiness, and why coverage is a useful gauge and a terrible target.
-
Refactoring Legacy Code Safely Legacy code is not old code; it is code you are afraid to change because it has no tests and no one remembers how it works. This is a practical method for taming it: pinning current behavior with characterization tests, finding seams to break dependencies, making changes in reversible small steps, and using the strangler-fig pattern to replace whole subsystems without a big-bang rewrite.
-
REST API Design Principles A well-designed API is intuitive to use and hard to misuse. The principles that hold up under real traffic: resource modeling, the idempotency contract behind HTTP methods, status codes that tell the truth, a real error format (RFC 9457), offset vs cursor pagination honestly, versioning strategies and why most are wrong, idempotency keys, and treating the spec as the contract.