Branch By Abstraction
summary
Branch By Abstraction is a concrete technique for trunk‑based development: introduce an abstraction + toggle, implement both old and new implementations in the mainline, keep every commit build‑green, add unit tests for each implementation, and flip the toggle when the new path is fully tested. It lets long, multi‑release migrations (message format and bus changes at a bank; a C++→Java rewrite at an airline) be pausable and resumable, avoids noisy merges from long‑lived branches, and permits safe removal of the old code after a successful rollout.
AI-written summary · about
chapters (12)
- 0:00Start
- 3:28Trunk Based Development facilitates lots reca
- 5:10Bad Branching Models /2 (recap)
- 10:35Big to change thing - our intenton
- 11:39Big to change thing - our fear
- 12:41Big to change thing - our nightmare
- 14:47Reminder of the nightmare
- 15:40Idealized life on the trunk
- 17:53The big change in trunk alongside regular work
- 18:56Branch by Abstraction - first commits
- 20:43What other devs see at the start
- 21:49Part way through, for the dev doing the BbA we
related talks
50mFeature Branching considered Evil
41mA Branching Strategy For You?
05mBranching Strategies Ultimately Determine Product Complexity
38mFeature Branching is Evil
58mFeature Branches And Toggles In A Post-GitHub World
35mIncrease Agility and Quality Using Trunk-Based Development in Continuou...
49mBranching strategies: choose wisely to minimise costs
42mBranchstack: branching infra for better development
