Look for any podcast host, guest or anyone
Showing episodes and shows of

Jon Kalb

Shows

cpp.chatcpp.chatThe Curse of Backwards CompatibilityThis 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 - Linköpings C++ User Group- Meetup pageMalmö C++ User Group- Meetup pageThe C++ user gro...2022-02-111h 00cpp.chatcpp.chatThe Curse of Backwards CompatibilityThis 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 - Linköpings C++ User Group- Meetup pageMalmö C++ User Group- Meetup pageThe C++ user gro...2022-02-111h 00cpp.chatcpp.chatDid You Really Learn from All the C++ Mistakes?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...2021-12-271h 05cpp.chatcpp.chatDid You Really Learn from All the C++ Mistakes?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...2021-12-271h 05cpp.chatcpp.chatI Can't Believe I'm HereThis 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 ExpressiveMoves in ReturnsP2445R0 - std::forward_likeP2461R0 - Closure-Based Syntax for ContractsP2465R1 - Standard Library Modules std and std...2021-11-091h 13cpp.chatcpp.chatI Can't Believe I'm HereThis 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 ExpressiveMoves in ReturnsP2445R0 - std::forward_likeP2461R0 - Closure-Based Syntax for ContractsP2465R1 - Standard Library Modules std and std...2021-11-091h 13cpp.chatcpp.chatThe Future of C++ (KDAB interview)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 the interview on...2021-06-1839 mincpp.chatcpp.chatThe Future of C++ (KDAB interview)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 the interview on...2021-06-1839 mincpp.chatcpp.chatThe Answer Is, It DependsIn 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, what COLID is, who...2021-04-201h 11cpp.chatcpp.chatThe Answer Is, It DependsIn 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, what COLID is, who...2021-04-201h 11cpp.chatcpp.chatRequired to Warn You, Unless It’s HardThis 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 for developers interested in C++No Diagnostic Required- Phil's new(ish) podcast (with Anastasia Ka...2021-04-151h 04cpp.chatcpp.chatRequired to Warn You, Unless It’s HardThis 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 for developers interested in C++No Diagnostic Required- Phil's new(ish) podcast (with Anastasia Ka...2021-04-151h 04cpp.chatcpp.chatI'm a Bit RustyThis 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, written in Rust#include c++- a global, inclusive, and diverse...2021-04-131h 09cpp.chatcpp.chatI'm a Bit RustyThis 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, written in Rust#include c++- a global, inclusive, and diverse...2021-04-131h 09cpp.chatcpp.chatIzzy's 'Fine' With ModulesThis 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) rant on Modules'tag_invoke' - An Actually Go...2021-01-121h 09cpp.chatcpp.chatIzzy's 'Fine' With ModulesThis 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) rant on Modules'tag_invoke' - An Actually Go...2021-01-121h 09cpp.chatcpp.chatChairs Around a Tony TableThis 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? Links:C++17 in Tony TablesC++20 in Tony TablesTony's CppCon lightning talk, 'The Songs of My People'- not the one referenced in the pastPost Modern C++ (at...2020-11-121h 10cpp.chatcpp.chatChairs Around a Tony TableThis 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? Links:C++17 in Tony TablesC++20 in Tony TablesTony's CppCon lightning talk, 'The Songs of My People'- not the one referenced in the pastPost Modern C++ (at...2020-11-121h 10cpp.chatcpp.chatI Really like SugarThis 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.Links:C++ Events Affected By CoronavirusWorldwide C++ user group events on SwedenCppSean Parent...2020-10-081h 05cpp.chatcpp.chatI Really like SugarThis 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.Links:C++ Events Affected By CoronavirusWorldwide C++ user group events on SwedenCppSean Parent...2020-10-081h 05cpp.chatcpp.chatMy Friends Call Me BoolThis 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"? Links:The 'Dam Book'- John Lakos' long-awaited 'Large Scale C++ Volume 1'Upcoming C++ virtual meetups, worldwide- On the Sweden C++ usergroups sitePitchforkDDS2020-06-211h 04cpp.chatcpp.chatMy Friends Call Me BoolThis 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"? Links:The 'Dam Book'- John Lakos' long-awaited 'Large Scale C++ Volume 1'Upcoming C++ virtual meetups, worldwide- On the Sweden C++ usergroups sitePitchforkDDS2020-06-211h 04cpp.chatcpp.chatIt Doesn’t Get Bored and It Doesn’t Get TiredThis 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.2020-05-261h 06cpp.chatcpp.chatIt Doesn’t Get Bored and It Doesn’t Get TiredThis 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.2020-05-261h 06cpp.chatcpp.chatThe Problem Is, They Expect AnswersThis 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?Links:CLion 2020.1 released- Dozens of Improvements Across the...2020-05-111h 07cpp.chatcpp.chatThe Problem Is, They Expect AnswersThis 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?Links:CLion 2020.1 released- Dozens of Improvements Across the...2020-05-111h 07cpp.chatcpp.chatWilling to Steal Good IdeasThis 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?...2020-04-171h 08cpp.chatcpp.chatWilling to Steal Good IdeasThis 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?...2020-04-171h 08cpp.chatcpp.chatWe’re Not Going to Allow You to Throw 💩 AnymoreThis 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...2020-04-0259 mincpp.chatcpp.chatWe’re Not Going to Allow You to Throw 💩 AnymoreThis 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...2020-04-0259 mincpp.chatcpp.chatColour Is Not Black and WhiteThis 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.Links:P2005R0 - 2D Graphics: A Brief Review- James' graphics proposal reviewColor proposal implementation- James' colour proposal implementationEveryone Does sRGB Wrong Because Everyone...2020-03-051h 01cpp.chatcpp.chatColour Is Not Black and WhiteThis 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.Links:P2005R0 - 2D Graphics: A Brief Review- James' graphics proposal reviewColor proposal implementation- James' colour proposal implementationEveryone Does sRGB Wrong Because Everyone...2020-03-051h 01cpp.chatcpp.chatRanting Is OptionalThis 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.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 vs pass-through optional refsAll the C++30 Features - but Right Now- cpp.chat episode with Sean Baxter (Circle)ABI - Now...2020-02-2658 mincpp.chatcpp.chatRanting Is OptionalThis 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.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 vs pass-through optional refsAll the C++30 Features - but Right Now- cpp.chat episode with Sean Baxter (Circle)ABI - Now...2020-02-2658 mincpp.chatcpp.chatCopperspice Is Your Middle Name?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.Links:CopperSpice- The main siteDoxypresscsLibGuardedCopperSpice YouTube channelCopperSpice subscriptions- If you want to pay for priority supportCLion with Docker- Phil's recent video and blogMeeting C++ surveyC++ on Sea workshop speakersCore C++ Call...2020-02-051h 04cpp.chatcpp.chatCopperspice Is Your Middle Name?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.Links:CopperSpice- The main siteDoxypresscsLibGuardedCopperSpice YouTube channelCopperSpice subscriptions- If you want to pay for priority supportCLion with Docker- Phil's recent video and blogMeeting C++ surveyC++ on Sea workshop speakersCore C++ Call...2020-02-051h 04cpp.chatcpp.chatSet a Breakpoint in the PastThis 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?Links:Greg's CppCon 2019 talk- 'Modern Linux C++ debugging tools - under the covers'https...2020-01-171h 01cpp.chatcpp.chatSet a Breakpoint in the PastThis 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?Links:Greg's CppCon 2019 talk- 'Modern Linux C++ debugging tools - under the covers'https...2020-01-171h 01cpp.chatcpp.chatWe Almost Always Get the Default WrongThis 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?"Links:Vittorio's CppCon talk on epochsp1881 - The Epochs Proposal- Epochs: a backward-compatible...2019-12-1957 mincpp.chatcpp.chatWe Almost Always Get the Default WrongThis 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?"Links:Vittorio's CppCon talk on epochsp1881 - The Epochs Proposal- Epochs: a backward-compatible...2019-12-1957 mincpp.chatcpp.chatIf You Change It and You Break It, You’ll KnowThis 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 speaker, with some tips for first time speakers, and some more general...2019-11-2158 mincpp.chatcpp.chatIf You Change It and You Break It, You’ll KnowThis 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 speaker, with some tips for first time speakers, and some more general...2019-11-2158 mincpp.chatcpp.chatAll the C++30 Features - but Right NowThis 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...2019-11-0659 mincpp.chatcpp.chatAll the C++30 Features - but Right NowThis 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...2019-11-0659 mincpp.chatcpp.chatI’m Surprised You Brought up RotateIn our second live CppCon 2019 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.Links:Sean's CppCon 2019 keynote- Better Code: Relationships2019-10-1745 mincpp.chatcpp.chatI’m Surprised You Brought up RotateIn our second live CppCon 2019 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.Links:Sean's CppCon 2019 keynote- Better Code: Relationships2019-10-1745 mincpp.chatcpp.chatYou Get to Fix It the next TimeThe first of our two, live, CppCon 2019 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 CppCon 2019. 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 debate is about!Links:Herb's CppCon 2019 keynote- De-fragmenting C++: Making...2019-10-1240 mincpp.chatcpp.chatYou Get to Fix It the next TimeThe first of our two, live, CppCon 2019 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 CppCon 2019. 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 debate is about!Links:Herb's CppCon 2019 keynote- De-fragmenting C++: Making...2019-10-1240 mincpp.chatcpp.chatThe Shape of the ValueThis week we chat with David Sankel and Michael Park about their Pattern Matching proposal, as well as a language level variant. We look at how some judicious use of syntactic sugar can improve even the ugliest part of the sausage. Pattern Matching (as well as the language version of Variant) are progressing well through the committee - potentially on track for C++23. We discuss how, when these land, they are going to impact every single developer - allowing us to inspect and handle values in a far more declarative way, We also talk a...2019-09-2852 mincpp.chatcpp.chatThe Shape of the ValueThis week we chat with David Sankel and Michael Park about their Pattern Matching proposal, as well as a language level variant. We look at how some judicious use of syntactic sugar can improve even the ugliest part of the sausage. Pattern Matching (as well as the language version of Variant) are progressing well through the committee - potentially on track for C++23. We discuss how, when these land, they are going to impact every single developer - allowing us to inspect and handle values in a far more declarative way, We also talk a...2019-09-2852 mincpp.chatcpp.chatThere's No Secret to Security. The Secret Is ...This week we chat with Patricia Aas about secure coding practices, using computers to count votes in elections and the two hardest problems in software development. Patricia and Phil have both been at NDC TechTown all week where Patricia gave a keynote, a two-day class, a talk and hosted a meet-up - but still found time to chat with us. We discuss the relationship between secure code and just plain good code (spoiler: they're essentially the same), and how much rigour went into computerising the Norwegian election vote counting system (spoiler: none). We also discuss...2019-09-121h 03cpp.chatcpp.chatThere's No Secret to Security. The Secret Is ...This week we chat with Patricia Aas about secure coding practices, using computers to count votes in elections and the two hardest problems in software development. Patricia and Phil have both been at NDC TechTown all week where Patricia gave a keynote, a two-day class, a talk and hosted a meet-up - but still found time to chat with us. We discuss the relationship between secure code and just plain good code (spoiler: they're essentially the same), and how much rigour went into computerising the Norwegian election vote counting system (spoiler: none). We also discuss...2019-09-121h 03cpp.chatcpp.chatAggressively Stealing from Other LanguagesThis week we're joined by Victor Zverovich as we chat about his string formatting library - which has just been adopted into C++20 - as well as the possibility of a corresponding input library, various smaller C++17 features, and whether it's possible to travel continuously from C++ event to C++ event. We also announce the dates for C++ on Sea 2020, Phil's vision for CppCon's Lightning Talks, as he takes them over, whether we should be removing more from the standard, and look forward to seeing The Last Macro.Links:Next release of fmt libraryText...2019-08-3057 mincpp.chatcpp.chatAggressively Stealing from Other LanguagesThis week we're joined by Victor Zverovich as we chat about his string formatting library - which has just been adopted into C++20 - as well as the possibility of a corresponding input library, various smaller C++17 features, and whether it's possible to travel continuously from C++ event to C++ event. We also announce the dates for C++ on Sea 2020, Phil's vision for CppCon's Lightning Talks, as he takes them over, whether we should be removing more from the standard, and look forward to seeing The Last Macro.Links:Next release of fmt libraryText...2019-08-3057 mincpp.chatcpp.chatCan Everyone Stop Saying "Tupple"This week we chat with Guy Davidson about linear algebra coming to C++, other mathsy stuff, audio, games dev and C++ training evenings. We barely even mention 2D graphics once! Did you know that Guy has written four linear algebra libraries in C++ since 1990? He's in a good position to be involved with the standardisation effort. But how do you bring something that Fortran excels at to modern standard C++ without it just being the C++ification of Fortran? Listen to find out.Links:Guy (and Bob Steagall's) Linear Algebra WG21 proposalGuy's Linear Algebra...2019-08-011h 03cpp.chatcpp.chatCan Everyone Stop Saying "Tupple"This week we chat with Guy Davidson about linear algebra coming to C++, other mathsy stuff, audio, games dev and C++ training evenings. We barely even mention 2D graphics once! Did you know that Guy has written four linear algebra libraries in C++ since 1990? He's in a good position to be involved with the standardisation effort. But how do you bring something that Fortran excels at to modern standard C++ without it just being the C++ification of Fortran? Listen to find out.Links:Guy (and Bob Steagall's) Linear Algebra WG21 proposalGuy's Linear Algebra...2019-08-011h 03cpp.chatcpp.chatHell's Corner: Shared Mutable StateThis week we chat with Juan Pedro Bolívar Puente (a.k.a. JuanPe) about immutable data structures, value types and more - and definitely not functional programming! How can data types be valuable if you can't change them? How can copying huge amounts of data be cheap? How can we go beyond Object-Oriented Programming - and get concurrency almost for free - all without making moral judgements about our code? The answers to all this and more drop out of our chat with Juan Pedro.Links:Immer- JuanPe's immutable data structures l...2019-07-091h 02cpp.chatcpp.chatHell's Corner: Shared Mutable StateThis week we chat with Juan Pedro Bolívar Puente (a.k.a. JuanPe) about immutable data structures, value types and more - and definitely not functional programming! How can data types be valuable if you can't change them? How can copying huge amounts of data be cheap? How can we go beyond Object-Oriented Programming - and get concurrency almost for free - all without making moral judgements about our code? The answers to all this and more drop out of our chat with Juan Pedro.Links:Immer- JuanPe's immutable data structures l...2019-07-091h 02cpp.chatcpp.chatHow Often Do People Move Functions?This week we chat with Pablo Santos, founder and chief engineer of Plastic SCM, and SemanticMerge. Pablo talks to us about how the "full stack" version control system he created at Plastic SCM differentiates itself in the age of GitHub, how times have moved on for VCS systems (largely driven by GitHub), and how it might even be being used outside of software projects now. We also chat about SemanticMerge, which can automatically - and accurately - merge far more cases than the traditional text-only merge tools, and what this means for coders....2019-06-1455 mincpp.chatcpp.chatHow Often Do People Move Functions?This week we chat with Pablo Santos, founder and chief engineer of Plastic SCM, and SemanticMerge. Pablo talks to us about how the "full stack" version control system he created at Plastic SCM differentiates itself in the age of GitHub, how times have moved on for VCS systems (largely driven by GitHub), and how it might even be being used outside of software projects now. We also chat about SemanticMerge, which can automatically - and accurately - merge far more cases than the traditional text-only merge tools, and what this means for coders....2019-06-1455 mincpp.chatcpp.chatYou Do Not Understand Anything as Well as You Think You DoThis week we chat with Ivan Čukić about Functional Programming, despite him not wanting to be known as "The Functional Programming Guy", TMP and OO, and how he was taught C++ in high school. How does Ivan balance writing books (in fact will he write another book?) and speaking at conferences internationally, while teaching full time at university?Links:CppCon announcementsReSharper C++ 2019.1 release- Explore the dozens of significant performance improvements inside, as well as dedicated support for Unreal Engine 4, more flexible integration with Clang-Tidy, naming conventions, and the new Doctest unit testing framework.Top Te...2019-05-1858 mincpp.chatcpp.chatYou Do Not Understand Anything as Well as You Think You DoThis week we chat with Ivan Čukić about Functional Programming, despite him not wanting to be known as "The Functional Programming Guy", TMP and OO, and how he was taught C++ in high school. How does Ivan balance writing books (in fact will he write another book?) and speaking at conferences internationally, while teaching full time at university?Links:CppCon announcementsReSharper C++ 2019.1 release- Explore the dozens of significant performance improvements inside, as well as dedicated support for Unreal Engine 4, more flexible integration with Clang-Tidy, naming conventions, and the new Doctest unit testing framework.Top Te...2019-05-1858 mincpp.chatcpp.chatThe Puns Only Appeared after We Added Co_After a break of a few weeks we're back with an episode actually recorded on March 12th (when Phil had a cold). We chat with Gor Nishanov about Coroutines, which were just adopted into the draft standard for C++20. We talk about what Coroutines are, why recent talks may have been given the wrong impression (as they focused on a library writer's perspective,) what is going into the standard (the core language features) and what is not (library support, performance guaranteed by construction) and why. We also look at Microsoft's open-sourcing of the Calculator source...2019-04-291h 02cpp.chatcpp.chatThe Puns Only Appeared after We Added Co_After a break of a few weeks we're back with an episode actually recorded on March 12th (when Phil had a cold). We chat with Gor Nishanov about Coroutines, which were just adopted into the draft standard for C++20. We talk about what Coroutines are, why recent talks may have been given the wrong impression (as they focused on a library writer's perspective,) what is going into the standard (the core language features) and what is not (library support, performance guaranteed by construction) and why. We also look at Microsoft's open-sourcing of the Calculator source...2019-04-291h 02cpp.chatcpp.chatHow Hard Is It to Write a Build Tool?This week we're joined by Ben Craig as we chat about Modules, as was recently adopted into the C++20 draft standard in the meeting at Kona. We talk about how modules interact with build systems, what the deal with macros is, and the new study group set up to advise tools vendors on best practices for supporting modules in an optimal way. We also talk about Ben's ongoing work on moving the Free Standing mode of the standard forwards - and what that really means. To find out what the beneficial crisis is...2019-03-1358 mincpp.chatcpp.chatHow Hard Is It to Write a Build Tool?This week we're joined by Ben Craig as we chat about Modules, as was recently adopted into the C++20 draft standard in the meeting at Kona. We talk about how modules interact with build systems, what the deal with macros is, and the new study group set up to advise tools vendors on best practices for supporting modules in an optimal way. We also talk about Ben's ongoing work on moving the Free Standing mode of the standard forwards - and what that really means. To find out what the beneficial crisis is...2019-03-1358 mincpp.chatcpp.chatThe next Call to Random() Must Be 4We've talked about contracts before, but this week Björn Fahller joins us to give us his thoughts, based on his recent talk at C++ on Sea. This is all pre-Kona - the recent Standards meeting that saw several tweaks to the wording for contracts in the draft standard for C++20. Björn gives us a refresher of what contracts actually are, and how many of us have been using them in some form for years - even decades. Then we discuss what's actually going into C++20, why that's worth having compared to assert() or hand-rolled or li...2019-03-051h 00cpp.chatcpp.chatThe next Call to Random() Must Be 4We've talked about contracts before, but this week Björn Fahller joins us to give us his thoughts, based on his recent talk at C++ on Sea. This is all pre-Kona - the recent Standards meeting that saw several tweaks to the wording for contracts in the draft standard for C++20. Björn gives us a refresher of what contracts actually are, and how many of us have been using them in some form for years - even decades. Then we discuss what's actually going into C++20, why that's worth having compared to assert() or hand-rolled or li...2019-03-051h 00cpp.chatcpp.chatIf You Took a Cookie You Owe Us a Lightning TalkThis week we talk to Adi Shavit and Michael Gopshtein about their new conference in Tel Aviv - Core C++. We also get thoroughly distracted by talking about modules - and whether there is a major toolability issue with them, as currently proposed.Links:Core C++Core C++ - Eurovision Ticket Raffle- "We are delighted to announce that as part of the Eurovision diversity outreach, we shall be raffling one free Eurovision ticket!"The Italian C++ ConferenceThe ACCU conferenceEmbo++C++ NowC++ on Sea- Now over, but videos coming onlineC++ Modules Might Be Dead-on-Arrival- If you've been...2019-02-161h 05cpp.chatcpp.chatIf You Took a Cookie You Owe Us a Lightning TalkThis week we talk to Adi Shavit and Michael Gopshtein about their new conference in Tel Aviv - Core C++. We also get thoroughly distracted by talking about modules - and whether there is a major toolability issue with them, as currently proposed.Links:Core C++Core C++ - Eurovision Ticket Raffle- "We are delighted to announce that as part of the Eurovision diversity outreach, we shall be raffling one free Eurovision ticket!"The Italian C++ ConferenceThe ACCU conferenceEmbo++C++ NowC++ on Sea- Now over, but videos coming onlineC++ Modules Might Be Dead-on-Arrival- If you've been...2019-02-161h 05cpp.chatcpp.chatEntirely Incorrect but Wonderfully Well-formedThis week we welcome back Kevlin Henney and talk to him about Deliberate Practice: what it is, how to relates to C++ programmers, and the workshop on it he's running with Jon Jagger at C++ on Sea. Along the way we also get into gaming the documentation writing system, the PDSA cycle and Boyd OODA loop, Mind Mapping and TDD. All in the pursuit of becoming better programmers.Links:C++ on Sea - closing soon!- Last chance to get ticketsC++ Now- registration openCore C++- in Tel AvivACCU Conference- registration openWorldwide conferences scheduleMindMup...2019-01-261h 04cpp.chatcpp.chatEntirely Incorrect but Wonderfully Well-formedThis week we welcome back Kevlin Henney and talk to him about Deliberate Practice: what it is, how to relates to C++ programmers, and the workshop on it he's running with Jon Jagger at C++ on Sea. Along the way we also get into gaming the documentation writing system, the PDSA cycle and Boyd OODA loop, Mind Mapping and TDD. All in the pursuit of becoming better programmers.Links:C++ on Sea - closing soon!- Last chance to get ticketsC++ Now- registration openCore C++- in Tel AvivACCU Conference- registration openWorldwide conferences scheduleMindMup...2019-01-261h 04cpp.chatcpp.chatI Don't Think I Could Code My Way out of a Paper BagThis week we chat with Frances Buontempo and Andy Balaam about Machine Learning, Artificial Intelligence and Genetic Algorithms. We learn how ML is mostly just "multiplying and adding up" with a bit of "randomly trying stuff out" but that you might need a kill switch - except when you don't. We also revive the "C++ Lamentations" debate and try to make an iota of difference.Links:Frances' book, "Genetic Algorithms and Machine Learning for Programmers"- Build artificial life and grasp the essence of machine learning. Fire cannon balls, swarm bees, diffuse...2019-01-221h 03cpp.chatcpp.chatWe Made It Even WorseThis week we're joined, once again (yet for the first time) by Nicolai Josuttis, and we talk about how much of a C++ expert you need to be to write "Hello, World" and initialize objects. We also discover how strongly Jon feels about initializer_list constructor syntax - and what Nico thinks about it.Links:C++17 - The Complete Guide (book)- This book is published incrementally (step-by-step) at leanpub, so that you can benefit from it without waiting until all is done. The first version was available since December 15, 2017. You can buy it...2019-01-191h 03cpp.chatcpp.chatWe Made It Even WorseThis week we're joined, once again (yet for the first time) by Nicolai Josuttis, and we talk about how much of a C++ expert you need to be to write "Hello, World" and initialize objects. We also discover how strongly Jon feels about initializer_list constructor syntax - and what Nico thinks about it.Links:C++17 - The Complete Guide (book)- This book is published incrementally (step-by-step) at leanpub, so that you can benefit from it without waiting until all is done. The first version was available since December 15, 2017. You can buy it...2019-01-191h 03cpp.chatcpp.chatMy Special Technique for Debugging Meta-programming CodeThis week we welcome Hana Dusíková to the show and we chat about her compiler time regular expressions library, Protocol Buffers, std::embed and getting good compile and runtime performance when doing metaprogramming. Unfortunately, due to an extended edit time, the volunteer and diversity ticket programmes for C++ on Sea, mentioned during the discussion, have already closed. The student programme is still open as this show is published.Links:Regular Expressions Redefined in C++- CppCon 2017 lightning talkCompile Time Regular Expressions- CppCon 2018 main program sessionC++ on Sea student programme- Full access the two da...2019-01-1252 mincpp.chatcpp.chatThe Things I'm Well Known for Are JavascriptThis week we're joined by Matt "Compiler Explorer" Godbolt as we chat about what your compiler is and isn't doing for you, doing a keynote for your first talk, and how having co-maintainers lets you go to flute concerts.Links:Compiler ExplorerQuick BenchUndefined Behavior and CERT's Vulnerability NoteC++ on Sea Volunteers and Student tickets- We are now accepting applications for students and volunteers. These programmes offer cheap (£50 for students) or free (for volunteers) tickets to qualifying applicants.C++ on Sea diversity tickets (via #include )- We're raising money to sponsor diversity and support tickets for @cpponsea! Y...2018-12-181h 01cpp.chatcpp.chatI Could Get Compile-time ThreadsAfter a bit of a break, we're back - and with non-other than Bjarne Stroustrup! We chat about the state of C++, from the hardcore of the committee to the whole community and also look at where we think it should go and maybe where it is going.Links:C++ on SeaChina CppConCore C++ (Israel)ADC (Videos)San Diego trip-report (Reddit)Bjarne's CppCon 2018 Keynote2018-12-0458 mincpp.chatcpp.chatControl over Space and TimeAfter a bit of a break in the lead up to CppCon, in this interview we chat with Herb Sutter - in front of a live audience at CppCon itself. We chat a bit about the conference, how it has been "the best ever" (yet again), but also how it is the last one in that location (CppCon moves to Aurora, just north of Denver, Colorado, next year). We then dig into Herb's Static(aly-typed, deterministic) Exceptions proposal - what it really means for everyone in the community - and how it fits into Herb's...2018-10-2044 mincpp.chatcpp.chatA Fight Club in Every CityThis week we chat with Tristan Brindle, Oli Ddin and Tom Breza about C++ London Uni - a free course, based in London (and remotely), for learning C++. We hear, not only what the course is about and how you can join, but some inside insights into the challenges - and rewards - of teaching C++ to beginners. We also talk about how this is useful even to experienced developers.Links:C++ London UniC++ LondonGoFundMe to replace Tristan's broken (teaching) laptop”C++ on Sea tickets (Early Bird now finished)”ToolTime at CppConPhil's 'Accelerated TDD' clas...2018-09-171h 06cpp.chatcpp.chatWe Still Have Vector of BoolC++ on Sea free ticket winner. This week we chat with David Schwartz, CTO of Ripple, the company behind the XRP cryptocurrency. He tells us what sets XRP apart from Bitcoin, summarises what Proof Of Work actually means, and how XRP's Distributed Agreement Protocol is better, and some of the reasons that C++ was chosen as the implementation language.Links:RippleCppCon Field TripTool Time at CppConC++ on Sea free ticket winner2018-08-2956 mincpp.chatcpp.chatIt Works but It's Undefined BehaviourThis week we welcome back Howard Hinnant and Arthur O'Dwyer to discuss Arthur's paper, P1144, "Trivially Relocatable". We talk about what it is, what problems it solves, older papers covering the same ground, and even another in-flight paper (P1029) that it overlaps with. As one of the original authors of C++11's move semantics, Howard is on hand to flesh out the historical perspective.Links:Arthur's blog post on P1144, 'Trivially Relocatable'N4034- 'Destructive Move', Pablo HalpernN4158- more'Destructive Move', Pablo HalpernP0023- 'Relocator', Denis BiderP1029- 'Move-relocates', Niall DouglasFacebook's FollyWin a free ticket...2018-08-201h 08cpp.chatcpp.chatWho, Here, Writes Unit Tests?This week we manage to align with the calendars of Kevlin Henney and Martin Hořeňovský to talk about testing and beyond - with a particular focus on Catch2 - past, present and future. We discuss how some of Kevlin's ideas influenced Catch originally, and how Martin later joined as a co-maintainer (who does most of the work).Links:Kevlin's talk, 'Rethinking Unit Testing in C++'Phil's blog post about Kevlin's talkCatch2John Lakos' long-promised book, 'Large Scale C++, Vol I'Google FilamentClang ConceptsC++ on Sea Early Bird ticketsWin a free ticket to C++ on 2018-08-171h 03cpp.chatcpp.chatHotfix Our Way to SecurityThe week we chat with Eva Conti, Troy Hunt and Matthew Butler on the topic of secure coding (so that's what safe coding is!). Eva and Matt are reformed hackers themselves and share some of their unique insights from the dark side, and how that can inform all of us in our coding practices - including those that think they don't need to worry about security in their environments.Links:C++ on Sea Early Bird registrationCppCon schedulePacific++ tickets2018-08-161h 07cpp.chatcpp.chatA Whole Arsenal of Foot GunsThis week we welcome Anastasia Kazakova and Dmitry Kozhevnikov to talk about the recent release of CLion 2018.2, as well as the upcoming release of ReSharper C++. We particularly talk about the new clangd based language engine that CLion now uses alongside it's own, as well as the next step towards alternate build system support - and C++/CLI support in ReSharper C++. We also talk about JetBrains' involvement in the standards committee and the new tooling group, SG15. And Anastasia talks excitedly about a really great promotional discount on JetBrains' products which, sadly, expired before this episode...2018-08-0859 mincpp.chatcpp.chatA Callback Every MillisecondThis week we chat with Timur Doumler and Brian Heim about the challenges peculiar to audio development, and find that most are shared with other domains - especially those that consider themselves low-latency and/ or real-time. Timur has, in the past, worked on audio software at ROLI and Native Instruments, and has been a maintainer of the JUCE audio library - but now works on CLion at JetBrains. Brian is a maintainer of SuperCollider, a platform for audio synthesis and algorithmic composition.Links:ROLIJUCEADCC++ on Sea - speakers call just closingSuperCollider2018-08-011h 02cpp.chatcpp.chatVolatile Is the Embedded KeywordThis week we discuss some of the challenges of embedded development. We're joined by Michael Caisse, Ben Craig and Odin Holmes for a chat that, at times, touches on volatile subjects! We'll also consider why those of us not working in embedded should care - and what possible future features and directions of C++ could benefit everybody and, perhaps, unify our currently disparate worlds.Links:'I think it's 100% clear the C++ committee should remove volatile'Freestanding proposal (library)Freestanding proposal (language)Zero cost (static) exceptionshttps://cppcon.orghttps://cpponsea.uk/callforspeakershttps://pacificplusplus.com2018-07-271h 05cpp.chatcpp.chatDon't Make the Garbage in the First PlaceThis week our main topic is Simplicity and we're joined by Kate Gregory, who will be keynoting CppCon on the subject, and Jonathan Boccara, whose blog is often focused on pursuing simplicity, too. We cover how to deal with complexity in legacy code, e.g. a report function containing thousands of lines of switch statement (and a 27 step process to add a new report), what simple code looks like to begin with, techniques that help - including functional programming and TDD, and some of the limitations of all these approaches. Links:Jonathan's Blog, Fluent...2018-07-111h 03cpp.chatcpp.chatIf You're Never Getting Rejected You're Not Controversial EnoughThis week we didn't start out with a theme topic, but spent time discussing conferences around the world as well as whether too many diluting proposals are going through the standards process. Also, is it actually easier to get a library into the standard than Boost? What really was the moral of the story of the Vasa?Links:Robert's reddit thread on Bjarne's 'Remember The Vasa'Pacific++C++ on Sea, Call for SpeakersCppCon (Early Bird tickets may still be available)2018-07-051h 07cpp.chatcpp.chatWhatever Happens Inside the Function Is Nobody's BusinessThis week we discuss Contracts, both as an idea (and possible implementations) and as the language level proposal currently progressing through the ISO process. We have one of the proposal's authors, John Lakos, as well as an interested bystander, Kévin Boissonneault. We finally get to Jon's rant on non-const arguments in post-conditions, and realise that the proposal authors may be one step ahead of us!Links:John (et al)'s earlier paper on the Bloomberg implementationThe Contracts proposal - r4- (apparently there is a non-public r5)The Lakos Rule/ GuidelineC++ on Sea C...2018-06-301h 06cpp.chatcpp.chatWhatever Happens Inside the Function Is Nobody's BusinessThis week we discuss Contracts, both as an idea (and possible implementations) and as the language level proposal currently progressing through the ISO process. We have one of the proposal's authors, John Lakos, as well as an interested bystander, Kévin Boissonneault. We finally get to Jon's rant on non-const arguments in post-conditions, and realise that the proposal authors may be one step ahead of us!Links:John (et al)'s earlier paper on the Bloomberg implementationThe Contracts proposal - r4- (apparently there is a non-public r5)The Lakos Rule/ GuidelineC++ on Sea C...2018-06-301h 06cpp.chatcpp.chatA Meta-Meta Build SystemAfter a break for vacations and the ISO meeting in Rapperswil, we're back with an episode on the new SG15 study group and, in particular, its focus on dependency managers and build systems. All of our guests have been major contributors to different dependency managers and build systems and combine their ideas and experience in a series of debates and discussions that will get you thinking!Links:JetBrains ISO C++ Rapperswil Trip ReportTitus Winters about SG15 on a mailing listTitus' comments on Twitter (see whole thread)Conanbuild2C++ on Sea Call for SpeakersCppCon Volunteer...2018-06-201h 02cpp.chatcpp.chatYou Didn't Give Me Enough Time to Explain It ShortlyMore proposals! This time the main topic is p0847r1, "Deducing this", authored by our guests, Gašper and Ben, along with Barry Revzin and Sy Brand. This proposal is a simple idea, that works by allowing you to make explicit something that has always been implicit in the language. Yet the consequences are many and far reaching - solving many little problems - and simplifying others. Gašper also mentions another proposal of his, p1099r0, "Using Enum", which is another simple language change for added consistency, extra convenience and less verbosity - but ot...2018-06-011h 00cpp.chatcpp.chatWe've Dropped the 'M' WordIn this episode we discuss Herb Sutter's new proposal, p0709, "Zero-overhead deterministic exceptions", a.k.a. "Static Exceptions" - and a couple of supporting proposals from Niall Douglas (p1028 and p1029). We talk about what the proposed feature is, how it works, and why it is so signifiant. Find out why Jon is, "really excited" about it!Links:The Static Exceptions proposal itselfstatus_code and standard error - supporting proposal[[move_relocates]] - supporting proposalContracts proposalstd::expected proposal'Disappointments'Simon's post on monadic error handlingSummary of SG14 discussion onNiall Douglas' talk on std::expectedJohn McFarlane's Error...2018-05-221h 05cpp.chatcpp.chatWe've Dropped the 'M' WordIn this episode we discuss Herb Sutter's new proposal, p0709, "Zero-overhead deterministic exceptions", a.k.a. "Static Exceptions" - and a couple of supporting proposals from Niall Douglas (p1028 and p1029). We talk about what the proposed feature is, how it works, and why it is so signifiant. Find out why Jon is, "really excited" about it!Links:The Static Exceptions proposal itselfstatus_code and standard error - supporting proposal[[move_relocates]] - supporting proposalContracts proposalstd::expected proposal'Disappointments'Simon's post on monadic error handlingSummary of SG14 discussion onNiall Douglas' talk on std::expectedJohn McFarlane's Error...2018-05-221h 05cpp.chatcpp.chatNobody Knows Enough (Except Richard Smith)In this episode we discuss, with speakers, organisers and attendees - old and new - what it is that makes C++ Now special: from bears to beers, low-level experts to high altitude running, C++ Now has it all. 2018-05-1840 mincpp.chatcpp.chatSometimes, In The Lightning Talks, I Don't Get The JokesNote that this episode was recorded before episode 26, with Rob and Jason, so Jon introduces it as if it was the first after the hiatus - a nd some of the same jokes are made. Sorry about that. Normal service (and ordering) will resume from the next episode.2018-05-1141 mincpp.chatcpp.chatSometimes, In The Lightning Talks, I Don't Get The JokesNote that this episode was recorded before episode 26, with Rob and Jason, so Jon introduces it as if it was the first after the hiatus - a nd some of the same jokes are made. Sorry about that. Normal service (and ordering) will resume from the next episode.2018-05-1141 mincpp.chatcpp.chatI'm a Tall Guy Who Hit His Head a LotThis is the first episode of cpp.chat in the podcast format, and the first of the rebooted series, following a hiatus since last summer. In this episode we introduce, new producer and co-host, Phil Nash, and entertain Rob and Jason from "the other C++ podcast", CppCast. We turn the tables on these long-time interviewers, digging into their background and preferences, as well as looking back at three years of CppCast. Links:cppcast.comACCU ConferenceACCU Conference videosSarah Smith 'Postcards from the Cross-platform Frontier'CppCon registration announcement - including classesCppCon submission advice mailing listC++...2018-04-3056 minCppCastCppCastJon Kalb loves the C++ CommunityEpisode number 1 of CppCast with guest Jon Kalb Jon has been writing C++ for two and half decades, does onsite C++ training, and works on the Amazon search engine for A9.com. He chairs the CppCon and C++Now conferences. He also programs the C++ Track for the Silicon Valley Code Camp and serves as chair of the Boost Libraries Steering Committee. Links cppcon cppcon YouTube Channel C++Now! Boost Library Incubator Does C++ need its own podcast? Jon Kalb @_JonKalb Exception-Safe Coding in C++ 2015-02-1750 min