Tag
interface-design
- Feb 25, 2026 Branch by Abstraction and the Cost of Two Live Paths Replacing a widely used component without a long-lived branch means running both implementations behind one interface. The interface, not the code, is what has to be designed. software engineering
- Jan 6, 2024 Seams: The Places Where Behavior Can Be Substituted A seam is a point where an edit can change behavior without editing at that point. Link seams, object seams, and preprocessor seams cost different amounts and fail differently. software engineering