Skip to main content

The Blog

Insights on code quality, architecture analysis, and technical debt.

AI Makes You Code 4x Faster. It Also Creates 4x More Debt.

AI coding assistants boost velocity but leave behind duplicate blocks, missing abstractions, and untested code. Here's what the research shows — and how to catch it before it compounds.

aicode-qualitytechnical-debt
Mar 27, 2026
7 min read

Why Linters Miss Your Worst Bugs

ESLint, Clippy, and Ruff are great at what they do. But file-by-file analysis has a fundamental blind spot: it can't see your architecture. Here's what graph analysis catches that linters never will.

architecturestatic-analysisgraph-analysis
Mar 25, 2026
9 min read

Circular Dependencies: What They Are, Why They're Dangerous, and How to Fix Them

Circular dependencies silently rot your codebase. Learn what causes dependency cycles, why file-by-file linters can't detect them, and how graph algorithms like Tarjan's SCC find and fix them.

architecturecircular-dependenciesdependency-cyclescode-quality
Mar 23, 2026
10 min read

How to Actually Measure Technical Debt

Stop arguing about technical debt and start measuring it. Here's how to combine cyclomatic complexity, coupling, cohesion, and graph-based metrics into a score that tracks real structural decay.

technical-debtcode-qualitymetricsarchitecture
Mar 21, 2026
11 min read

11 Rust CLI Tools Every Developer Should Know in 2026

A curated list of Rust-powered CLI tools that are faster, simpler, and better than their predecessors. From ripgrep to Repotoire, these tools replace slow scripts with single-binary speed.

rustcli-toolsdeveloper-toolsproductivity
Mar 19, 2026
10 min read