CppCast-logo

CppCast

Technology Podcasts

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

Location:

United States

Description:

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

Twitter:

@cppcast

Language:

English


Episodes
Ask host to enable sharing for playback control

JSON for Modern C++

5/3/2024
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 aside into starting and maintaining a popular OSS library, as well as what Niels is up to today. Show Notes News "The Performance Impact of C++'s Keyword" - Benjamin SummertonReddit discussionKris Jusiak: Meta-meta programming! (Reddit) Links "Tips on Surveying the C++ Community" - Anastasia Kazakova's talkJSON for Modern C++

Duration:01:07:59

Ask host to enable sharing for playback control

Pure Virtual C++

4/23/2024
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 well as some fascinating outside interests. Show Notes News C++ Foundation's C++ 2024 Developer survey results P3236R0: "Please reject P2786 and adopt P1144"P2786R5: "Trivial Relocatability For C++26" P1144R10: "std::is_trivially_relocatable" P1029R3: "move = bitcopies" (earlier alt paper)"C++20 modules and Boost: an analysis""Boston C++ April 2024 online meetup" Links Sy's short films Pure Virtual C++ 2024 conference'BF' written in DWARF debug info

Duration:01:00:29

Ask host to enable sharing for playback control

Heterogeneous Computing and C++ Language Evolution

4/5/2024
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 computing and his work at NVidia. Show Notes News CppCon - Call for SpeakersACCU 2024 Online Bjarne Stroustrup responds to White House warning against C++David Sankel's post on Boost split Links In-depth status report Herb Sutter's report Think-Cell's trip report (Jonathan Müller)P2900R6 - "Contracts for C++" P2996R2 - "Reflection for C++26" P2688R1 - "Pattern Matching: match Expression" P2830R1 - "Standardized Type Ordering"

Duration:01:00:52

Ask host to enable sharing for playback control

Psychology and Starting Out as a Developer

3/12/2024
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 this to help others get started and, hopefully, avoid many of the human issues that can plague our software projects. Show Notes News "Contracts MVP is Feature Complete" - Reddit"Contracts for C++" Timur's C++ London talkHacker News threadTwitch streamer's reaction (ThePrimeTime) “White House urges developers to dump C and C++” - InfoWorld C++ on Sea Early Bird tickets and option, CfP closes soon (3rd-5th July)using std::cpp, Madrid (24th-26th April)C++ Now (29th April - 3rd May) ACCU full schedule and volunteers programme (17th-20th April) Links "Early Careers Day: A mini-conference for junior developers" - Gail's ACCU 2024 workshop"The kids are alright" - Gail's ACCU 2024 session showcasing her studentsPutting the Sec in DevSecOps: Using Social Practice Theory to Improve Secure Software DevelopmentDancing, not Wrestling: Moving from Compliance to Concordance for Secure Software Development"Helping developers to help each other: a technique to facilitate understanding among professional software developers" - Gail's PhD thesis

Duration:01:07:42

Ask host to enable sharing for playback control

Compiler Explorer Revisited

2/23/2024
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 all runs. News "C++ Package Managers: The Ultimate Roundup" - blog post by Christopher McArthur"Demystifying Lakos Rule via Visualization and How It Could Relate to Constexpr" blog post by Miro Palmu "A Year of C++ Improvements in Visual Studio, VS Code, and vcpkg" - blog post by Sy Brand NVidia interview question - Reddit thread Links History of DelphiCompiler ExplorerAlso Compiler ExplorerCompiler Explorer live stats

Duration:01:00:33

Ask host to enable sharing for playback control

Teaching and Training Modern C++

2/9/2024
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 modern C++. Show Notes News The C++ Iceberg"C++20 Concepts applied - Safe bitmasks using scoped enums" - blog post by Andreas Fertig ACCU conference: Early-bird tickets and workshops Links Reddit thread on Episode 375 with Daveed VandervoordeRainer's website and blogRainer at Meeting C++ online, Feb 21stRainer's "Concurreny in Modern C++" workshop at C++ Online, March 14th

Duration:00:52:48

Ask host to enable sharing for playback control

Reflection for C++26

