CppCast

Technology

About

The first podcast for C++ developers, by C++ developers!

Episodes

  • GPU Programming and HLSL with Chris Bieneman

    Jason and Mathieu are joined by Chris Bieneman to discuss GPU programming and the evolution of HLSL, the challenges of floating-point determinism on GPUs, and lessons from over a decade of shading language and compiler work. News Sure, xor…

  • Compiler Warnings as Errors with Keith Stockdale

    Jason and Mathieu are joined by Keith Stockdale to discuss C++26 news, his experience upgrading Sea of Thieves from C++14 to C++20 across compilers, and the practical challenges of raising compiler warning levels and enabling warnings as e…

  • Building a Compiler Inside the C++ Compiler with Daniel Nikpayuk

    Daniel Nikpayuk joins Jason to talk about ccTMP, his C++17 template metaprogramming library that builds a functional type system at compile time by encoding bytecode as template parameters in continuation-passing style — letting the C++ co…

  • Job Hunting and Optimizing Compilers with Jamie Pendergast

    Jason is joined this week by Jamie Pendergast to discuss the current job market, learning to program, and optimizing compilers. Designated Initializers, the best feature of C++20 · Mathieu Ropert Support for C++26 Reflection has been merge…

  • Reflecting on Timur and Phil

    Timur and Phil reflect on Phil and Timur. We share some personal updates as well as news from the community. News "Why we didn't rewrite our feed handler in Rust" - post from DataBento "C++ reflection (P2996) and moc" - from Qt wiki "Poll:…

  • Reflection and C++26, with Herb Sutter

    Phil and Timur are joined by Herb Sutter to catch up on what's going in to C++26 which, let's be honest, is dominated by reflection. News CLion now has a constexpr debugger "CMake for complex projects" - tutorial: Part one Part two Safe C+…

  • BrontoSource and Swiss Tables

    Matt Kulukundis joins Timur and Phil. Matt talks to us about BrontoSource, his start-up focused on refactoring, updating or migrating large codebases, as well as his work on Swiss Tables. News Herb Sutter's WG21, Bulgaria, trip report End…

  • Friends-and-Family Special

    Phil and Timur are joined by Jason Turner, Matt Godbolt, Anastasia Kazakova and Guy Davidson to celebrate 400 episodes of CppCast and catch up with the co-hosts that have helped us keep up for the last 50 of them! News Boost.Bloom has been…

  • From Refactoring to (physical) Relocation

    Kristen Shaker joins Timur and Phil. Kristen talks to us about her C++ on Sea keynote about the C++ interview process, her previous work at Google, and why she has made a slightly unusual career change. News libc++ removed the base templat…

  • libstdc++

    Jonathan Wakely joins Phil and Timur. Jonathan talks to us about libstdc++ (GCC's standard library implementation), of which he is the lead maintainer, and tackles some tough questions like ABI compatibility - and how GCC and libstdc++ app…

  • Software development in a world of AI

    Daisy Hollman joins Phil and Anastasia. Daisy talks to us about the current state of the art in using LLM-based AI agents to help with software development, as well as where that is going in the future, and what impacts it is having (good…

  • Standard Library Hardening

    Louis Dionne joins Phil and Timur. Louis talks to us about his role as code owner of libc++ (clang's standard library implementation) and the standard library hardening proposal that was just accepted into C++26, why this is important, and…

  • News and Catch-up

    Timur and Phil return after an extended break with news and updates News Bjarne Stroustrup on How He Sees C++ Evolving Conferences round-up: ACCU Conference 2025 C++ Now 2025 C++ on Sea 2025 C++ North 2025 CppCon New Meetups: Singapore C++…

  • Tease Your C++ Brain

    Anders Knatten joins Phil and Timur. Anders reminds us about cppquiz.org and tells to us about his new book, C++ Brain Teasers, how that relates to the site and why it's has good practical applicability. News New report by the US Cybersecu…

  • Realtime Sanitizer and the Performance Constraints attributes

    Christoper Apple joins Timur and Phil. Chris talks to us about his work on the new Realtime Sanitizer in the Clang20 release, as well as the associated Performance Constraints attributes, how they differ, and how they work together. News T…

  • Type Erasure, SIMD-Within-a-Register and more

    Eduardo Madrid joins Phil and Timur. Eduardo talks to us about the Zoo libraries, including his advanced type-erasure library, as well as the SWAR library which simulates ad-hoc SIMD within a register. We also discuss how he has taken insp…

  • Parsing and Analysing C++

    Yuri Minaev joins Timur and Phil. Yuri talks to us about static analysis and how PVS Studio helps. Then we chat about his work on a custom C++ parser, and what challenges he's encountered. News CppCon 2024 keynotes on YouTube (via CppCon s…

  • CppCon 2024 Live Special

    Phil and Timur are joined by a live audience at CppCon as we chat about Safety in C++, AI and the running of CppCast itself. News Clang 19.1 released Sean Baxter's "Safe C++" P3390R0: "Safe C++" - Sean's work written up as a proposal partn…

  • Benchmarking Language Keywords

    Benjamin Summerton joins Timur and Phil. Ben talks to us about what led him to benchmark the impact of the final and noexcept keywords, how to interpret his results, and the project that inspired him to do so in the first place. News Boost…

  • Reducing Binary Sizes

    Sándor Dargó joins Phil and Anastasia Kazakova. Sándor talks to us about why and how to reduce the final binary sizes your code produces, as well as the importance of clean code. News "cppfront: Midsummer update" Reddit Thread cpp2 episode…

  • Swift for C++ Developers

    Doug Gregor joins Phil and Kevin Carpenter. Doug talks to us about his work on Swift at Apple, what the language is like and how it can interoperate with C++. News "Memory Safety in C++ vs Rust vs Zig" - B Shyam Sundar C++ under the Sea wo…

  • QuantLib

    Luigi Ballabio joins Phil and Matt Godbolt. Luigi talks to us about QuantLib, an open-source library for financial models that he co-founded and now maintains. News WG21 St. Luis trip reports: "Official" report, collated by Inbal Levy Herb…

  • libunifex and std::execution

    Jessica Wong and Ian Petersen join Timur and Phil. Ian and Jessica talk to us about libunifex and other async code projects at Meta, how it has evolved in the proposed std::execution and what structured concurrency is. News XCode 16 beta T…

  • Boost, The Beman Project and Beyond

    Zach Laine joins Phil and Timur. Zach talks to us about the Boost collection of libraries, his contributions to it, a little of its history and where it's going, and a new project that aims to get back to Boost's original roots. News Timin…

  • Safe, Borrow-Checked, C++

    Sean Baxter joins Timur and Phil. Sean explains how he has managed to implement a borrow checker for C++ in his Circle compiler. In fact his implementation addresses all the same safety issues that Rust addresses. News "Noisy: The Class Yo…

  • Rust <=> C++

    Mara Bos joins Phil and Timur. Mara talks to us about her work on the Rust evolution team and how she uses embedded Rust for drone flight controllers. We chat about some of the differences and similarities between C++ and Rust, and what th…

  • JSON for Modern C++

    Niels Lohmann joins Timur and Phil. Niels talks to us about his popular JSON library, JSON for Modern C++ (often just known as nlohmann/json, after its github repo). We chat about the history and purpose of the library, with an interesting…

  • Pure Virtual C++

    Sy Brand joins Phil and Timur. Sy talks about the imminent Pure Virtual C++ conference that they have been running with Microsoft's backing for a few years. Sy also discuss what they have been up to as Developer Advocate at Microsoft, as w…

  • Heterogeneous Computing and C++ Language Evolution

    Erich Keane joins Timur and Phil. Erich chats about the recent WG21 meeting in Tokyo, his roles as chair and co-chair of the Language Evolution and Language Evolution Incubator working groups, respectively, as well as heterogeneous computi…

  • Psychology and Starting Out as a Developer

    Gail Ollis joins Phil and Matt Godbolt. Gail talks to us about why, after two decades of software development, she took a degree in psychology followed by a PhD that researched the psychology of software development - and how she now uses…

  • Compiler Explorer Revisited

    Patrick Quist joins Phil and Timur. Patrick chats with us about their work on the Compiler Explorer team and how they got into it. We explore some useful features that may not be as widely known, and take a peek under the hood at how it al…

  • Teaching and Training Modern C++

    Rainer Grimm joins Timur and Phil. Rainer talks to us about what he has learnt from many years of teaching C++ as a professional trainer, how training has become more accessible now more people are taking it online, and his thoughts on mod…

  • Reflection for C++26

    Daveed Vandevoorde joins Phil and Timur. Daveed talks a bit about his work at EDG, but mostly his efforts to get Reflection into C++26, along with his co-authors, and how that fits into the big picture. News Meeting C++ 2023 videos (includ…

  • Modern C++ with Qt

    Ville Voutilainen joins Timur and guest co-host, Guy Davidson. Ville talks about his work at The Qt Company and on the C++ standard committee, and about how modern C++ features such as Modules and Sender/Receiver can integrate with the Qt…

  • 2023 Holiday Special

    Phil and Timur are joined by ... Timur and Phil for a Holiday Special. We look back on the last year, discuss the news, and talk about what we're working on. News "The Case for Memory Safe Roadmaps" - CISA Experimental EDG Reflection Suppo…

  • SIMD

    Matthias Kretz joins Phil and Timur. Matthias talks about SIMD, including what it is, how it works, and what its useful for. We also discuss his proposal to introduce SIMD vocabulary types and functionality into the C++ standard and how it…

  • Catch2 v3 and Random Numbers

    Martin Hořeňovský joins Timur and Phil. Martin returns to talk about v3 of Catch2 and how it is different to v2. We also revisit the topic of random numbers and how Martin is still working on portable distributions and why that is importan…

  • Physical Units and a System of Quantities

    Mateusz Pusz joins Phil and new guest co-host, Anastasia Kazakova. Mateusz talks to us about his physical units (and quantities) library, mp-units, why v2 is a complete redesign compared to the previous version, and how incorporating a sys…

  • AI and Random Numbers

    Frances Buontempo joins Phil and returning guest co-host, Matt Godbolt. Frances talks to us about her new book on modern C++ as well as her the topic of her previous book on machine learning. We discuss the differences between LLM-based AI…

  • Automatic Static Analysis

    Abbas Sabra joins Phil and Timur. Abbas talks to us about static analysis, the challenges - and benefits - of analysing C++ code, and a new feature from Sonar that can scan public repos with zero config. News Boost 1.83.0 released fmt 10.1…

  • Soagen

    Mark Gillard joins Timur and guest co-host Jason Turner. Mark talks to us about reflection, SIMD, and his library soagen, a structure-of-arrays generator for C++. News What is Low Latency C++? C++Now 2023, part 1 What is Low Latency C++? C…

  • How CLion works under the hood

    Dmitry Kozhevnikov joins Timur and guest co-host Matt Godbolt. Dmitry talks to us about how the CLion IDE works under the hood. News mold 2.0.0 released CLion 2023.2 released Should we stop writing functions? Links C++ Lambda Idioms: techn…

  • Safety, Security and Modern C++, with Bjarne Stroustrup

    Bjarne Stroustrup joins Phil and Timur. Bjarne talks to us about safety in C++ through profiles, as well as modules and concepts - and looks ahead to what else is coming next. News C++ Now 2023 videos ACCU 2023 videos JetBrains Developer E…

  • Sequence-Oriented Programming

    Tristan Brindle joins Timur and Phil. Tristan talks to us about a safer alternative to iterators and his library, Flux, that implements it. News 60 terrible tips for a C++ developer Big, combined, committee trip report from Varna CLion 202…

  • Contracts

    Joshua Berne joins Phil and Timur. Joshua talks to us about the previous week's ISO C++ meeting in Varna, Bulgaria, then focuses on the current state of the contracts proposal that he has been central to, as well as a bit of its history. N…

  • Modules and build systems

    Daniel Ruoso joins Phil and Timur. After covering a couple of blog posts and a new UI library, we welcome Daniel back to talk with us about modules, package and build systems and SG15, the tooling study group. We also revisit the Ecosystem…

  • C++ in Finance

    Antony Peacock joins Timur and Phil. After rounding up the news, we chat with Antony about what it's like to work in finance as a C++ developer, the similarities and differences to games dev and how you can break in to a role in finance. W…

  • Conan 2.0

    Luis Campos joins Phil and Timur. After some compiler and language news, we chat with Luis about the recent Conan 2.0 release, the state of package management in C++, today and what's happening in the world of C++ standards that may impact…

  • AI Infrastructure

    Ashot Vardanian joins Timur and Phil. After some conference updates, news about the ISO C++ Developer Survey, Sonar integration in Compiler Explorer and some posts on modules and performance, we chat with Ashot Vardanian about AI and the i…

  • Native Languages (programming and natural)

    Mathew Benson joins Phil and Timur. After some news on new dev tool releases and some welcome improvements to iostreams in GCC13, we talk to Mathew Benson about what it's like to learn and use C++ in Africa and the implications for the har…