Migrations - The Hardest Actual Problem in Computer Science • Matt Ranney • YOW! 2022

Expert developer Matt Ranney tackles the challenges of database migrations, sharing insights on maintaining client agnosticism, leveraging abstractions, and prioritizing automation for seamless upgrades.

Key takeaways
  • Migrations are the hardest actual problem in computer science
  • When migrating, the client should not know about the change
  • Use good abstractions to make migrations easier
  • Avoid using ORMs because they can make migration harder
  • Dual write logic can be used to make migrations easier
  • Event-based systems can help fix some migration problems
  • Migrations can be very complicated and hard to debug
  • Small teams can be successful with migrations, while larger teams may struggle
  • Engineers should be careful when making changes to ensure they don’t break the system
  • Automation is key to making migrations smoother
  • Keeping the database in sync can be challenging
  • Good abstractions can make migrations more manageable
  • It’s important to test thoroughly during and after migrations