SlideShare a Scribd company logo
MenderCon 2021 - Keynote
MenderCon 2021 - Keynote
Platform Migrations
What can we learn by using the world around us as a metaphor?
Repeating Problem
Platforms need to change frequently
Some Examples
• Web app: Python 2.7 to 3.x upgrades
• Java web app: Apache Struts 1.x to Spring Boot 2.x
• Java web app: Play 1.x to Spring Boot 2.x
• Rails web app: upgrade to a version that’s still receiving security
updates
• Windows desktop app: Win32 to WinUI
• Linux desktop app: X11 to Wayland
• macOS desktop app: Cocoa to SwiftUI
Typical Approach
Video Source: https://www.pexels.com/video/video-of-building-collapsing-855464/
Metaphor
Construction (and Destruction)
Building Construction Metaphor
• Used as justification for traditional engineering practices
• Big up front design
• Extremely detailed plans and strict time lines
• Often discredited
• Does not match well with software development
• Assembling the building is most similar to compiling source code
• Fails to capture the difference between complicated and complex
Where does building construction fit?
Complicated
• Lots of similarities between projects
• Consistency drives progress
• Lots of room for process optimization
• Relies on pre-existing materials
• Leverages experience gained from
past projects
Complex
• Each project is unique
• Experimentation drives progress
• Process optimization limits creativity
• Materials have to be invented
• Past experience is not a good
predictor of future success
Demolition
Is it as simple as rm –rf (or Remove-Item –Recurse –Force)?
Overlooked Aspects
• Migration
• Cleanup
• Loss of use
• Time Impact
• Opportunity Cost
Demolition
Image Source: https://unsplash.com/photos/ivHVZCmm5wY
A Better Metaphor?
The Built Environment
The Built Environment
Imagine your city
Image Source: https://unsplash.com/photos/dqgVnnRzPio
The Built Environment
Zoom out and look at it
Image Source: https://unsplash.com/photos/wLzX0juwGRg
The Built Environment
Structures
Houses
Offices
Stores
Surfaces
Highways
Streets
Alleyways
Walkways
Utilities
Power
Water
Sewer
Data
The Built Environment
Properties
• Behaves like an organism
• Changing constantly
• Never stops operating
• Complete disruptions are not
tolerated
Mapping
The Built Environment
• Structures
• Surfaces
• Utilities
The Digital Environment
• Applications
• Protocols
• Information
Change is a Constant
The world around us is constantly changing and remaking itself
Real Life Platform Migration
Video Source: https://www.cnn.com/style/article/shanghai-relocate-building-preservation-intl-hnk-scli/index.html
Platform Migrations
What can we learn from the built environment?
Raising Chicago, IL – 1850s-1860s
Frequent standing water creates a health crisis
Raising Chicago, IL – 1850s-1860s
Problem
• Standing water causing disease
• Frequently flooded streets
• Vehicles getting stuck in the mud
Solution
• Add sewers and create a path for water to drain
• Lift several city blocks over 4 feet (1.22 meters)
• Add filler to raise “ground” height
Image Source: https://drloihjournal.blogspot.com/2017/08/raising-chicago-streets-out-of-mud-in.html
Raising Chicago, IL – 1850s-1860s
• Many buildings were lifted while in use
• One hotel patron is quoted as only noticing that the
building was higher because the steps were steeper
when they left the building
• Some building owners took the opportunity to
relocate buildings, while occupied
• Newspaper stories contain quotes of people
commenting that they had to wait for buildings to
cross the street
Image Source: https://drloihjournal.blogspot.com/2017/08/raising-chicago-streets-out-of-mud-in.html
Raising Galveston, TX – 1900s
Hurricane decimates island community
Raising Galveston, TX – 1900s
Category 4 hurricane
• Much of the city was destroyed or in ruins
• Survivors wanted to rebuild and defend against
future storms
Solution
• Construct seawall
• Raised almost 500 city blocks by 8 to 17 feet (2.44
to 5.18 meters)
• Add filler to raise the “ground” height
Image Source: https://www.chron.com/neighborhood/bayarea/slideshow/The-1900-Storm-in-Galveston-69849/photo-5159270.php
Raising Galveston, TX – 1900s
Raised house shown before and after fill is added
Image Source: https://www.galvestonhistorycenter.org/research/grade-raising
Raising Galveston, TX – 1900s
• Many buildings were lifted while in use
• Temporary elevated sidewalks were added in some
residential areas
• The entire project took almost a decade – work was
completed in 1911
• Galveston hit by another hurricane in 1909 – first
major test of the new seawall
Image Source: https://www.galvestonhistorycenter.org/research/g-59262-ff1-6
Indianapolis, IN - 1930
Indiana Bell office building moved and rotated while in use
Indiana Bell Building - 1930
• Wanted to better utilize surface area of the city
block
• Original plan was to demolish the building and
construct a bigger one
• Most of the regions phone lines ran through the
building
Image Source: https://www.galvestonhistorycenter.org/research/g-59262-ff1-6
Indiana Bell Building - 1930
• Building remained operational
• Employees continued to report to
work
• Customers continued to visit
• All utilities remained hooked up and
operational
• Process took about a month to
complete
Video Source: https://twistedsifter.com/2021/03/1930-
indiana-bell-building-move/
Indiana Bell Building - 1930
• New building was constructed next to
the old one once the move was
complete
Platform Migrations
Important Lessons
Lessons from the Built Environment
• Review the consequences
• Have a migration plan
• Consider continuing to operate while moving
• Include opportunity cost when calculating return on investment
Image Source: https://unsplash.com/photos/6wAGwpsXHE0
Brief Schedule Overview
How Pitch Session Works
Meet Menders Today
Join Legacy Code Rocks
https://legacycode.rocks
M. SCOTT FORD
CO-FOUNDER & CEO
scott@corgibytes.com
@mscottford
in/mscottford

