Tweet
Main Take-away Points:
- “Developing in isolation can help an individual go faster but it does not help a team go faster. Merge time and rework cannot be estimated and will vary wildly, and the team can only go as fast as the slowest merge.” – Steve Smith
- “A spike solution is a very simple program to explore potential solutions. Build the spike to only address the problem under examination and ignore all other concerns. Most spikes are not good enough to keep, so expect to throw it away.” – Don Wells
- “The objective is to eliminate unfit release candidates as early in the process as we can …You are effectively prevented from releasing into production builds that are not thoroughly tested and found to be fit for their intended purpose.” – Jez Humble and Dave Farley
- “Feature Branching is a poor man’s modular architecture, instead of building systems with the ability to easy swap in and out features at runtime/deploy-time they couple themselves to the source control providing this mechanism through manual merging.” – Dan Bodart
- “Feature Branching hinders integration of features.”
“Feature Branching hides work for the rest of the team. Frequently merging back to mainline = communicating with your team” - “Feature Branching works against refactoring.”
- “Feature Branching creates inventory.”
- “Feature Branching increases risk.”
- “Feature Branching creates cognitive overload.”
- “Continuous Integration Your application is always in a releasable state on main line – with Trunk Based Development”
- “Continuous Integration Your application is always in a releasable state on main line.”
- “Break large changes into a set of small incremental changes”
- “Use Branch by Abstraction when performing large refactoring.”
“Feature Toggles to decouple feature release from code deployment.” - “Trunk-based development requires a big mindset shift. Engineers thought trunk-based development would never work, but once they started, they could not imagine ever going back.” – Gary Gruver
Additional Learning Assets:
Additional Self-Study Assets:
- 05/05 – LESS TALKS: Dave Snowden: Answering Tough Questions (Q&A)
- 02/27 – LESS TALKS: Q & A on “The Spotify “Model”: Don’t Simply Copy-Paste”, with Evan Campbell
- SAFe: Market Share Increase. Rapid Growth. What is the recipe? (please, make sure to reference to large collection of references at the bottom of this page)
- LeSS NYC meetup
Read here for some articles on managing code feature branches and some trunk-based dev https://martinfowler.com/ and refactoring.com, some thoughts on contract-based programming: https://blog.adacore.com/the-case-for-contracts
For people asking what and how to measure – take a look at this talk: https://codeclimate.wistia.com/medias/jcrn6ahlp1
But in all its devious simplicity- DORA metrics is currently the best supported (by evidence) way to go
https://www.devops-research.com/research.html
This was a great talk! Thanks for putting this together!