Your one-stop shop for all Changelog podcasts. Weekly shows about software development, developer culture, open source, building startups, artificial intelligence, shipping code to production, and the people involved. Yes, we focus on the people. Everything else is an implementation detail.

Long-term code maintenance (Go Time #264)

January 27, 2023 44:05 42.83 MB Downloads: 0

Ole Bulbuk & Sandor Szücs join Natalie to discuss the ins & outs of long-term code maintenance. What does it take to maintain a codebase for a decade or more? How do you plan for that? What about inheriting a codebase for the long term? Oh, and (how) can AI help?

Discuss on Changelog News

Changelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!

Sponsors:

  • Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
  • Fly.io – The home of Changelog.com — Deploy your apps and databases close to your users. In minutes you can run your Ruby, Go, Node, Deno, Python, or Elixir app (and databases!) all over the world. No ops required. Learn more at fly.io/changelog and check out the speedrun in their docs.

Featuring:

Show Notes:

Something missing or broken? PRs welcome!

Timestamps:

(00:00) - It's Go Time!
(00:50) - Welcoming Ole & Sandor
(02:55) - Experience with other languages
(04:29) - On the Ship of Theseus
(08:58) - Inheriting & maintaining old codebases
(13:51) - Biggest problems for long-term maintainance
(15:43) - On product-driven development
(19:14) - Ole's approach to software development
(21:38) - A better approach than TDD?
(24:27) - Planning for long-term maintainability
(32:22) - Improving test coverage
(33:38) - Sandor on cleanroom implementation
(36:25) - How can AI help with maintainability?
(37:25) - It's time for Unpopular Opinions!
(37:57) - Sandor's unpop
(39:38) - Ole's unpop
(41:35) - Natalie's unpop
(42:34) - Time to Go!
(42:55) - Outro