More Related Content

PDF
The Dynamic Web
PDF
Dynamic Web
PPTX
Web archiving challenges and opportunities
PPTX
Static Site Generators - Developing Websites in Low-resource Condition
PDF
NYGeoCon2023.pdf
PDF
Api Versioning
PPTX
Trends and advancements in www.pptx
PDF
The Age of Responsive Design
The Dynamic Web
Dynamic Web
Web archiving challenges and opportunities
Static Site Generators - Developing Websites in Low-resource Condition
NYGeoCon2023.pdf
Api Versioning
Trends and advancements in www.pptx
The Age of Responsive Design

Similar to MenderCon 2021 - Keynote (20)

PPTX
Trends and advancements in www.pptx
PPTX
BIM case study
PDF
Web Services for Fun and Profit
PPTX
Bridge Square May 14, 2014 open house presentation
KEY
A Fractured Fairy Tale of the Internet (SI110)
PPTX
citigroupcenter.pptx
PDF
Web Information Systems Lecture 1: Introduction
PDF
RiverArch Investor Summary - Sponsor.pdf
PPTX
Dynamic web
PPTX
Ancillary Product Website Timeline
PDF
Modern Web Applications
PDF
The New York Times: Moving to GraphQL
PDF
UNC CAUSE 2010: Drupal BOF Presentation
PDF
Containers and microservices for realists
PDF
Containers and Microservices for Realists
PPTX
2015 0617 workshop_presentation_outfall_draft_brm
PPTX
Disruptive technology
PDF
Main page
PPTX
Resolving Project Boundary Challenges to Streamline FERC Hydropower Dam Relic...
PPTX
Unit 1.pptx
Trends and advancements in www.pptx
BIM case study
Web Services for Fun and Profit
Bridge Square May 14, 2014 open house presentation
A Fractured Fairy Tale of the Internet (SI110)
citigroupcenter.pptx
Web Information Systems Lecture 1: Introduction
RiverArch Investor Summary - Sponsor.pdf
Dynamic web
Ancillary Product Website Timeline
Modern Web Applications
The New York Times: Moving to GraphQL
UNC CAUSE 2010: Drupal BOF Presentation
Containers and microservices for realists
Containers and Microservices for Realists
2015 0617 workshop_presentation_outfall_draft_brm
Disruptive technology
Main page
Resolving Project Boundary Challenges to Streamline FERC Hydropower Dam Relic...
Unit 1.pptx
Ad

