SlideShare a Scribd company logo
1 of 45
Download to read offline
29874_INT20
The Release Night is
an Anti-Pattern
Using Progressive Delivery To Safely
Release During Business Hours
Is this the
right way
to release
software?
BarCampManchesterUk - 40 empty pizza boxes
David Graham
https://www.flickr.com/photos/davidistesting/
https://creativecommons.org/licenses/by-nd/2.0/
Would you
do this
every day?
BarCampManchesterUk - 40 empty pizza boxes
David Graham
https://www.flickr.com/photos/davidistesting/
https://creativecommons.org/licenses/by-nd/2.0/
Would you
do this
every hour?
BarCampManchesterUk - 40 empty pizza boxes
David Graham
https://www.flickr.com/photos/davidistesting/
https://creativecommons.org/licenses/by-nd/2.0/
I Don’t Miss Release Nights!
Past Lives: Systems Trainer, Project Manager, Developer, Product Manager
Anti-Pattern:
1. Some repeated pattern of action, process or structure that
initially appears to be beneficial, but ultimately produces
more bad consequences than beneficial results.
+
2. A refactored solution exists that is clearly documented,
proven in actual practice and repeatable.
AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis
The Anti-Pattern: Big Bang Releases
The Refactored Solution: Continuous Delivery
Zooming out a bit…
Beware! The Anti-Pattern In Disguise
How Other Teams Achieve
More Flow & Less “OH NO!”
Progressive Delivery
1. Decouple Deploy From Release
2. Expose New Code to a Subset Of Users
3. Observe Impact on System Health & User Behavior
4. Expand or Contract Exposure (Repeat)
A “Release” Progressive Delivery Style
A “Release” Progressive Delivery Style
A “Release” Progressive Delivery Style
A “Release” Progressive Delivery Style
A “Release” Progressive Delivery Style
Decoupling Deploy & Release: Feature Flags
Observing System Health & User Behavior
How You Observe Matters
Science Solved This Challenge Long Ago
Random & Sticky By Hashing User/Feature
For A Given Flag, Each User Has A Bucket #
Bonus Tips For Using
Decoupling to Achieve
More Flow & Less “OH NO!”
Achieving Small Batch Size
Tip #1: Do Incremental Feature Development
•Build, Test & Ship Small Pieces
•Keep User-Facing Bits “Latent” Until Ready
•Expose as Needed for Feedback
Tip #2: Branch By Abstraction
https://martinfowler.com/bliki/BranchByAbstraction.html
Tip #2: Branch By Abstraction
https://martinfowler.com/bliki/BranchByAbstraction.html
Tip #2: Branch By Abstraction
https://martinfowler.com/bliki/BranchByAbstraction.html
Tip #2: Branch By Abstraction
https://martinfowler.com/bliki/BranchByAbstraction.html
Tip #2: Branch By Abstraction
https://martinfowler.com/bliki/BranchByAbstraction.html
Tip #3: Decouple Data/Service Migrations Too
Traditional “Release Night” Migration:
Pain Points in “Release Night” Migrations:
Decoupled Migration Using Feature Flags:
Decoupled Migration Using Feature Flags:
Decoupled Migration Using Feature Flags:
Decoupled Migration Using Feature Flags:
Decoupled Migration Using Feature Flags:
Benefits of Decoupled Migrations:
Wrap Up
1. Progressive Delivery: Decouple, Expose, Observe
2. Always Prioritize Small Batch Size
•Incremental Feature Development
•Branch By Abstraction
3. Decouple Data & Service Migrations Too!
The Data is In: You CAN Have a “Day Job” J
https://www.split.io/blog/on-a-mission-to-kill-release-nights/
Suggested Reading:
Interop 2020 The Release Night Is An Anti-Pattern
Interop 2020 The Release Night Is An Anti-Pattern

More Related Content

Similar to Interop 2020 The Release Night Is An Anti-Pattern

Embrace Community! Embrace a better life!
Embrace Community! Embrace a better life!Embrace Community! Embrace a better life!
Embrace Community! Embrace a better life!Rico Lin
 
Essential Prototyping for Entrepreneurs
Essential Prototyping for EntrepreneursEssential Prototyping for Entrepreneurs
Essential Prototyping for EntrepreneursBow Kraivanich
 
Managing Feature Requests & Backlog
Managing Feature Requests & BacklogManaging Feature Requests & Backlog
Managing Feature Requests & BacklogJamie Thomas
 
Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Above the Fold
 
Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Joe Baz
 
Seven Habits of Highly Effective Puppet Users
Seven Habits of Highly Effective Puppet UsersSeven Habits of Highly Effective Puppet Users
Seven Habits of Highly Effective Puppet UsersDavid Danzilio
 
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014Puppet
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentMatt Stine
 
Beyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and AgileBeyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and AgileJeff Gothelf
 
Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Peter Gfader
 
