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.
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 best, yet learn from the mistakes, of the past. Listen to this episode to find out if they pulled it off!
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.
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.
In this episode we welcome back Tony and Klaus to talk about the [SOLID](https://en.wikipedia.org/wiki/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, what COLID is, who is going to argue against Liskov, and who is just there for the jokes. The answer, of course, is: it depends.
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.
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.
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!
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 Shakespeare 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?
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.
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'?
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 safer coding.
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?
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 happened to the Varna meeting, anyway?
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 cluster? String a Text? And what's wrong with Locales anyway? This show sorts it all out.
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) gets 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.
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.
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.
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?
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?'