C++11/14 at Scale: What Have We Learned?
summary
Eight years of shipping Modern C++ at scale yields concrete rules not slogans: a company-wide course trains hundreds, a book (Embracing Modern C++ Safely) codifies a safety tiers: safe conditionally unsafe unsafe metric, surveys show ~87% C++11 and ~76% C++14 adoption, and real bugs appear when a getter changes from returning by value to reference causing a range-based for lifetime bug across compilers. Recommended defenses include clang-tidy and AddressSanitizer, Compiler Explorer/cppinsights, and preferring small, well-understood features (override) while teaching risky ones separately.
AI-written summary · about
chapters (30)
- 0:00Introduction
- 0:29Backstory
- 0:47New Hire Training
- 3:15Rediscovery
- 4:32Release Date
- 4:44Agenda
- 6:07Survey Data
- 7:20Sample Size
- 10:57Time Experience Matter
- 14:34Surprises
- 14:55QOTD
- 15:42Double closing angle brackets
- 16:39Valid class plus programs
- 16:59Example paddedbuffer
- 17:55Example valid both 3 11
- 20:18Attributes
- 23:14Singletons
- 23:33Diversity
- 30:13Style Guides
- 31:55Safety
- 34:09Safety Levels
- 35:30Override
- 37:42Rangebased for loops
- 39:52Optimization
- 42:07Rangebased for loop
- 47:24Decaltype auto
- 50:50Decal type auto
- 54:46Teaching Safe Features
- 55:53Case Study
- 56:16The Basics
related talks
29mOrganizational Leadership with Modern C++
53mInvestigating C++ Legacy Design Trends: Newer Isn’t Always Better!
01h 54mCan C++ be 10x Simpler & Safer?
56mThe art of keeping your project from falling apart
01h 09mA CTO's guide to Modern C++
39mFireside Chat
01h 03mDeveloping C++ @ Facebook Scale
01h 30mContracts, Safety, and the Art of Cat Herding
