~/talks

Nicolai M. Josuttis

what they talk about

all 9 in the filters

where they keep going back

all 8 in the filters

on a stage with

who talks about the same things

titleconferencedate
Taming C++23 - The Things About C++23 You Do Not KnowACCU on Sea 20262026-06-17
C++23 details: MDspan in GCC16 brings multidimensional spans with variadic subscript and stride/column/left layouts; std::print and std::generator land…
Talk on
C++23: using std::generator in practiceMeeting C++ 20252025-11-06
Explains that C++23 adds std::generator as the first standard coroutine interface, shows live code (generator-as-a-view, begin/++/ semantics), and builds…
Talk on
Rethink Polymorphism in C++C++ on Sea 20252025-06-23
Argues that runtime inheritance plus heap pointers is error-prone and slow, and demonstrates alternatives using std::variant, variadic templates and move…
Talk on
How Old Am I in Seconds? Insights From the C++ chrono LibraryACCU 20252025-04-01
C++ chrono pairs C++11 durations/time_points with C++20 calendars, formatting and time zones to handle real cases: compile‑time unit selection to avoid…
Talk on
What Is "Hello" in C++?ACCU 20252025-04-01
Shows that the literal "hello" has type const char[6] and a surprising value category: it behaves as an lvalue even though it often decays to const char* with…
Talk on
C++ ConceptsMeeting C++ 20242024-11-14
C++20 Concepts let generic code state actual constraints so overload resolution and diagnostics improve: use requires clause and named concepts to pick…
Talk on
Back to Basics: Concepts in C++CppCon 20242024-09-15
Explains how C++20 concepts name concrete requirements and use requires clauses to fix real problems — e.g. two add overloads resolved by a has_push_back…
Talk on
Taming the Filter View in C++ ProgrammingCppCon 20242024-09-15
Filter view behaves oddly in practice: begin can be linear and reverse can make iteration quadratic, transform-before-filter can re-evaluate values, caching…
Talk on
C++ Workshop and Talk Preview With Nicolai Josuttis for C++OnSea 2024C++ on Sea 20242024-07-02
Two-day workshop: systematic walkthrough of C++20 concepts (how they constrain generics and dramatically improve error messages), ranges, views and their…
Talk on
Understanding the Filter View to Use It RightACCU 20242024-04-17
C++20 filter_view caches the first matching iterator so initial begin can be amortized constant but later calls become cheap, which creates hidden state…
Talk on
Using the filter view in practiceMeeting C++ 20232023-11-12
The C++20 filter view works by wrapping a range and evaluating the predicate on iteration so the very first call to begin can be linear and implementations…
Talk on
Back to Basics: Iterators in C++CppCon 20232023-10-02
Covers concrete iterator design decisions: iterator categories (input, forward, bidirectional, random‑access, continuous), why algorithms like sort require…
Talk on
C++ Standard ViewsACCU 20232023-04-19
C++20/23 ranges views come with concrete pitfalls: some views cache begin which makes repeat iteration cheap but causes surprising const and lifetime errors…
Talk on
C++ And Beyond: DiscussionACCU 20232023-04-19
Greatest obstacle is C++'s accumulated backward compatibility: concrete proposals use modules and epoch/dialect techniques to let new syntax map to the same…
Talk on
Belle Views on C++ Ranges, their Details and the DevilMeeting C++ 20222022-11-17
Claims that C++20 ranges shipped with dangerous specifics: const propagation often fails for views, cached begin computation makes behavior depend on timing…
Talk on
Universal/Forwarding ReferencesMeeting C++ 20222022-11-17
Concrete rules and gotchas about T&&, auto&& and std::forward determine whether code moves, copies or fails to compile: template-parameter rvalue references…
Talk on
Back to Basics: Templates in C++CppCon 20222022-09-11
Covers concrete, up-to-date rules and examples: function and class templates, return-type deduction for mixed-type my_max, class template argument deduction…
Talk on
C++20 - My Favourite Code ExamplesNDC TechTown 20222022-08-29
C++20 examples show concrete code: generic add() overloads resolved with concepts + constraints instead of SFINAE, ranges and views used to pipe, take, drop…
Talk on
Universal/Forwarding References - A Key to More Modern C++C++ on Sea 20222022-07-05
Universal (template T&&) references enable one-template-parameter perfect forwarding via std::forward and reference-collapsing rules, and C++20 makes them…
Talk on
C++20 – My Favourite Code ExamplesACCU 20222022-04-06
Walks through concrete C++20 code: replaces template overloads with concepts solve overload ambiguity using requires expressions; uses ranges and views are…
Talk on
C++20 - My Favorite Code ExamplesMeeting C++ 20212021-11-10
Presents concrete C++20 code combining features and shows what actually works: spaceship operator for automatic comparisons, ranges views (drop, filter) and…
Talk on
Back to Basics: Move SemanticsCppCon 20212021-10-24
Shows concrete code and rules: a vector<string> example demonstrates that replacing copying with move constructors cuts heap allocations and is noticeably…
Talk on
Back to Basics: LambdasCppCon 20212021-10-24
Shows exactly what lambdas do and how they differ from functions: the compiler generates a closure type with an operator() and captures become members; lambdas…
Talk on
C++20 - My Favourite Code ExamplesC++ on Sea 20212021-06-30
Shows concrete C++20 recipes: using concepts with requires expressions to select overloads and use compile-time if to choose push_back vs insert; real examples…
Talk on
std::jthread - I Told You Concurrency Is TrickyACCU 2021 Online2021-03-10
C++ gains a practical thread type that auto-joins on destruction and adds cooperative cancellation: the team implements std::jthread with a paired…
Talk on
Let's MoveMeeting C++ 20202020-11-12
Implements a small email class, fills a vector with 100000 addresses and measures: initialization ~220 ms, sort ~4–5 s. Shows concrete optimizations: take…
Talk on
The Hidden Secrets of Move SemanticsCppCon 20202020-09-14
Shows concrete code and measurements: copying vs moving strings with addresses printed, examples proving const disables move, and a container implementation…
Talk on
Combining C++17 FeaturesMeeting C++ 20192019-11-14
Concrete examples show how if constexpr and the new if with initialization let templates pick different instantiations without SFINAE hacks, how class template…
Talk on
Combining C++17 FeaturesNDC TechTown 20192019-09-02
Shows concrete C++17 recipes: use compile-time if plus if-with-init and scope_lock to lock zero or many mutexes without deadlock; use class template argument…
Talk on
C++ Smart Pointers - Usage and SecretsNDC TechTown 20192019-09-02
Compares shared_ptr and unique_ptr with concrete tradeoffs: make_shared saves one allocation and is usually faster but can keep the combined control block…
Talk on
50 shades of C++Meeting C++ 20182018-11-15
Explains concrete fixes and surprising gotchas: prefer brace initialization by default and avoid parentheses or equals signs; use pass-by-value-and-move for…
Talk on
C++17 in Practice - The good and the uglyNDC TechTown 20182018-09-27
C++17 is practical on VC++, gcc and clang but contains surprising pitfalls and fixes: class template argument deduction removes many explicit template args but…
Talk on
The Nightmare of Move Semantics for Trivial C++ ClassesNDC TechTown 20182018-09-27
Examines a trivial class with multiple std::string members and measures how common constructor patterns produce surprising extra allocations and copies…
Talk on
C++17 - The Best FeaturesACCU 20182018-04-11
C++17 adds concrete tools and examples: inline variables let header-only globals share one counter so a header-only new tracker works without extra CPP files…
Talk on
C++ Templates RevisedACCU 20182018-04-11
Second edition updates cover 14 years and three major C++ versions and show concrete changes: use of auto return deduction and when it hides lifetime bugs…
Talk on
C++17, part 1: The Language FeaturesNDC Oslo 20172017-06-14
Concrete list of C++17 changes and practical effects: structural bindings for decomposing pairs/tuples/arrays, if/switch with initializers, mandatory RVO so…
Talk on
C++17 part 2: The Library FeaturesNDC Oslo 20172017-06-14
C++17 delivers concrete library additions: string_view semantics (non-owning, beware null terminators), new value wrappers optional, variant, any (variant…
Talk on
C++17: The Language FeaturesNDC London 20172017-01-16
C++17 collects concrete changes: structured bindings let functions, pairs and arrays unpack into named variables; if and switch gain an init-statement for…
Talk on
C++17: The Library FeaturesNDC London 20172017-01-16
C++17 adds concrete, usable library features: a non-owning string_view lifetime issues with a literal suffix sv and matching hash to std::string; value…
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.