Skip to content
Melo Podcasts Home
CategoriesLanguagesFollowing

Episode · ADSP: Algorithms + Data Structures = Programs

Episode 261: 🇳🇱 C++ Under the Sea 🇳🇱 Bernhard, Koen & C++26 Reflection!

21 Nov 2025 · 25 min

Play episode WhatsApp Download

Episode notes

In this episode, Conor and Bryce record live from C++ Under the Sea! We interview Bernhard, Koen, talk about C++26 Reflection and more! Link to Episode 261 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterAbout the Guests: Bernhard is a senior system software engineer at NVIDIA, where he extends, optimizes and maintains the CUDA Core Compute Libraries (CCC...

Transcript

Read the transcript · about 4,840 words, follows along as you listen

Bernhard Manfred Gruber:Frost has this uh very algorithmic uh oriented style of like it it works with with iterators, it composes into different algorithms, right? So like some algorithms are implemented in terms of other algorithms and it it has this nice touch, right? Whereas when you when you go into Cobb, it's just full of like C-style cars reinterpreting type LS thing, like it has like every kind of UB that you can imagine, which is which is why I think Cobb actually stands for CUDA undefined behavior, right?

Bryce:It's Cub Cub is specific to our platform, which means it's not like we NVIDIA make the platform.

Koen Poppe:Uh yeah, the the pirating uh well just I am uh now uh I have a second daughter now, and uh as as things go, I can make a lot of dad jokes now. So uh so Sean Parrot.

Conor:Congratulations. There's a a conversation to be had at a later date about API design and the importance of an ergonomic and intuitive interface. My name is Connor, and today with my co-host Bryce, we continue our conversation live from C under the sea in the Netherlands. In this episode, we chat with Bernhard, a fellow NVIDIA from Austria, Kuhn from Belgium for the third time, C 26 Reflection, and more. Oh hi. Okay.

Bernhard Manfred Gruber:Oh no, I I'm not explaining that. Because I might get it wrong. I have to check up how it works again. Uh okay, uh, my name is Bernhard. Uh, I joined NVIDIA one and a half years ago. I I I started out in COP, but since then I think I took over maintaining uh Frost as well, and I have my hands in Lipku, and I think by now I kind of do everything. Um right. He's an everything man, folks. He does everything.

Conor:Who do you like better? Cover thrust? Ooh, good question.

Bernhard Manfred Gruber:Um they have very different styles. Uh what I like about Frust, like he dodged the question, folks. Well done.

Conor:You're a future politician.

Bernhard Manfred Gruber:So so Frust has this uh very algorithmic uh oriented style of like it it works with with iterators, it composes into different algorithms, right? So like some algorithms are implemented in terms of other algorithms, and it it has this nice touch, right? Whereas when you when you go into Cobb, it's just full of like C-style cars reinterpreting type LS. Like it has like every kind of UB that you can imagine, uh which is which is why I think Cobb actually stands for CUDA undefined behavior, right?

Bryce:It's Cub Cub is specific to our platform, which means it's not like we NVIDIA make the platform, cub is the implementation, and so we're allowed to do like look, if you're within the standard library, the standard library implementer is allowed to do whatever they want. It's not UB because you're the standard library, you better not do anything that's gonna break. But Cub Cub is only runs on our platform, which and and it's provided by the vendor, which means there's no UB in Cub.

Bryce:It's all just like like the only thing that might Cub might have is some undocumented behavior about how it works. But I do think that the Cub block level primitives can be very nice to work with. They're a very nice abstraction, they're very nice on the outside, just don't you know have to look on the inside. But uh, but yeah.

Conor:What what does Cub? I mean, I that's really not what Cub stands for, right? I assume not. Yeah, CUDA unbound. Okay, Cuda unbound.

Bryce:Yes. What what what what were you say what were you saying the joke was? What do you mean? You missed the joke? Yeah, I did. What was the joke?

Bernhard Manfred Gruber:Oh, oh the joke the joke was that uh I think Cobb uh could stand for CUDA undefined behavior because it contains so much of that. But I fully agree with uh with Bryce's analysis before that because um we know the tool chain that that cob runs on, right? Like uh we we know the NVCC versions that that process cob. We know like the behavior of our compilers. So so so we have leeway in what we can write there because we know how the compiler processes and translates our code.

Bernhard Manfred Gruber:Yeah.

Bryce:And the the the biggest problem, like the biggest source of UB that we've probably had in Cub has been like initialization problems. And that's largely been requirements change. When Cub was originally written, it was largely designed to work only with plain old data types and with things that it could assume could be left uninitialized or not zero initialized because there was a cost to it. It was only later on as Cub evolved and Cub became the back end for Thrust in particular, that Cubs, that the requirements had to change and that Cub then had to really support, you know, uh arbitrary user-defined types.

Bryce:And at that point where we, you know, like all of the places where we just assumed that everything was int-like, you know, became a problem. Um or like another good example would be the fact that Cub defaults to 32-bit um indexing, which has caused, you know, some amount of pain over the years.

Bernhard Manfred Gruber:But uh like recent versions of Cub now fully support 64 uh bit uh size and offset types, or we internally choose, right? Like we check what kind of size type you pass in, we can dispatch an implementation that can handle large offsets and it will it will do an efficient thing and it will it will do a correct thing.

Bryce:Where did you uh where did you work before NVIDIA?

Conor:And wait, we've gotta let these guys finish their chicken nuggets. And Nelson too. We haven't said uh, or you both haven't said, where you're based, because we this is the first time we've ever had four Nvidia's at once. Jared, we peaked at three. And so now we've got four. But we're in the Netherlands right now. He said that's a quattro in case in case uh that's an NVIDIA joke if you missed that, folks. But yeah, tell us where you're based, because we're uh we're not in America right now.

Paul Grosse-Bley:I mean both of us are basically now the the German team at CCCL. Uh or at the no. At Cup, let's say let's say that. Um there's more Germans.

Bernhard Manfred Gruber:So so for the record, I'm based in Austria, which is uh no longer part of Germany. You know, it there have been times, but but but that that has been long ago, right? I I'm based in Austria, fully remote, uh working there for the CCCL team, maintaining COP, Frost, and Lipku. I actually do live in the countryside, like in a in a very small town, 1,700 inhabitants. I I lived in the mountains.

Bryce:The uh the sound of the music, you know, like the the woman like like dancing, singing on the hills, that's that's true.

Bernhard Manfred Gruber:What Bryce said about the sound of music is the most American thing that you could think about of Austria, but it's entirely true. Like uh like just last weekend uh we we we organized uh the baptism of my son and we went there in Lederhosen and and those uh shirts, right? Like as you would see in in the movies. So that's not a lie. I actually watched the movie with my wife a couple years ago because people told for the first time, right? Because it's not a thing that we Austrians know a lot about, right?

Bernhard Manfred Gruber:There are better movies to watch. That is the only thing that's exactly absolutely. So so we figured we have to finally watch that. And it's actually a nice movie, it's well done, and it it shows beautiful pictures of of my country.

Conor:There's that one song where she's spinning around on the hilltop. Very beautiful.

Bryce:No, he's he's never uh unfortunately no, I'm I'm not a good singer.

Bernhard Manfred Gruber:And uh I also can't do like like traditional dances or uh like mountain communication, you know, with big horns or something like that. No, no, I'm not I'm not skilled in this.

Conor:Here's a here's a little ADSP uh, you know, inside knowledge. I mean Bryce probably doesn't know this either. Uh I have three sisters, and when I was younger, my mother, a massive sound of music fan, massive musical fan, she would torture the four children that she had by making us perform songs from the sound of music. So we would have we would all have to line up in the living room and sing her favorite was the the final song where they do the goodbyes in different languages.

Conor:Adieu to you and you and you and you.

Sound of Music (Clip):So long and well, I'll be just saying adieu. Adieu, adieu to you and you and you.

Bryce:And then you'd have to like flip and flat and like I'm pretty sure that's either child abuse or forbidden by the Geneva Convention.

Conor:I uh I appreciate that. Uh that I feel seen. Thank you, Bryce. Uh, because we all didn't like it. And uh my my mother, I I love her, I love you, mom. You're not listening to this because I know you don't find this podcast interesting. But if you ha have some for some reason end up listening to this, yeah, we never liked it, and we all you told us that we had to do it as your children. Uh but it wasn't really. Alright, alright, that was the question that uh initially was asked before I interrupted to say where are you guys based?

Conor:Uh so where did you work before you were at NVIDIA?

Bernhard Manfred Gruber:Um right, so uh before I joined NVIDIA, I I did a PhD at at CERN, which is a particle physics facility. It's actually the largest. It it has a name usually. It's it's in Switzerland in Geneva, and we have we have huge machineries. Like we have an underground particle collider that's 27 kilometers in in circumference. Uh massive detectors there, like tens of thousands of tons of underground silicon that just measure particle collisions, and it's full of radiation and high voltage equipment, liquid helium everywhere, and it's it's just it's just awesome.

Bryce:It was safer than working on Cub.

Bernhard Manfred Gruber:That's a good question. I think we had uh we we we also had uh like a good share of of undefined behavior there. Um may maybe maybe for in the defense of CERN, like you had to do appropriate trainings before you could go into dangerous areas. Whether when I started out at Nvidia, they immediately left me into the code base, uh completely untrained and unprepared uh of the horrors that I would see there.

Conor:So how did you end up at NVIDIA? Because Paul was saying that he was using CCCL before, he was a contributor, and then he he found his way. What was were you a similar path, or uh you know CERN just gets you a job at NVIDIA?

Bernhard Manfred Gruber:Like what uh oh no, um so so so many years back, um I I spared a whole life story, right? But I'm doing C for quite a long time and uh around 2019 I attended my first C comedy meeting. And um I thought you said comedy for a second. Comedy! What am I meaning to be? They are may maybe that wasn't a misspell, right? So I I went to a comedy meeting and um I I f I I I fell in love with the language before. I really liked it. I I kinda like grew into the C community.

Bernhard Manfred Gruber:And when I was at CERN I further developed my skills in C and eventually kind of like grew into high performance computing where we also did some GP GPU computing. And when the PhD kinda ended, you know, you ask yourself like what job can I imagine? What what company could I see myself working for? I I knew I didn't want to continue in academia, so I wondered what kind of company you know is invested in the C community, cares about the language, probably does GPU and care about performance, and can maybe employ me in Austria, fully remote, because I wanted to move back from Switzerland because uh my wife and me were about to start a family, and that didn't leave a lot of options there, right?

Bernhard Manfred Gruber:So I figured Nvidia was a natural choice that could combine all these interests and and provide a nice place to work for.

Bryce:Didn't I uh we we met for like the second or third time when I came to CERN to give a talk, and then I was like, we gotta we gotta hire this guy. And uh then I was like, I I just like poked people and the podcast and you mentioned that you had gone to CERN? Yes, that was, yeah.

Conor:And I I just uh well Bernhard gave you that means you've worked here for less than five years, probably like three or four.

Bryce:Yeah, probably.

Bernhard Manfred Gruber:Is that accurate? Oh, I started in a video one and a half years ago. Yeah. Yeah, yeah, yeah.

Bryce:So so there's actually there's an even better part of the story, which is that when I went to CERN, um I went there to give a talk, and then uh the like some group of people at CERN organized, I think an intervention is probably the best way to describe it, where they took me into a room with a bunch of different CERN users and they were like, hey, we really care about reflection. Can you get on board with caring about reflection too? And uh I uh and like everybody gave a little presentation about like how they were using reflection, why reflection was important, and I remember you gave a presentation.

Bryce:Yours was everybody's presentation was good, yours was better than everybody else's. And uh I was and I was I actually was convinced by that meeting, and I went out of that meeting, and I went back and I went to all the C powers that be at NVIDIA, and I was like, reflection, we gotta make it a priority. We should uh we should focus some effort on it. And uh yeah, so so you you convinced me that we should care about reflection, and I was like, and we should also hire Bernard because he's he's really good.

Bryce:We gotta have him.

Conor:Before we hand the mic back to Bernard, this is real bad because what a lot of listeners just heard is if you invite Bryce to your corporation, you can then potentially get a job at an video.

Bryce:I mean, well, if you can, if you can, if you invite me to come to your corporation and then you ambush me and convince Okay, they didn't ambush me to be fair. I was very happy to meet with them. But if you stage an intervention and try to convince if you convince me of something, I mean that's pretty you make a you make a compelling presentation. A presentation is the way to my heart. A good slide deck is the way to my heart, I will tell you that.

Bryce:Or something like that.

Bernhard Manfred Gruber:So uh I have I have like an awful lot of thoughts in my in my head. Now I know one that like whether I should like publicly speak about it, but since uh like uh reflection finally got standardized in in C26, I think I can let Bryce in on some of the background of why we locked him up in this room. And the backstory was that CERN founded this open source program office and he wanted to have like a popular figure from the C community to speak there.

Bernhard Manfred Gruber:But CERN also has a very big interest in reflection as a feature because uh CERN develops this C interpreter, and that kind of like depends on generating meta information on C code. And CERN is actually pushing for reflection as a C feature, I think as early as 2005. Like some people showed me papers like before C11 where CERN was proposing reflection. So uh when one of my supervisors kind of got in contact with Bryce to have him speak at that event, I already made the decision that after the PhD I'm gonna I'm gonna apply it in Nvidia, and I told him.

Bernhard Manfred Gruber:And my supervisor told me, look, we're gonna have Bryce here, and one of our priorities would be to just make Bryce believe that reflection is an absolute killer feature, and he should make sure that every power that NVIDIA has should just push for reflection to get into the standard. And by the way, Bernhard, if you want to impress Bryce, maybe he can put in a good word to get higher than NVIDIA. So you do the presentation in that room in front of Bryce and you make a good impression and convince Bryce that we want to have reflection in the standard.

Bernhard Manfred Gruber:And boy, I was so nervous, and I couldn't sleep for weeks because I know my whole life and the life of CERN depended on the 20-minute presentation. I I was scared shit. Sorry, shouldn't say that, right?

Conor:How long has the explicit tag been put on our podcast?

Bryce:So one of the one of the things that actually came out of that presentation indirectly is that the reflection suffered, I think, in some of the earlier drafts from having not the strongest examples. A lot of people are making fun of it as like, oh, you can't do anything with this flection, you can just do like enum to string. And one of the reasons is that like the current reflection facility, you don't have a way to inject functions yet. Like, right?

Bryce:It's a static reflection only. You don't have a way to like introduce new functions. So it does to some degree limit what you can do. But there was a very simple example that that when one of the uses that y'all had at CERN was using reflection for reordering uh the fields of like a struct, like packing or doing like array of struct destructive array. And that motive that example I found very, very motivating. And so I put that into a couple talks, and then I convinced the reflection authors, I think through Andre, that they should put it into their paper.

Bryce:And I would like to believe that that example is one of the best motivating examples. And uh one of the reasons why I'd like to think that's one of the reasons why we got reflection. What do you mean? That is a great, it is a great or origin story, a great NVIDIA origin story for uh for Brian. Yeah, yeah. That is fantastic. Yeah, yeah. Alright, who should uh who should we have to be able to get the right?

Conor:We should get Kuhn on the mic here just for a sec, because we mentioned your name earlier, and Kuhn is the Genesis, is the reason. You were the one that came up with Sean Parrot.

Bryce:It might be like you're you're gonna get Sean Parrot t-shirts. We're gonna have we are going to make, we're gonna make I've I you know, I I told Connor a couple days ago I was thinking about making ADSP t-shirts, but you know, just a t-shirt that says ADSP, I didn't feel like it'd be enough, but we're gonna get t-shirts that have the parrot parrot on it, but with Sean's face.

Conor:Here's a this is coming from the folks that took five years to get you stickers. And it's not like we had the idea three months ago and it took us three months. We've been talking about stickers for like four of the five years of this podcast.

Bryce:I will execute quicker on this.

Conor:Anyways, uh intro well, I mean we technically we don't need to introduce Koon because you were on the podcast almost a year ago or two years ago? Only one time, only one year. You why did you do two? Oh, for two episodes. That's right, because you were at the table and that got dice, sliced and diced up, as we do on ADSP, because otherwise it wouldn't be a weekly podcast. What?

Bryce:There were two recordings? Yeah, there were two recordings last year.

Conor:Were there two recordings? We recorded twice last year? Or here, explain. Take the mic and uh introduce yourself in case if we have some new listeners since a year ago. Shame on you for not going back to the backlog and listening all 200 episodes since you started listening. We need those, and also too, right before uh we give Kuhn the mic, we've recently discovered that like the Steve Jobs saved Sean Perrin episode is like the sixth most popular Sean episode, and like I don't even think it's in the top 100 episodes.

Conor:If we don't ask for much, listeners, we don't ask for much. What I'm asking is that you all go to your podcast player, you don't have to listen to it, just go back, download it from the archive, and then erase it and market as played. We need it to be in like the top 10 because it's it's not it's not okay that it's uh not in the top 100. Anyways, over to Kuhn. Introduce yourself for those that didn't listen a year ago, and maybe tell us about this year's, you know, C under the C experience, and also how did Sean Parrot come to you?

Conor:Because you're now a part, you were already a part of the lore of ADSP, but now you're really gonna be a part of the lore because Sean Parrot, that's brilliant.

Koen Poppe:Okay, so uh yes, my name is Kuhn and I'm from Belgium, and uh well this is actually my third episode because in the first episode I was in, it was actually a recording by Tristan. I had a question uh on CPP on sea last year.

Conor:Oh yes, yes, my memory is so bad that yes, uh we had the episode, I think it was at CPP North, where you had given, or you didn't give. Tristan whipped out his cell phone, recorded your question. I believe it was about unique count and a parallel implementation of that and a possibility of the implementation. He played that for me at CPP North, and then we responded to that, and then we met you here later at last year's edition. I totally had forgotten that backstory.

Conor:It was uh so when you said three, it wasn't two times at C under the sea, it was one time at C under the sea. This is now the second and third overall because Tristan's recording of your voice at CPP North. Yeah, yeah, absolutely. I mean, you're very much a part of the lore now. You've technically recorded at two different conferences. How many people can we say that about?

Bryce:I do not know.

Conor:You would know, you have the data. I mean, basically just speakers, I think, because they're the folks that go to different conferences.

Bryce:Uh anyways, back to you. What did you think about this conference? And uh, you got any you got any new deeply insightful questions for us about the podcast? Feedback, complaints, grievances?

Conor:Putting Kuhn on the spot.

Bryce:Yes.

Koen Poppe:Um I don't have any questions for the moment, but uh uh yeah, the the pirate thing uh well just I am uh now uh I have a second daughter now, and uh as as things go I can make a lot of dad jokes now. So uh so Sean Parrot congratulations. Also, is this a recent uh second daughter or uh February, so congratulations, congratulations. So that's why I'm making a lot of uh dad jokes now, and uh that was one of them that came to mind.

Bryce:And uh what what did you think about the conference this year? I always learned that.

Koen Poppe:Uh I learned a lot about uh CUDA as well, so that was great to get some more insight on that. And uh well, hearing Sean speak, of course, has also uh has been a highlight, and uh getting to know the parrot uh library. Um it's funny because some of the things I already also started implementing in our uh library um just because uh of the ease of use to have a simple uh function to call to have a sum instead of having to call STD accumulate and so on.

Koen Poppe:So having this simple interfaces is something that really can help for colleagues and just who have. Less code to make less mistakes, so that's really nice to see.

Conor:Uh I mean this this is amazing, folks. Dad jokes is what brought Sean Parrot into existence. And you gotta understand, is this is gonna be a part of our lives now for years to come. I mean, uh apparently there may be t-shirts being made. Uh we had to we Sean is here, he gave a keynote, the opening keynote of the conference, and we got approval from him because we don't want to abuse Sean's name like that, but he thought it was hilarious. And yeah, so now it's a part of our lives.

Conor:Dad jokes brought this name to you. And yeah, the.sum, I mean, there's a a conversation to be had at a later date about API design and the importance of an ergonomic and intuitive interface. Uh, because I've had conversations with folks that don't necessarily think that that's enough to be a compelling thing, and that's not all the parrot is.

Bryce:But I I the that people believe that a better interface is not sufficient for for a library to succeed?

Conor:Uh a little bit, yeah. I mean with some asterisk, but you know, you always talk about the 10x difference to switch to a language. I don't know what the multiplier that you need to switch to a library, but I've heard the quote if it's just an improvement, an interface change, that's not enough.

Bryce:But it's but parrot is not. What what Parrot the the key selling feature of Parrot is that Parrot is maximally lazy. Uh and that means that Parrot is asynchronous by default and does fusion by default, uh, both of which are the huge pain points of thrust today. So the the the major pain points of thrust are overcome almost immediately by Parrot.

Conor:Cheers, Sean, but wait, well let's say goodbye to Kuhn. Thank you so much. This is your third appearance. There's gotta be a fourth, fifth, and sixth now down the road. And and we're about to talk to Sean Parent, which uh, you know, it's like right in the middle, is Sean Parrot. Yeah, yeah. So the name of the Parrot, which is the graphic signifier, not logo, of uh my library, has now been named by Kuhn because he has two daughters, a second daughter recently.

Bryce:We should explain. NVIDIA has one team, one org, and one logo. So there are no other logos. Some things do have graphic signifiers.

Conor:I did on Wednesday, the day before this library was open sport open source, I did spend an hour trying to get the icon of my library to be the parrot.

Bernhard Manfred Gruber:Graphic signifier.

Conor:Uh no, the the icon of the GitHub repo. Ah. Uh, but it is within the NV Labs organization, and I determined after three different LLMs, an hour of like being gaslit, that's like, oh, you just need to change the markdown, blah blah blah. If the org sets it to be so that you cannot change the icon, you cannot change the icon. Anyways, thank you, Kun, for being on. Uh, thank you for Sean Parrot. We hope, I don't know, are we gonna be back next year?

Conor:Maybe. If we're back next year, hopefully you'll be here. And uh yeah, thanks for coming on. Yeah, thank you for having me. All right. And with that, we will transition to not Sean Parrot, but Sean Parent. Be sure to check these show notes either in your podcast app or at adspthepodcast.com for links to anything we mentioned in today's episode, as well as a link to a GitHub discussion where you can leave thoughts, comments, and questions. Thanks for listening.

Conor:We hope you enjoyed, and have a great day.

Bryce:Low quality, high quality, that is the tagline of our podcast.

Conor:It's not the tagline. Our tagline is chaos with sprinkles of information.

Transcript supplied by the publisher with the episode.

Podcast

ADSP: Algorithms + Data Structures = Programs

Conor Hoekstra, Bryce Adelstein Lelbach & Ben Deane · Tech & Science · English

Deep dives into algorithms, data structures and C++ — exploring the STL, functional programming and computer science fundamentals with three experienced engineers.

More from ADSP: Algorithms + Data Structures = Programs All episodes →

  1. 26 Dec 2025 · 1 hr 10 min

    Episode 266: Holiday Special 🎄 CppCon, NDC Toronto, C++Now, Teletext, Bamboozle & More!

    In this episode, Conor and Ben chat about CppCon, NDC Toronto, C++Now, Teletext, Bamboozle & more! Link to Episode 266 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: LinkTree / BioBen Deane: Twitter | BlueSkyShow Notes Date Recorded: 2025-12-22 Date Released: 2025-12-26 Bamboozle!Bamboozle! QuizCeefaxTeletextNDC TorontoC++NowCppCon 2025 ScheduleAPI Structure and Technique: Learnings from Code Review - Ben Dea...

  2. 19 Dec 2025 · 28 min

    Episode 265: 🇦🇺 YOW! Live 🇦🇺 Kevlin Henney & Damian Maclennan

    In this episode, Conor chats with Kevlin Henney about the past, present and future of programming languages and with Damian Maclennan about YOW! 2025! Link to Episode 265 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: LinkTree / BioAbout the Guests: Kevlin Henney is an independent consultant, speaker, writer and trainer. His software development interests are in programming, practice and people. He has been a col...

  3. 12 Dec 2025 · 35 min

    Episode 264: 🇦🇺 Aphantasia, Anendophasia & the Future with Kevlin Henney

    In this episode, Conor interviews Kevlin Henney about aphantasia, anendophasia, synesthesia, future and more! Link to Episode 264 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: LinkTree / BioAbout the Guest: Kevlin Henney is an independent consultant, speaker, writer and trainer. His software development interests are in programming, practice and people. He has been a columnist for various magazines and websites....

  4. 5 Dec 2025 · 42 min

    Episode 263: 🇳🇱 The Sean Parent Origin Story

    In this episode, Conor and Bryce interview Sean Parent about the origin story of his career in software engineering! Link to Episode 263 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterAbout the Guest: Sean Parent is a senior principal scientist and software architect managing Adobe's Software Technology Lab. Sean first joined Adobe in 1993 working on Pho...

  5. 28 Nov 2025 · 37 min

    Episode 262: 🇳🇱 Chaos with Sean Parent! Bikes, Buses, Waffles & More!

    In this episode, Conor and Bryce interview Sean Parent about generic programming and there is much chaos! Link to Episode 262 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterAbout the Guest: Sean Parent is a senior principal scientist and software architect managing Adobe's Software Technology Lab. Sean first joined Adobe in 1993 working on Photoshop and ...

  6. 14 Nov 2025 · 24 min

    Episode 260: 🇳🇱 C++ Under the Sea 🇳🇱 Ray, Paul, Parrot & Scanman!

    In this episode, Conor and Bryce record live from C++ Under the Sea! We interview Ray and Paul from NVIDIA, talk about Parrot, scans and more! Link to Episode 260 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterAbout the Guests: Ray is a Senior Systems Software Engineer at NVIDIA since 2022. Studied Software Engineering at the University of Amsterdam. Fou...

  7. 7 Nov 2025 · 47 min

    Episode 259: 🇳🇴 NDC TechTown 🇳🇴 Vittorio Romeo & JF Bastien

    In this episode, Conor and Bryce record live from NDC TechTown in Norway! We interview Vittorio Romeo and JF Bastien about C++, training, their talks and more! Link to Episode 259 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterAbout the Guests: Vittorio is a passionate C++ expert with over a decade of professional and personal experience. His expertise c...

  8. 31 Oct 2025 · 17 min

    Episode 258: 🇳🇴 An Algorithm Taxonomy (Serial, Parallel, Cooperative)

    In this episode, Conor and Bryce record live from Norway! Bryce explains the taxonomy of algorithms: serial, parallel, and cooperative! Link to Episode 258 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterDate Recorded: 2025-09-23 Date Released: 2025-10-31 MPIIPCRow-wise Softmax in TritonRow-wise Softmax in ParrotCCCL - Parallel and Cooperative AlgorithmsI...

  9. 24 Oct 2025 · 35 min

    Episode 257: 🇳🇴 Live from Norway! Replicate, Scatter, Gather & RLD (Part 3)

    In this episode, Conor and Bryce record live from Norway! They continue their chat about the replicate, scatter, gather and run length decode algorithms! Link to Episode 257 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterDate Recorded: 2025-09-23 Date Released: 2025-10-24 thrust::gatherthrust::scatterthrust::permutation_iteratorthrust::counting_iteratort...

  10. 17 Oct 2025 · 41 min

    Episode 256: 🇩🇰 Algorithms: Replicate, Scatter, Gather & RLD (Part 2)

    In this episode, Conor and Bryce record live from Denmark! They talk about the replicate, scatter, gather and run length decode algorithms! Link to Episode 256 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)Socials ADSP: The Podcast: TwitterConor Hoekstra: Twitter | BlueSky | MastodonBryce Adelstein Lelbach: TwitterDate Recorded: 2025-09-20 Date Released: 2025-10-17 thrust::gatherthrust::scatterthrust::permutation_iteratorthrust::counting_iteratorthrust::sequenc...

Take it with you

The Melo app keeps playing with the screen off, works in the car and on your watch, wakes you to your station, and browses the whole catalogue offline. Free, no ads, no account.

Get it on Google Play