1/26/2024
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. Show Notes News Meeting C++ 2023 videos (including all keynotes)"A 2024 Discussion Whether To Convert The Linux Kernel From C To Modern C++" Blog post Reddit discussionC++ Online Workshops Links P2996R1 - "Reflection for C++26" P1240R2 - "Scalable Reflection in C++""C++ Templates - The Complete Guide" - book (Vandevoorde, Josuttis)

Duration:01:12:33

Ask host to enable sharing for playback control

Modern C++ with Qt

1/11/2024
Ville Voutilainen joins Timur and guest co-host, Guy Davidson. Ville talks about Qt, his work a The Qt Company and his work on the C++ standards committee - including how all those things come together. Show Notes News Matt Godbolt on ComputerphilePVS-Studio C++ quizBoston C++ meetupC++ Now Links P2300R7 - std::execution (a.k.a. Senders/ Receivers)

Duration:01:08:05

Ask host to enable sharing for playback control

2023 Holiday Special

12/29/2023
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. Show Notes News "The Case for Memory Safe Roadmaps" - CISA Experimental EDG Reflection SupportBoost 1.84.0 releasedCling 1.0 released"About time - how to unit test code that depends on time" - Björn FahllerCall for Speakers"Earlist Bird" ticketsACCU Early bird ticketsC++ Online tickets Links Phil and Timur speaking at the December meetup in Munich "Digital Security by Design, CHERI and the Morello Board" - C++ London P2900R3 - "Contracts for C++"

Duration:00:59:53

Ask host to enable sharing for playback control

SIMD

12/15/2023
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 relates to what was in the Parallelism TS. Show Notes News MISRA C++ 2023 publishedSonar webinar on MISRA C++ 2023 with Andreas Weisnlohmann/json 3.11.3 releasedreflect-cpp - Reflection library for C++20 Links P1928R7 - "std::simd — merge data-parallel types from the Parallelism TS 2"Matthias' CppCon 2023 talk on std::simd

Duration:01:09:48

Ask host to enable sharing for playback control

Catch2 v3 and Random Numbers

12/1/2023
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 important to testing and other domains. Show Notes News P2662R3 - "Pack Indexing"P1673R13 - "A free function linear algebra interface based on the BLAS" P2546R5 - "Debugging Support" P2996R0 - "Reflection for C++26" "Why I think C++ is still a desirable coding platform compared to Rust" - Henrique BucherCLion Nova Links Martin's NDC TechTown 2021 talk on Catch2 v3

Duration:01:09:10

Ask host to enable sharing for playback control

Physical Units and a System of Quantities

10/20/2023
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 system of quantities is so central to this new design. Show Notes News clang 17 released Conference videos released in October AMA with Abbas Sabra (automatic/ static analysis) Is it too hard for junior developers to get on the C++ career ladder (Reddit) Links mp-units on GitHubmp-units - DocumentationC++ on Sea 2023 videoThe Mars Climate Orbiter crashp1935 - "A C++ Approach to Physical Units"p2980 - "A motivation, scope, and plan for a physical quantities and units library"p2981 - "Improving our safety with a physical quantities and units library"p2982 - "std::quantity as a numeric type"p3003 - "The design of a library of number concepts"

Duration:00:57:39

Ask host to enable sharing for playback control

AI and Random Numbers

9/15/2023
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 and more statistical approaches, as well as where random numbers fit into all this and the limitations of their current support in C++. Show Notes News CppCon programme announced C++ on Sea videos"Inside STL" - The Old New Things Open source C++ projects that use modern C++ features (Reddit) Links "C++ Bookcamp" (title may change) - Frances' new book "Genetic Algorithms and Machine Learning for Programmers" - Frances' previous bookOverload issuessubmit articles on the main ACCU siteFrances' paper bag escapology certificate Shannon's mind reading paperERNIE (Electronic Random Number Indicator Equipment) P2059R0 - "Make Pseudo-random Numbers Portable" (defunct)"Using, Generating and Testing with Pseudo-Random Numbers" - Frances' ACCU 2023 talk "How to program your way out of a paper bag" (slides)"How to Evolve Your Way Out of a Paper Bag" (video)"Diffuse your way out of a paper bag" (video)"How to Evolve Your Way Out of a Paper Bag" (video)"Crowd Your Way Out of a Paper Bag" (video)

Duration:00:59:12

Ask host to enable sharing for playback control

