Modern Craft in Ancient Codebase
Dates
- 2026-08-25 MUC++
- 2026-11-26 Meeting C++ 2026
Abstract
Ever felt stuck in a legacy codebase with a team - or at least parts of it - that resists change? I’ve been there. In this session, I’ll share practical tactics to help you introduce modern programming styles to a conservative environment—or at least keep your own passion alive while working in one. We’ll dive into the psychology of why some developers resist new practices and I’ll share the technical maneuvers I use to write contemporary code within a legacy framework.
Code Samples
- Help the types find their identity
- Before CompilerExplorer
- After CompilerExplorer
- Make global functions injectable
- Before CompilerExplorer
- After CompilerExplorer
- Divide and Conquer
- Before CompilerExplorer
- After CompilerExplorer
Additional Resources
Featured Blogposts
- The Rules of Three, Five and Zero in C++ - Phil Nash - sonarsource
- Beyond the Rules of Three, Five and Zero - Phil Nash - sonarsource
- Strong types for strong interfaces - Jonathan Boccara - Fluent{C++}
Featured Talks
- Test Driven C++ - Phil Nash - CppCon 2020
- Back to Basics: Testing in C++ - Phil Nash - CppCon 2023
- The real problem of C++ - Klaus Iglberger - Meeting C++ 2025
- consteval All The Things? - Jason Turner - ACCU 2025
- Understanding The constexpr 2-Step - Jason Turner - C++ on Sea 2024
- CppCon 2017: Ben Deane & Jason Turner “constexpr ALL the Things!”
- KEYNOTE: What Everyone Should Know About How Amazing Compilers Are - Matt Godbolt [C++ on Sea 2019]
- Back to Basics: Almost Always Vector - Kevin Carpenter - CppCon 2024
- Correct by Construction: APIs That Are Easy to Use and Hard to Misuse - Matt Godbolt [C++ on Sea]
Literature
Psychology
- DeMarco, T. & Lister, T. (2013). Peopleware. Addison-Wesley. ISBN 978-0-321-93411-6
- König, O. & Schattenhofer, K. (2012). Einführung in die Gruppendynamik. Carl-Auer. ISBN 978-3-89670-609-6
- Fitzpatrick, B. & Collins-Sussman, B. (2019) Debugging Teams. O’Reilly. ISBN 978-1-491-93205-6
- Kahneman, D. (2012). Thinking, Fast and Slow. Macmillan USA. ISBN 978-0-374-27563-1
- Simon, B. (2007). Einführung in die systemische Organisationstheorie. Carl-Auer. ISBN 978-3-89670-602-7
- Rogers, E. (2003). Diffusion of Innovations. Free Press. ISBN 978-0-7432-2209-9
- Manns, M. & Rising, L. (2005). Fearless Change. Addison-Wesley. ISBN 978-0-13-439525-8
Technical
- Folwer, M. (1999). Refactoring. Addison-Wesley. ISBN 978-0-201-48567-7
- Feathers, C. (2005). Working Effectively With Legacy Code. Prentice Hall. ISBN 978-0-13-117705-2
- Beck, K. (2023). Tidy First?. O’Reilly. ISBN 978-1-098-15124-9
- Manucso, S. (2015). The Software Craftsman. Prentice Hall. ISBN 978-0-13-405250-2