Pragmatic Simplicity - Actionable Guidelines To Tame Cpp Complexity
summary
Interactive session shows concrete rules: derive use the most limited tool for the job from casting, emplace_back vs push_back, scope_lock pitfalls, ranges vs C loops, noexcept on move ctors affecting std::vector, and nodiscard to catch misuse; guidelines come from code snippets, live audience votes, and real migrations (SFML → C++17) and become pragmatic heuristics with measured tradeoffs and counterexamples; conclusion frames complexity control as value = f(rarity): use powerful features only where they buy observable benefit.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 3:10Simplicity via code comparisons
- 8:48Casting complexities
- 11:46Tools and trade-offs
- 16:44In-place back vs push_back
- 21:00Use limited tools
- 28:27Value feature rarity
- 35:36When to use noexcept
- 41:07Final keyword implications
- 47:50constexpr and override
- 51:24Consistency vs correctness
- 55:37Applying guidelines
- 1:00:30Tooling for simplicity
- 1:01:54Q&A
related talks
51mSimplicity: Not Just for Beginners
56mC++ Code Smells
01h 02mHow to Hide C++ Implementation Details
01h 00mBack to Basics: Rvalues and Move Semantics in C++
53mBack to Basics: Lifetime Management in Cpp
58m10 Techniques to Understand Existing Code
01h 05mBetter Code: Contracts in C++
05mDrinking from the Fire Hose: Keeping up with the evolving landscape of C++