More from M. Scott Ford (11)

PPTX
Lessons Learned Migrating from Jekyll to Next.pptx
PDF
PyGeekle 2022 - A Deep Dive into Measuring Dependency Freshness with LibYear
PDF
Communication is Just as Important as Code
PDF
Moving a Monolith to Kubernetes
PDF
MenderCon 2020 Keynote Presentation
PDF
Makers and menders - Finding Talent for Legacy Code Projects
PDF
A deep dive into measuring dependency freshness with lib year
PDF
Building a Bridge to a Legacy Application: How Hard Can That Be?
PDF
Important metrics for Measuring Code Health
PDF
Embracing the Red Bar: A Technique for Safely Refactoring Your Test Suite
PDF
Old Code, New Tricks
Lessons Learned Migrating from Jekyll to Next.pptx
PyGeekle 2022 - A Deep Dive into Measuring Dependency Freshness with LibYear
Communication is Just as Important as Code
Moving a Monolith to Kubernetes
MenderCon 2020 Keynote Presentation
Makers and menders - Finding Talent for Legacy Code Projects
A deep dive into measuring dependency freshness with lib year
Building a Bridge to a Legacy Application: How Hard Can That Be?
Important metrics for Measuring Code Health
Embracing the Red Bar: A Technique for Safely Refactoring Your Test Suite
Old Code, New Tricks
Ad

Recently uploaded (20)

PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
Introduction to Artificial Intelligence
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Nekopoi APK 2025 free lastest update
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
L1 - Introduction to python Backend.pptx
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
CHAPTER 2 - PM Management and IT Context
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PTS Company Brochure 2025 (1).pdf.......
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Introduction to Artificial Intelligence
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Nekopoi APK 2025 free lastest update
ManageIQ - Sprint 268 Review - Slide Deck
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Understanding Forklifts - TECH EHS Solution
Design an Analysis of Algorithms II-SECS-1021-03
Upgrade and Innovation Strategies for SAP ERP Customers
L1 - Introduction to python Backend.pptx
VVF-Customer-Presentation2025-Ver1.9.pptx
Design an Analysis of Algorithms I-SECS-1021-03
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
How to Choose the Right IT Partner for Your Business in Malaysia
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...

