~/talks

John Lakos

what they talk about

all 12 in the filters

where they keep going back

  • CppCon9 editions2014–2022
  • ACCU9 editions2016–2025

all 6 in the filters

on a stage with

all 33 in the filters

who talks about the same things

titleconferencedate
What C++ Needs to be SafeC++ on Sea 20252025-06-23
Bloomberg shows a concrete roadmap: macrobased contracts in production since 2004 (open sourced 2012), funded clang prototypes and library work to land…
Talk on
What C++ Needs to be SafeACCU 20252025-04-01
Proposes making C++ safe by adding concrete tools: Contracts MVP in C++26 with runtime and symbolic assertions that catch ~65% of common errors (bounds…
Talk on
Narrow Contracts and `noexcept` are Inherently Incompatible in C++ACCU 20242024-04-17
Argues that the Lakos Rule forbids adding `noexcept` to any function with a narrow contract because `noexcept` changes program behavior and the type-system…
Talk on
Quantifying Dinosaur Pee - Expressing Probabilities as Floating-Point Values in C++CppCon 20222022-09-11
Reproduces the birthday problem, discovers a floating‑point trap where IEEE‑754 doubles pin the collision probability to 1 (breaks at n ≈ 184), and fixes it by…
Talk on
Quantifying Dinosaur PeeC++Now 20222022-05-01
Back-of-envelope estimates and compounding models peg roughly ≈3.11% of Earth’s water as untainted by dinosaur pee in one model, while an alternate bird-based…
Lightning on
Embracing the **noexcept** Operator and Specifier *Safely*ACCU 20222022-04-06
Explains that the noexcept operator is a compile time query used mainly to let generic code pick a faster path for moves and swaps, demonstrates a vector…
Talk on
Quantifying Dinosaur PeeACCU 20222022-04-06
Calculation uses simple calculus and an exponential decay model versus a discrete model, both giving nearly identical results for 165 million years and an…
Lightning on
Embracing `noexcept` Operators and Specifiers SafelyCppCon 20212021-10-24
Shows concrete behavior: the noexcept operator inspects entire expression (including temporaries and destructors), how that forces copies in a vector push_back…
Talk on
Lakos'20: The "Dam" Book is Done!ACCU 2021 Online2021-03-10
Announces Large-Scale C++ — Volume I and argues that investing in hierarchical, reusable libraries—Software Capital—lets teams get faster, better and cheaper…
Talk on
Lakos’20: The “Dam” Book is Done!CppCon 20202020-09-14
After twenty years of practice the book claims a concrete method for creating Large-Scale C++ Volume I that makes software reuse scalable: design physical…
Talk on
PREVIEW VIDEO - NovemberACCU Autumn 2019 Belfast2019-11-11
Two-day ACCU Autumn conference runs 2019-11-11 to 2019-11-12 at the Hilton in Belfast and deliberately abuts the WG21 C++ meeting in the UK so attendees can…
Talk on
C++ Modules and Large-Scale DevelopmentACCU Autumn 2019 Belfast2019-11-11
Explains why C++20 modules change architecture more than syntax, argues modules become better components and must be additive, hierarchical, incremental…
Talk on
Value Proposition: Allocator-Aware (AA) SoftwareCppCon 20192019-09-15
Argues that a company-wide allocator-aware software infrastructure (BDE, BT-verified tools, PMR polymorphic memory resource) delivers nearly first-class…
Talk on
C++ Modules and Large-Scale Development (Part 1)NDC TechTown 20192019-09-02
Argues that C++ modules change architecture more than speed, claiming modules must support incremental migration, interoperability with headers, and identical…
Talk on
C++ Modules and Large-Scale Development (Part 2)NDC TechTown 20192019-09-02
Argues that allocator-aware infrastructure yields major real-world wins: measured examples include a companywide ~20% speedup and large reductions in memory…
Talk on
Allocator-Aware (AA) SoftwareACCU 20192019-04-10
Allocator-aware infrastructure yields large, measurable wins: local allocators cut global locking and cache diffusion, producing up to 4–5x speedups in…
Talk on
C++ Modules and Large-Scale DevelopmentCppCon 20182018-09-23
Argues that C++ modules mainly reshape architecture not just compile times, listing concrete requirements: modules must be purely additive, hierarchical…
Talk on
C++ Modules and Large-Scale DevelopmentACCU 20182018-04-11
Claim: C++ modules change architecture more than raw compile times, by making components first-class and enforcing no cyclic physical dependencies and no…
Talk on
Boundary ConditionsMeeting C++ 20172017-11-09
Examines the birthday-problem implementation and shows tests catching a platform-imposed limit: the probability crosses 50% at 23 people but floating-point…
Lightning on
Local (Arena) Memory Allocators Part 1Meeting C++ 20172017-11-09
Claims that replacing a single global allocator with targeted local allocators can yield order-of-magnitude speed improvements, and measures that claim with…
Talk on
Local (Arena) Allocators Part IIMeeting C++ 20172017-11-09
Claim: replacing a single global allocator with per-subsystem local allocators often cuts runtime by factors of 3–20, sometimes an order-of-magnitude speed…
Talk on
“Local ('Arena') Memory Allocators (part 2 of 2)”CppCon 20172017-09-24
Four targeted benchmarks compare the platform global allocator, tcmalloc/jemalloc, and local strategies (monotonic, multipool, composite) using real containers…
Talk
Local ('Arena') Memory Allocators (part 1 of 2)CppCon 20172017-09-24
Local, subset-focused allocators outperform global new/delete and std::allocator in measured systems, with one reported case cutting a 10‑second reclamation to…
Talk
Local (arena) Memory AllocatorsACCU 20172017-04-24
Local arena allocators can cut runtime by up to order-of-magnitude in real benchmarks by keeping related objects contiguous and in-cache, especially in a…
Talk on
Advanced Levelization Techniques (part 1 of 3)CppCon 20162016-09-18
Covers concrete physical‑design rules: every component is an h/cpp pair with the header included first, all externally visible entities declared in the header…
Talk on
Advanced Levelization Techniques (part 2 of 3)CppCon 20162016-09-18
Shows concrete fixes for header cycles and coupling with code patterns and examples and reference implementations on GitHub. Covers demotion (pulling shared…
Talk on
Advanced Levelization Techniques (part 3 of 3)CppCon 20162016-09-18
Defines a compact package-naming rule: every component group uses a package group 3-letter prefix so names stay short and unique, and some graphs force at…
Talk on
Proper InheritanceACCU 20162016-04-20
Argues that contracts should state exactly which inputs are undefined and which behaviors are essential, shows practical rules (always include header as first…
Talk on
“Value Semantics: It ain't about the syntax!, Part I"CppCon 20152015-09-21
Defines what “value” really means for C++ types by naming the salient attributes that must match for two objects to be the same value, shows why copying bits…
Talk on
“Value Semantics: It ain't about the syntax!, Part II"CppCon 20152015-09-21
Argument: value semantics hinge on salient attributes and an Essential Property of Value: if two objects have the same value, performing the same mutating…
Talk on
Grill the CommitteeCppCon 20142014-09-07
Lots of concrete, behind‑the‑scenes detail about what actually makes it into the standard: discussions name features (move elision, polymorphic and scoped…
Talk on
Meet the AuthorsCppCon 20142014-09-07
Panelists claim a compact Tour of C++ is 180 pages that settles “what to read,” describe using clang-format to stop arguing about code layout, and explain…
Talk on
Defensive Programming Done Right, Part IICppCon 20142014-09-07
Library-level defensive checks are implemented as three assertion levels (optimized ≲5% cost, regular ≈5–20%, expensive >20%), selectable per build or via…
Talk on
Defensive Programming Done Right, Part ICppCon 20142014-09-07
Argues that libraries should let the owner of main choose a runtime budget for precondition checks and the policy (for example abort throw spin) for…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.