Automatic Static Analysis

9/1/2023
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. Show Notes News Boost 1.83.0 releasedfmt 10.1 released The downsides of C++ Coroutines Links "All the defaults are backwards" - Phil's Lightning Talk "No, C++ static analysis does not have to be painful" - Sonar blogvideo showing Sonar's Automatic Analysis in action

Duration:00:53:08

Ask host to enable sharing for playback control

Soagen

8/16/2023
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++. Show Notes News What is Low Latency C++? C++Now 2023, part 1What is Low Latency C++? C++Now 2023, part 2Inside STL: The vectorInside STL: The stringExperimenting with Modules in Fluxpycmakecpptrace Links Soagen on GitHubSoagen documentationMike Acton: Data-Oriented Design and C++ at CppCon 2014Bryce Adelstein Lelbach on SoA and reflection at ACCU 2023Data-Oriented Design and Modern C++ at CppNow 2023Godbolt's lawtoml++ on GitHubPVS-Studio: 60 terrible tips for a C++ developer

Duration:00:52:29

Ask host to enable sharing for playback control

How CLion works under the hood

8/4/2023
Dmitry Kozhevnikov joins Timur and guest co-host Matt Godbolt. Dmitry talks to us about how the CLion IDE works under the hood. Show Notes News mold 2.0.0 releasedCLion 2023.2 released Should we stop writing functions? Links C++ Lambda Idioms: technique to separate user-specified and deduced template parametersThe Kotlin FoundationJetBrains Runtime CLion data flow analysis enginePVS Studio: 60 terrible tips for a C++ developer

Duration:00:58:32

Ask host to enable sharing for playback control

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

7/21/2023
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. Show Notes News C++ Now 2023 videos ACCU 2023 videos JetBrains Developer Ecosystem Survey 2023 Upcoming Boost 1.83 release Links P2739R0 - 'A call to action: Think seriously about “safety"; then do something sensible about it' P2687R0 - 'Design Alternatives for Type-and-Resource Safe C++''Contemporary C++ in Action' (video) - Daniela Engert

Duration:01:01:49

Ask host to enable sharing for playback control

Sequence-Oriented Programming

7/7/2023
Tristan Brindle joins Timur and Phil. Tristan talks to us about a safer alternative to iterators and his library, Flux, that implements it. Show Notes News 60 terrible tips for a C++ developer Big, combined, committee trip report from Varna CLion 2023.2 EAP4: AI Assistant"Making C++ Memory-Safe Without Borrow Checking, Reference Counting, or Tracing Garbage Collection" Links Episode 78 of CppCast, mentioning ClingEpisode of ADSP recorded at C++ on SeaEpisode 152 of CppCast, with Tristan and the C++ London Uni teamFlux on GitHub

Duration:01:01:53

Ask host to enable sharing for playback control

Contracts

6/23/2023
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. Show Notes News Herb Sutter's trip report Jonathan Müller's trip report GCC 14 NRVO enhancements (Reddit)P2025 proposes guaranteed NRVOHow to get NRVO before C++26XCode 15 beta Links P2831 - "Functions having a narrow contract should not be noexcept"P2521 - The current contracts MVPP2695 - "A proposed plan for Contracts in C++"P2811 - "Contract-Violation Handlers"P2834 - "Semantic Stability Across Contract-Checking Build Modes"P2877R0 - "Contract Build Modes, Semantics, and Implementation Strategies"P2751 - "Evaluation of Checked Contract-Checking Annotations"P2552 - "On the ignorability of standard attributes"p2786 - "Trivial relocatability options"P2839 - "Nontrivial Relocation via a New owning reference Type"P0843R8 - "inplace_vector"

Duration:01:11:05

Ask host to enable sharing for playback control

Modules and build systems

6/9/2023
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 International Standard. Show Notes News Modern C++ In-Depth — Is string_view Worth It?How to check if a pointer is in a range of memory - Raymond ChenNui - new C++ Webview UI library Nui on RedditTimur's Undefined Behaviour survey Links P2898R0 - "Importable Headers are Not Universally Implementable""Clang Automated Refactoring for everyone with clangmetatool" - Daniel's C++ Now 2019 talk P1689R5 - "Format for describing dependencies of source files" (Kitware)

Duration:01:07:15