2017 Asia Startup Ecosystem Winter Digital Accelerator
2017 Asia Startup Ecosystem Winter Digital Accelerator2017 Asia Startup Ecosystem Winter Digital Accelerator
2017 Asia Startup Ecosystem Winter Digital AcceleratorChristine Souffrant Ntim
 
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AI
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AIBrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AI
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AIChristine Souffrant Ntim
 
Innovation Master Class
Innovation Master ClassInnovation Master Class
Innovation Master Classhblowers
 
Processes should serve creativity - Which processes help creatives to work be...
Processes should serve creativity - Which processes help creatives to work be...Processes should serve creativity - Which processes help creatives to work be...
Processes should serve creativity - Which processes help creatives to work be...Jan Korsanke
 
2016 BrandEntrepreneurs.com Business Bootcamps
2016 BrandEntrepreneurs.com Business Bootcamps2016 BrandEntrepreneurs.com Business Bootcamps
2016 BrandEntrepreneurs.com Business BootcampsChristine Souffrant Ntim
 
Introduction to Lean & Agile - Pacemaker.io
Introduction to Lean & Agile - Pacemaker.ioIntroduction to Lean & Agile - Pacemaker.io
Introduction to Lean & Agile - Pacemaker.iobart vermijlen
 
NTU Workshop: 03 What Is The Distributed Manufacturing Scenario
NTU Workshop: 03 What Is The Distributed Manufacturing ScenarioNTU Workshop: 03 What Is The Distributed Manufacturing Scenario
NTU Workshop: 03 What Is The Distributed Manufacturing ScenarioMassimo Menichinelli
 
The Mythical Product Owner
The Mythical Product OwnerThe Mythical Product Owner
The Mythical Product OwnerJon McNestrie
 

Similar to Interop 2020 The Release Night Is An Anti-Pattern (20)

Embrace Community! Embrace a better life!
Embrace Community! Embrace a better life!Embrace Community! Embrace a better life!
Embrace Community! Embrace a better life!
 
Essential Prototyping for Entrepreneurs
Essential Prototyping for EntrepreneursEssential Prototyping for Entrepreneurs
Essential Prototyping for Entrepreneurs
 
Managing Feature Requests & Backlog
Managing Feature Requests & BacklogManaging Feature Requests & Backlog
Managing Feature Requests & Backlog
 
Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)
 
Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)Solution Design - The Hidden Side of UX (for Product Managers)
Solution Design - The Hidden Side of UX (for Product Managers)
 
FMP Proposal
FMP ProposalFMP Proposal
FMP Proposal
 
Seven Habits of Highly Effective Puppet Users
Seven Habits of Highly Effective Puppet UsersSeven Habits of Highly Effective Puppet Users
Seven Habits of Highly Effective Puppet Users
 
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software Development
 
Beyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and AgileBeyond Staggered Sprints: Integrating User Experience and Agile
Beyond Staggered Sprints: Integrating User Experience and Agile
 
Kanban in Action
Kanban in ActionKanban in Action
Kanban in Action
 
Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!Use Scrum and Continuous Delivery to innovate like crazy!
Use Scrum and Continuous Delivery to innovate like crazy!
 
2017 Asia Startup Ecosystem Winter Digital Accelerator
2017 Asia Startup Ecosystem Winter Digital Accelerator2017 Asia Startup Ecosystem Winter Digital Accelerator
2017 Asia Startup Ecosystem Winter Digital Accelerator
 
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AI
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AIBrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AI
BrandEntrepreneurs Business Boot Camp NYC Part 4 IOT AI
 
Innovation Master Class
Innovation Master ClassInnovation Master Class
Innovation Master Class
 
Processes should serve creativity - Which processes help creatives to work be...
Processes should serve creativity - Which processes help creatives to work be...Processes should serve creativity - Which processes help creatives to work be...
Processes should serve creativity - Which processes help creatives to work be...
 
2016 BrandEntrepreneurs.com Business Bootcamps
2016 BrandEntrepreneurs.com Business Bootcamps2016 BrandEntrepreneurs.com Business Bootcamps
2016 BrandEntrepreneurs.com Business Bootcamps
 
Introduction to Lean & Agile - Pacemaker.io
Introduction to Lean & Agile - Pacemaker.ioIntroduction to Lean & Agile - Pacemaker.io
Introduction to Lean & Agile - Pacemaker.io
 
NTU Workshop: 03 What Is The Distributed Manufacturing Scenario
NTU Workshop: 03 What Is The Distributed Manufacturing ScenarioNTU Workshop: 03 What Is The Distributed Manufacturing Scenario
NTU Workshop: 03 What Is The Distributed Manufacturing Scenario
 
The Mythical Product Owner
The Mythical Product OwnerThe Mythical Product Owner
The Mythical Product Owner
 

Recently uploaded

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 

Recently uploaded (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 

Interop 2020 The Release Night Is An Anti-Pattern