Growing Pains: Lessons from seeing C++ codebases mature
summary
Sees concrete lessons: keep third‑party code isolated and tracked (use conan package manager or submodules), run static analyzers and sanitizers immediately and never accumulate thousands of ignored warnings, enforce formatting and CI/CD with a formatter and pipeline, abstract platform and library APIs (example: a single load_image wrapper), avoid checked‑in prebuilt binaries, use AddressSanitizer and UBSan for bugs, and store text/time as utf8 + UTC so migrations and interoperability stay manageable.
AI-written summary · about
chapters (11)
- 0:00Growing pains in C++
- 3:10Why C++ matures over time
- 8:01Codebase layout in C++
- 12:14Documentation in growing teams
- 17:15Automation for scalable C++
- 25:03Managing C++ dependencies
- 30:39Abstractions in C++
- 41:40CI/CD and compiler settings
- 42:22C++ interoperability challenges
- 47:22Text encoding in C++
- 55:09Q&A
related talks
45mChanging attitudes toward legacy code
58mGetting a grip on your code dependencies
37mGrowing a Joyful Codebase from Legacy Code
05mLightning Talk: Effective APIs in Practice in C++
44mAvoiding the pitfalls of rebuilding software
27mDesigning Even Larger (JavaScript) Applications
41mUsing Boundary-Driven Development to beat code complexity
40mBuilding resilient frontend architecture
