Episodes
Published 02/11/22
This week we chat with Harald Achitz about a new ISO mirror in Sweden, the C++ community - in Sweden, and worldwide - and other topics (which may or may not include Cobol) We explore the underbelly of getting involved with standards work - not just the C++ one, as well as community building, language evolution and static analysis. Links: Svenska institutet för standarder (SIS)- Swedish Institute for StandardsStockholmCpp- Meetup pagegbgcpp - Gothenburg C++ Meetup- Meetup pageLinkCpp -...
Published 02/11/22
We're back! Again! And so is Dave Abrahams, after a long period outside the C++ community. So we thought we should hear about what he's been up to and what he's doing now. We end up getting some fascinating insights into the design and evolution of the Swift programming language, which Dave joined the team behind quite early on. While Swift draws inspiration from many languages, the core of the team behind it - including Dave - were C++ experts - but experts who wanted to take from the...
Published 12/27/21
This week, err... month, no, episode, we're joined by Anastasia Kazakova for a cross-over show with No Diagnostic Required - the other show that Phil co-hosts with Anastasia. We cover articles on static analysis, move semantics and expressive interfaces, three new std proposals, then chat about conferences, especially CppCon, which just finished for this year. Links: No Diagnostic RequiredC++ tools evolution: static code analyzers- from the PVS Studio blogEasy Way To Make Your Interface...
Published 11/09/21
This episode is slightly different to the normal. Rather than being a pure cpp.chat session, it's a recording of an interview, conducted by KDAB, of a panel of C++ experts, including our own Jon Kalb - but also past cpp.chat guests Ivan Čukić and Jens Weller, as well as Matthias Kalle Dalheimer. The interview is around the future of C++, but also takes a look at its past and present. Links: C++, How it Got Here, Where it's Going- Write up of some of the topics discussedThe video version of...
Published 06/18/21
In this episode we welcome back Tony and Klaus to talk about the SOLID Principles, and how they relate (or not), to C++. Tony is about to give a keynote at C++ Now about his take on the SOLID Principles. Klaus has been giving a talk on applying SOLID to C++ and even Phil has recently given a talk on a similar topic. Perhaps somebody should have mentioned this to Tony before! Along the way we get plenty of SOLID advice, discover what the single responsibility is that Tony's objects have,...
Published 04/20/21
This week we get back on track and chat with Christopher Di Bella from Google about working on the Chrome OS toolchain - including his newly finished concepts implementation. We talk a bit about the practicalities of bringing C++ 20 features to compilers, interoperating GCC and Clang and how to deal, portably, with std libraries that can’t be implemented without compiler support. Links: Concepts support in libc++- tweet, from Chris#include c++- a global, inclusive, and diverse community...
Published 04/15/21
This week we have a special panel made up of members of the C++ community, joined by members of the Rust community. We have a round table discussion of how the two languages relate, differ - and how entwined their fates may be. We also learn why Rust doesn't have random numbers, but why it's lucky to have Burnt Sushi. Links: The Rust Lang websiteFerrous Systems- Rust training and consultancyCppCast- The _other_ podcast, by C++ developers, for C++ developersGarden- A plant oriented game,...
Published 04/13/21
This week we chat with Isabella (Izzy) Muerte about modules, build systems and more. We talk about xyr new job (which, at the time of recording, was with Netlify), and how that still involves working on build systems - but particularly CMake, where xe has found an intriguing special use for emoji! We segue into a discussion about modules, which Izzy was definitely down on a couple of years ago, and what xe thinks of them now. To avoid spoilers don’t read the title! Links: Izzy's (2017)...
Published 01/12/21
This week we chat with Tony Van Eerd about what comes after Post Modern C++, what the single most important principle for good code is, and what Dr. Seuss and Shakespear have to do with all this. The off-by-one jokes are regular, or at least semi-regular, but what proposals has Tony killed? And how can opening your mind to unexpected ways of thinking lead you to better code? Special Guest: Tony Van Eerd. Links: C++17 in Tony TablesC++20 in Tony TablesTony's CppCon lightning talk, 'The Songs...
Published 11/12/20
This week we chat with a Conor Hoekstra, about dreaming in algorithms, being a programming language addict and writing beautiful code. We look at what Conor is jealous of in other languages, why his competitive coding entry came dead last, and why he really likes sugar and dopamine. And is it really true that no-one is listening to Sean Parent? Note that this episode was recorded over four months before editing, so the news items are a bit stale. Special Guest: Conor Hoekstra. Links: C++...
Published 10/08/20
This week we chat with a vector-of-bool (a.k.a. Colby Pike). We talk about pseudonyms, modules, build systems and his standard layout proposal, Pitchfork. At the last minute we branch into TDD and what makes good design. But what prompts Michael Caisse, in the chat, to respond, "because we are not monsters", and why does that cat say "test first"? Special Guest: Colby Pike. Links: The 'Dam Book' — John Lakos' long-awaited 'Large Scale C++ Volume 1'Upcoming C++ virtual meetups,...
Published 06/21/20
This week we chat with a Yuri Minaev, of PVS Studio, about static analysis - and why you shouldn't be skipping on this essential part of software development. Why is using a static analysis tool better than peer review (the clue is in the title)? Should you do both? What is the most common bug? And what does happen if you write to address zero? We also discuss the billion dollar mistake and the perils of copy & paste (and how you can mitigate them). All in all, a step towards...
Published 05/26/20
This week we chat with a panel of C++ trainers from around the world (but mostly from Germany, for some reason) - Nicolai Josuttis, Jason Turner, Rainer Grimm, Klaus Iglberger and Mateusz Pusz. We talk about how bringing in a good trainer will keep your costs down, whether online training works or not, and why C++ is different to most other languages when it comes to training. One of our guests reveals that he has had, and has recovered from, COVID-19 - but who? Special Guests: Jason...
Published 05/10/20
This week we chat with Bryce Adelstein Lelbach about how the ISO C++ WG21 committee is evolving - and his roles within it (and beyond) are evolving, too. We also look at the cross-over and interaction with the C standard, and even other languages. Is C really the Latin of programming languages? What is the relationship between the languages and the committees at this point? And why did so many committee members agree to a plan that contains items they may not be interested in? And what...
Published 04/17/20
This week we chat with five members of the SG16 Unicode Study Group, Zach Laine, Tom Honermann, Steve Downey, Peter Brett and Corentin Jabot. We talk about their efforts to get all things Unicode into the C++ standard in a tour that takes us from 5000 years ago, through the 80s and 90s up to the 2020s! We look at every known language, including a few dead ones - and some that are purely fictional. Do you know the difference between a code unit and code point? A glyph and a grapheme...
Published 04/02/20
This week we chat with James Berrow about colo(u)r, and how we're doing it all wrong (and not just the spelling). We look at why colour management is complicated, how RGB doesn't exist, and how everybody (well, almost everybody) get's it all wrong. We also look at the graphics proposal, and James' critique of it, as well as how he is working with the authors on some improvements. Special Guest: James Berrow. Links: P2005R0 - 2D Graphics: A Brief Review — James' graphics proposal...
Published 03/05/20
This week we chat with JeanHeyd Meneide (A.K.A. ThePhD) about coming full circle on std::embed, as well as whether optional references should rebind or assign-through. Packed with edge-of-the-seat stories of interesting proposals adventures through the standardisation process, as well as a decent amount of ranting. Special Guest: JeanHeyd Meneide. Links: Going Full Circle on Embed in C++ — JeanHeyd's post on std::embed and CircleLangTo Bind and Loose a Reference — JeanHeyd's post on rebind...
Published 02/26/20
This week we chat with Ansel Sermersheim and Barbara Geller about Copperspice, Doxypress, csLibGuarded and kitchen utensils. We find out that Barbara and Ansel are not just library people but are actually programmers - and programmers that know how to build abstractions. We chat about why they started CopperSpice, how it got it's name, and what else they've been working on. Special Guests: Ansel Sermersheim and Barbara Geller. Links: CopperSpice — The main...
Published 02/05/20
This week we chat with Greg Law about debugging and going back in time! How do things change when we can wait for something to go wrong, then go back to any point in time and examine the program state, like The Matrix's "Bullet Time"? How is this even possible, and what challenges need to be overcome? We also answer that age old question: what's the first thing people ask for when you say you can give them a time machine? Special Guest: Greg Law. Links: Greg's CppCon 2019 talk — “Modern...
Published 01/17/20
This week we chat with Vittorio Romeo about the pros and cons of backwards compatibility in C++, and his proposal to get the best of both worlds: Epochs. As well as language compatibility, we also discuss ABI compatibility - why breaking these things is such a problem, but how not breaking them is increasingly becoming a problem. We also, finally, get an answer to the age of question of, "how many programmers does it take to change a lightbulb?" Special Guest: Vittorio...
Published 12/19/19
This week we chat with Clare Macrae about Approval Testing, testing in general, the challenges (and some solutions to) testing legacy code - as well as highly visual environments like Qt GUIs or image processing apps. Working with an existing codebase that doesn't have tests can be scary and time consuming. But getting it under test is challenging, too. Clare explains how Approval Testing helps here, and how it all works. We also talk about how she has quickly become a sought after...
Published 11/21/19
This week, in a cpp.chat exclusive, we chat with Sean Baxter about Circle - the C++ compiler that he wrote. That’s a C++ compiler. That he wrote. Oh, and it does meta-programming in a way that we’re only dreaming of part of for C++23 or 26! So what can it do, and what is it useful for? Why is Jon struggling to wrap his head around what Sean has achieved and can it really turn Twitter into code? If you want to follow along screen shared segment, I've tried to embed screenshots in the...
Published 11/06/19
In our second live CppCon episode we chat with Sean Parent about relationships, working with Alexander Stepanov, over-object-orientizing things and, yes, even rotate. Sean tells us stories from his years at Adobe, including how he first came to work with Stepanov (the father of the STL) - a well as some spectacularly bad responses to interview problems. You can also watch the video for this episode at: https://www.youtube.com/watch?v=czHpJE3xIXc Special Guest: Sean Parent. Links: Sean's...
Published 10/17/19
The first of our two, live, CppCon episodes - this time we sit with Andrei Alexandrescu and Herb Sutter to introspect about introspection and take exception to exceptions. We also talk about the "Engage, Entertain, Educate: Technical Speaking that Works" class that Andrei was involved with, again, at this year's CppCon. But Andrei describes himself as a "free radical" and "too much plutonium" and claims he needs Herb as "a bit of graphite" to keep him in check. Listen to find out what the...
Published 10/12/19