MenderCon 2021 - Keynote

  • 3. Platform Migrations What can we learn by using the world around us as a metaphor?
  • 4. Repeating Problem Platforms need to change frequently
  • 5. Some Examples • Web app: Python 2.7 to 3.x upgrades • Java web app: Apache Struts 1.x to Spring Boot 2.x • Java web app: Play 1.x to Spring Boot 2.x • Rails web app: upgrade to a version that’s still receiving security updates • Windows desktop app: Win32 to WinUI • Linux desktop app: X11 to Wayland • macOS desktop app: Cocoa to SwiftUI
  • 6. Typical Approach Video Source: https://www.pexels.com/video/video-of-building-collapsing-855464/
  • 8. Building Construction Metaphor • Used as justification for traditional engineering practices • Big up front design • Extremely detailed plans and strict time lines • Often discredited • Does not match well with software development • Assembling the building is most similar to compiling source code • Fails to capture the difference between complicated and complex
  • 9. Where does building construction fit? Complicated • Lots of similarities between projects • Consistency drives progress • Lots of room for process optimization • Relies on pre-existing materials • Leverages experience gained from past projects Complex • Each project is unique • Experimentation drives progress • Process optimization limits creativity • Materials have to be invented • Past experience is not a good predictor of future success
  • 10. Demolition Is it as simple as rm –rf (or Remove-Item –Recurse –Force)?
  • 11. Overlooked Aspects • Migration • Cleanup • Loss of use • Time Impact • Opportunity Cost Demolition Image Source: https://unsplash.com/photos/ivHVZCmm5wY
  • 12. A Better Metaphor? The Built Environment
  • 13. The Built Environment Imagine your city Image Source: https://unsplash.com/photos/dqgVnnRzPio
  • 14. The Built Environment Zoom out and look at it Image Source: https://unsplash.com/photos/wLzX0juwGRg
  • 16. The Built Environment Properties • Behaves like an organism • Changing constantly • Never stops operating • Complete disruptions are not tolerated
  • 17. Mapping The Built Environment • Structures • Surfaces • Utilities The Digital Environment • Applications • Protocols • Information
  • 18. Change is a Constant The world around us is constantly changing and remaking itself
  • 19. Real Life Platform Migration Video Source: https://www.cnn.com/style/article/shanghai-relocate-building-preservation-intl-hnk-scli/index.html
  • 20. Platform Migrations What can we learn from the built environment?
  • 21. Raising Chicago, IL – 1850s-1860s Frequent standing water creates a health crisis
  • 22. Raising Chicago, IL – 1850s-1860s Problem • Standing water causing disease • Frequently flooded streets • Vehicles getting stuck in the mud Solution • Add sewers and create a path for water to drain • Lift several city blocks over 4 feet (1.22 meters) • Add filler to raise “ground” height Image Source: https://drloihjournal.blogspot.com/2017/08/raising-chicago-streets-out-of-mud-in.html
  • 23. Raising Chicago, IL – 1850s-1860s • Many buildings were lifted while in use • One hotel patron is quoted as only noticing that the building was higher because the steps were steeper when they left the building • Some building owners took the opportunity to relocate buildings, while occupied • Newspaper stories contain quotes of people commenting that they had to wait for buildings to cross the street Image Source: https://drloihjournal.blogspot.com/2017/08/raising-chicago-streets-out-of-mud-in.html
  • 24. Raising Galveston, TX – 1900s Hurricane decimates island community
  • 25. Raising Galveston, TX – 1900s Category 4 hurricane • Much of the city was destroyed or in ruins • Survivors wanted to rebuild and defend against future storms Solution • Construct seawall • Raised almost 500 city blocks by 8 to 17 feet (2.44 to 5.18 meters) • Add filler to raise the “ground” height Image Source: https://www.chron.com/neighborhood/bayarea/slideshow/The-1900-Storm-in-Galveston-69849/photo-5159270.php
  • 26. Raising Galveston, TX – 1900s Raised house shown before and after fill is added Image Source: https://www.galvestonhistorycenter.org/research/grade-raising
  • 27. Raising Galveston, TX – 1900s • Many buildings were lifted while in use • Temporary elevated sidewalks were added in some residential areas • The entire project took almost a decade – work was completed in 1911 • Galveston hit by another hurricane in 1909 – first major test of the new seawall Image Source: https://www.galvestonhistorycenter.org/research/g-59262-ff1-6
  • 28. Indianapolis, IN - 1930 Indiana Bell office building moved and rotated while in use
  • 29. Indiana Bell Building - 1930 • Wanted to better utilize surface area of the city block • Original plan was to demolish the building and construct a bigger one • Most of the regions phone lines ran through the building Image Source: https://www.galvestonhistorycenter.org/research/g-59262-ff1-6
  • 30. Indiana Bell Building - 1930 • Building remained operational • Employees continued to report to work • Customers continued to visit • All utilities remained hooked up and operational • Process took about a month to complete Video Source: https://twistedsifter.com/2021/03/1930- indiana-bell-building-move/
  • 31. Indiana Bell Building - 1930 • New building was constructed next to the old one once the move was complete
  • 33. Lessons from the Built Environment • Review the consequences • Have a migration plan • Consider continuing to operate while moving • Include opportunity cost when calculating return on investment
  • 38. Join Legacy Code Rocks https://legacycode.rocks
  • 39. M. SCOTT FORD CO-FOUNDER & CEO scott@corgibytes.com @mscottford in/mscottford