CppNorth 2024
| title | author | length |
|---|---|---|
| The 1 Thing | Tony Van Eerd | 01h 25m |
Works at a projector company and describes concrete wins (fixed overlapping blacks on projectors, shipping models with ~2,000–3,000:1 contrast), then dives… | ||
| Compassion ++: Soft Skills for Hard Problems | April Wensel | 57m |
Argues that compassion ≈ empathy + the desire to help and presents concrete ways it changes engineering outcomes: using the prime directive to remove blame… | ||
| Optimization Remarks - "Remarks Helping the Compiler Generate Better Code" | Ofek Shilon | 58m |
https://cppnorth.ca/
---
Optimization Remarks - "Remarks Helping the Compiler Generate Better Code"
Optimization remarks are logs of Clang's optimization… | ||
| Throwing Tools at Ranges | Tina Ulbrich | 56m |
Three implementations (C-style, C++17 algorithms, C++23 ranges) run through Google Benchmark, Cachegrind and the Visual Studio profiler on Windows/WSL with GCC… | ||
| Composition Intuition II | Conor Hoekstra | 01h 33m |
Sequel masterclass demonstrates concrete function composition patterns across C++, Python, Haskell, APL, J, BQN, Jelly and Weva, showing exactly which… | ||
| Write Fast Code Like a Native | Saksham Sharma | 56m |
Walks through microbenchmarks using std::chrono, rdtsc/rdtscp and RDPMC, plus Godbolt and cycle counters, to build a latency intuition. Shows a naive matrix… | ||
| Simplify and Secure Equation Systems with Type-Driven Development | Arne Berger | 58m |
A C++ library uses template metaprogramming, constexpr and tuple algorithms to compute indices from domain types so array-index bugs become impossible at… | ||
| C++ Memory Model: from C++11 to C++23 | Alex Dathskovsky | 01h 28m |
Shows exactly what the standard actually gives and what breaks: compilers hoist, fold and vectorize code; CPUs do out‑of‑order execution and caching; a demo… | ||
| Keynote: Advent of Code, Behind the Scenes | Eric Wastl | 46m |
Creator recounts building Advent of Code from a 70-user prototype to 1.4 million users and 930k active solvers, surviving a midnight traffic spike by switching… | ||
| Meandering Through C++ Creating ranges::to | Rudyard Merriam | 46m |
Walks through a homemade ranges::to implementation that uses Concepts, if constexpr, and CRTP to pick between initialization/copy and in-place insertion… | ||
| To Int or To Uint | Alex Dathskovsky | 59m |
Shows concrete x86 assembly (tested on Clang 14 and rechecked on Clang 17) and proves small choices change speed: averaging two numbers uses LEA+logical SHR… | ||
| Hiding your Implementation Details is Not So Simple | Amir Kirsh | 01h 20m |
Argues why simple rules like “make members private” fail in real C++ code and gives concrete recipes: when public pair members break lazy or generic code… | ||
| Splatty! A Gaussian Splatting Viewer for Everyone! | Pier-Antoine Giguère | 59m |
A Gaussian-splat viewer that reads .ply point clouds and displays millions of 3D gaussians from phone video is implemented in C++ using modules, ranges… | ||
| A Study of Plugin Architectures for Supporting Extensible Software | Mike Shah | 59m |
Compares real SDKs — Autodesk Maya (C++), Unity (C#), Unreal (C++), Qt Modeler (C) — and shows a concrete plugin pattern: a plugin manager loads shared… | ||
| Keynote: The Aging Programmer | Kate Gregory | 01h 33m |
Survey-backed guide that lists concrete steps: 75% of respondents worry about eyes so try $20 readers first and see a optometrist for distance glasses, hearing… | ||
| Message Handling with Boolean Algebra | Ben Deane | 01h 00m |
A message-handling library that separates field layout from storage and operates on bit-level locators is implemented; matchers are empty function-object types… | ||
| How Designing Carbon C++ Interop Taught me About C++ Variadics & Bound Members | Chandler Carruth | 01h 01m |
Carbon builds a definition‑checked generic model for C++ interop and already shows tangible momentum with 1,750 PRs merged and 121 new contributors while… | ||
| Save Time, Space & a Little Sanity With std::function_ref | David Ledger | 36m |
std::function_ref is a non-owning type-erased reference for C++26 callables that stores a callable as a pair of pointers (two pointers), is trivially copyable… | ||
| Mitigating the Intellectual Anxiety in Learning C++ | Dennis Onyeka, Emmanuel Nyarko | 42m |
A candid account of learning C++ from Africa: claims that C++ is learnable despite social bias, with concrete tactics — pointers took a year to master… | ||
| ... + CTAD + NTTP = 🤩 | Miro Knejp | 47m |
Combines variadic templates, CTAD, and NTTP to build a compile-time declarative model description used to auto-generate JSON and to validate runtime tensor… | ||
| More Ranges Please | Roi Barkan | 01h 03m |
Argues that C++20/23 ranges need concrete, lazy algorithms: implements ideas for a merge view and variadic/multiway merges (O(s log p) with a heap) instead of… | ||
| Uplifting Your Career as a Youth in Tech | Sohaila Ali | 50m |
Starts coding at 14 with Python (a rock‑paper‑scissors script) and lands a string of wins and roles: second place at an RBC hackathon ($300 per team member)… | ||
| Why Modules?: It's not about build time | Steve Downey | 58m |
Named modules shift C++ from build optimization to fine-grained control visibility by using module interface and implementation units, partitions, and a… | ||
| Practical Tips for Safer C++ | Tristan Brindle | 01h 02m |
C++ currently allows undefined behavior (UB) that breaks reasoning and optimizations; signed integer overflow is UB while unsigned wraps, and compilers provide… | ||
| Beginner's Mind, Expert's Mind | Dawid Zalewski | 01h 08m |
Explains why reading and writing code rely on beacons, chunking and long‑term patterns rather than proselike linear reading, shows C++ examples and live… | ||
| C++ Insights: Peek behind the curtains of your C++ compiler | Andreas Fertig | 01h 04m |
C++ Insights is a clang AST-based, open‑source tool that performs source‑to‑source transforms so the compiler’s hidden work appears as valid C++ code. It makes… | ||
| Safe Static Initialisation & Clean Up in Libraries | Ashley Roll | 55m |
Explains how C++17+ initializes static storage: constant values go to data/rodata, zeroed ones to BSS, and anything else triggers runtime code pushed into the… | ||
| Think Parallel: Scans | Bryce Adelstein Lelbach | 01h 05m |
Shows how the inclusive scan becomes a parallel primitive using a decoupled lookback protocol and a scan tile state object that replaces O(input) temporaries… | ||
| Improving Your Team(work) | Callum Piper | 01h 00m |
Practical, example-rich guidance on how individual contributors change team dynamics: concrete tactics for proposing technical change (talk to build/test… | ||
| Testability and API Design | John Pavan, Aram Chunk, Lukas Zhao | 01h 00m |
Covers concrete recipes: use pointer to implementation to test multiple implementations (software and hardware CRC32 examples), prefer dependency injection to… | ||
| Building a C++/JS Browser for the Financial Markets | Paul Williams | 01h 19m |
A near‑real‑time browser version of the Bloomberg Terminal is built by embedding Chromium and V8 atop a C++ core that handles a data layer streaming up to 10… | ||
| Software Engineering Completeness | Peter Muldoon | 01h 10m |
Argues that “done” means code is deployed and active everywhere and user-accessible, not just checked in; uses Gherkin-style given/when/then acceptance… | ||
| The Shoulders We Stand On | Furkan Uzumcu, Quinn Hou | 53m |
A rapid lineage of concrete inventions and surprising outcomes: Babbage designs the Difference Engine (never completed) and the Analytical Engine (programmable… | ||
| C++ is a Metacompiler | Daniel Nikpayuk | 54m |
Claim: C++17 can act as a compile-time compiler by parsing DSLs embedded in string literals and emitting constexpr functions. Implementation uses pure C++17… | ||
| C++ Reflection: Back on Track | David Olsen | 01h 03m |
Proposal P2996 adds compile-time reflection to C++ with a single opaque type meta::info, a prefix ^ operator for reflection and [::] splices to turn… | ||
| nothing matches | ||