Typically whenever I like a podcast episode, I will just tweet about it, like the examples below:
- CoRecursive Episode 24 with Bryan Cantrill
- Functional Geekery Episode 128 with Gene Kim
- NVIDIA AI Podcast Episode 100 with Ian Buck
- CppCast Episode 237 with Barry Revzin
However, today’s episode was so good that a tweet was not enough - so I created a blog so I could have more than 140 characters to share my thoughts.
About CppCast
CppCast is one of the two main C++ podcasts and is hosted by Rob Irving and Jason Turner. The other C++ podcast is cpp.chat. The format of CppCast is to have a guest on and talk about a topic (typically relevant to the guest) with the guest. Before talking about said topic, they typically cover a few pieces of news from the C++ community and ecosystem.
Episode 242 with Jonathon Turner
The guest for Episode 242 was Jonathan Turner, who happens to be co-host Jason’s cousin. For anyone that is interested in programming languages - this podcast is a goldmine. I was going for my daily COVID walk and I couldn’t stop smiling while I was listening to it. Here are my favorite quotes from the episode (some profound, some funny):
Your ambitions will outrun your skill - and that is how you should start.
There was so much more about programming that I wanted to learn so that I was always ready, I could always go deep and have really strong solutions to problems; that was really the impetus to study programming languages … how do you think about programming, how do you do really good programming so that the code you write is very readable and crisp and clean
I want to be a hobbit too.
Jonathon details their ~15 year history in programming languages. The highlights of the history are:
- Toy programming language they wrote called Pineapple
- Work with Jason on ChaiScript
- Programming language they wrote called Minnow
- Comparison of Minnow to Go
- Quitting their job to work on Minnow for 1.5 years because he loved it so much
- Grad school research on programming languages and concepts
- Work with Chris Lattner and Doug Gregor at Apple
- Work on the inherently parallel programming language Chapel
- Implementation of concepts in Chapel
- Work as the PM for TypeScript while at Microsoft
- Work on Rust while at Mozilla
- Work on Nushell
Hearing about Jonathon’s story, career and experience was inspiring, so much so that I have listened to the podcast twice now.
Flashback from the Past
I listen to about 15 programming / technology podcasts. Without knowing that Jonathon was Jason’s cousin, I had previously listened to them on Episode 363 of The Changelog podcast, one of the other podcasts I listen to. I remember this episode vividly because I love hearing passionate people talking about what they are passionate about - and Jonathon’s passion for Nushell is palpable when they speak. If you want to hear more about Nushell, definitely check this episode out. The episode was so memorable I remember exactly where I was as I listened. I was on W Campbell Ave in the midst of a ~50km bike ride September 8, 2019, four days after the podcast came out. I was living in Silicon Valley at the time. Here is a image of the route I biked:
Lang.Next Videos
Jonathon also mentioned Lang.Next during the podcast, which I had also come across in the past. I happen to keep track of every talk / presentation / lecture I have watched and on May 1, 2019 I watched LangNext 2014 (C++, Rust, D, Go) which is just a copy of the actual talk on Channel 9 Panel: Systems Programming in 2014 and Beyond
It is a panel of four language designers:
- Bjarne Stroustrup (creator of C++)
- Andrei Alexandrescu (co-designer of D)
- Rob Pike (co-creator of Go)
- Niko Matsakis (core developer for Rust)
It is a fantastic panel. Hearing Jonathon mention the conference on this episode reminded me that going back and watching all of the Lang.Next talks was on my list of things to do to. Jonathon also mentioned on the podcast that they have given many talks, and you can find one of them: TypeScript – Supersetting JavaScript on Channel 9 from Lang.Next 2014:
Jonathon also tells an awesome story about themself, Bjarne, Niko and other Rust folks having dinner together at the conference and sharing stories. They reflect that this allowed the Rust development team to internalize some of the lessons that Bjarne shared with them that he learned from creating C++ over the previous decades. So absolutely cool to hear about that. And loved when Jonathon said:
And once he [Stroustrup] realizes that we [the Rust team] actually like C++ and that we aren’t just hear to dog on C++, we started to have this really awesome conversation about what it was like to design C++ over the years …
This echoes what I stated at the beginning of my lightning talk at Meeting C++ 2019:
Not only should we be kind to them [developers in other programming languages], you should think about learning some of these languages.
It made me so happy to hear about C++ and Rust language designers sharing stories and learning from each other. That is so awesome.
Last But Not Least
Jonathon mentioned Types and Programming Languages as a book people should read as their third book in exploring programming languages. I figure I would include it as it wasn’t in the show notes of the episode. I will also include something that was in the show notes of the episode, another one of Jonathon’s talks, entitled Growing TypeScript and Rust, sounds like a fascinating talk that I will be watching ASAP.
Thanks to Rob, Jason and Jonathon for such an awesome podcast. CppCast is one of my favorite podcasts and this is hands down one of my favorite episodes.