

ADSP: Algorithms + Data Structures = Programs
Conor Hoekstra, Bryce Adelstein Lelbach & Ben Deane
The Algorithms + Data Structures = Programs Podcast (aka ADSP: The Podcast) is a programming podcast hosted by two NVIDIA software engineers that focuses on the C++ and Rust programming languages. Topics discussed include algorithms, data structures, programming languages, latest news in tech and more. The podcast was initially inspired by Magic Read Along. Feel free to follow us on Twitter at @adspthepodcast.
Episodes
Mentioned books

Jun 18, 2021 • 41min
Episode 30: Google, Interviews, Leadership & More (Part 2)
In this episode, Conor and Bryce talk to Chandler and Patricia. Chandler finishes telling us about his career path leading up to Google and then we talk about interviewing, leadership and much more.About the Guests:Chandler Carruth leads the C++, Clang, and LLVM teams at Google, building a better language with better diagnostics, tools, compilers, optimizers, etc. Previously, he worked on several pieces of Google’s distributed build system. He makes guest appearances helping to maintain a few core C++ libraries across Google’s codebase, and is active in the LLVM and Clang open source communities. He received his M.S. and B.S. in Computer Science from Wake Forest University, but disavows all knowledge of the contents of his Master’s thesis. He is regularly found drinking Cherry Coke Zero in the daytime and pontificating over a single malt scotch in the evening.Patricia Aas is a C++ programmer with a “thing for building browsers”. She works for a company she co-founded called TurtleSec where she teaches courses in Secure Coding in C++ and does consulting and contracting. She has been a professional programmer for 16 years, and started off her career working on the original Opera browser. Since then she has made embedded products at Cisco and another browser at Vivaldi. When she has time she works on her own open source (pre-alpha) Chromium/Blink+Qt based browser called TurtleBrowser.Date Recorded: 2021-06-05Date Released: 2021-06-18ADSP Episode 29: From Papa John’s to Google (Part 1)WgetLLVMHow Do You Decide Whether an Individual Contributor (IC) or Engineering Manager Role is Right for You?GCC CompilerClang CompilerISO C++COBOLIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Jun 11, 2021 • 41min
Episode 29: From Papa John's to Google (Part 1)
In this episode, Conor and Bryce talk to Chandler and Patricia and Chandler tells us about his career path leading up to Google.About the Guests:Chandler Carruth leads the C++, Clang, and LLVM teams at Google, building a better language with better diagnostics, tools, compilers, optimizers, etc. Previously, he worked on several pieces of Google’s distributed build system. He makes guest appearances helping to maintain a few core C++ libraries across Google’s codebase, and is active in the LLVM and Clang open source communities. He received his M.S. and B.S. in Computer Science from Wake Forest University, but disavows all knowledge of the contents of his Master’s thesis. He is regularly found drinking Cherry Coke Zero in the daytime and pontificating over a single malt scotch in the evening.Patricia Aas is a C++ programmer with a “thing for building browsers”. She works for a company she co-founded called TurtleSec where she teaches courses in Secure Coding in C++ and does consulting and contracting. She has been a professional programmer for 16 years, and started off her career working on the original Opera browser. Since then she has made embedded products at Cisco and another browser at Vivaldi. When she has time she works on her own open source (pre-alpha) Chromium/Blink+Qt based browser called TurtleBrowser.Date Recorded: 2021-06-05Date Released: 2021-06-11ADSP Episode 28: Steve Jobs & Sean ParentPapa John’sSilicon Valley TV ShowLinux WineTransgamingLLVMIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Jun 4, 2021 • 34min
Episode 28: Steve Jobs & Sean Parent
In this episode, Conor and Bryce talk to Sean Parent about some of his Steve Jobs stories.About the Guest:Sean Parent is a principal scientist and software architect for Adobe Photoshop. Sean has been at Adobe since 1993 when he joined as a senior engineer working on Photoshop and later managed Adobe’s Software Technology Lab. In 2009 Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993 Sean worked at Apple, where he was part of the system software team that developed the technologies allowing Apple’s successful transition to PowerPC.Date Recorded: 2021-05-19Date Released: 2021-06-04Apple Rhapsody OSNeXT IncAdobeSteve JobsJohn WarnockMacOSXGreg Gilley Adobe Demo at WWDC 1998MetrowerksIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

May 28, 2021 • 22min
Episode 27: MacHack & Apple with Sean Parent
In this episode, Conor and Bryce talk to Sean Parent about MacHack and how he got hired at Apple.About the Guest:Sean Parent is a principal scientist and software architect for Adobe Photoshop. Sean has been at Adobe since 1993 when he joined as a senior engineer working on Photoshop and later managed Adobe’s Software Technology Lab. In 2009 Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993 Sean worked at Apple, where he was part of the system software team that developed the technologies allowing Apple’s successful transition to PowerPC.Date Recorded: 2021-05-19Date Released: 2021-05-28Orange MicroMacHackMacHack Annual Report ‘88Ted NelsonProject XanaduMacsBugQuickDraw GXSkia: The 2D Graphics LibraryWebKitIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

May 21, 2021 • 29min
Episode 26: Sean Parent on Slides Decks, UI & More
In this episode, Conor and Bryce talk to Sean Parent about a plethora of topics including slides, UI and more.About the Guest:Sean Parent is a principal scientist and software architect for Adobe Photoshop. Sean has been at Adobe since 1993 when he joined as a senior engineer working on Photoshop and later managed Adobe’s Software Technology Lab. In 2009 Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993 Sean worked at Apple, where he was part of the system software team that developed the technologies allowing Apple’s successful transition to PowerPC.Date Recorded: 2021-05-19Date Released: 2021-05-21Sean Parents Paper: P2345 Relaxing Requirements of Moved-From ObjectsGoingNative 2013 C++ Seasoning - Sean ParentSean McQuillan - Launching Into CoroutinesReveal JSJupiter Notebooksxeus-cling Jupiter kernel for C++All PowerPoint ShortcutTools 3.0 Keyboard ShortcutsGreat Impractical Ideas in Computer Science: PowerPoint ProgrammingCppCon 2019: Sean Parent “Better Code: Relationships”ASL Eve Layout EngineASL I/O ManipulatorsC++20 std::formatIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

May 14, 2021 • 1h 4min
Episode 25: The Lost Reduction
In this episode, Conor and Bryce talk about maximum consecutive ones and a missing reduction algorithm.Date Recorded: 2021-05-12Date Released: 2021-05-14Godbolt SolutionThrust and the C++ Standard Algorithms - Conor Hoekstra - GTC 2021ADSP Episode 20: GTC 2021 Preview & Thrust AlgorithmsMax Consecutive Ones Leetcode Problemthrust::reducethrust::count_ifthrust::transform_reducestd::reducestd::count_ifstd::transform_reduceC++Now 2019: Conor Hoekstra “Algorithm Intuition”Python NumPyranges::fold ISO C++ PaperHaskell’s foldlHaskell’s foldl1Intro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

May 7, 2021 • 1h 4min
Episode 24: C++Now 2021 with Ben Deane & Tony Van Eerd
In this episode, Conor has a conversation with Ben Deane and Tony Van Eerd while at C++Now 2021.About the Guests:For Ben Deane, C++ wasn’t even among the first 10 languages that he learned on his programming journey, but it’s been the one that has paid the bills for the last 20-odd years. He spent most of that time in the games industry; many of the games he worked on used to be fondly remembered but now he’s accepted that they are probably mostly forgotten. These days he works in the finance industry writing high-frequency trading platforms in the most modern C++ that compilers can support.In his spare time he watches a lot of YouTube’s educational sector, practices the Japanese art of tsundoku, reads about the history of programming, avoids doing DIY, and surprises his wife by waking in the middle of the night yelling, “of course, it’s a monad!” before going back to sleep and dreaming of algorithms.Tony Van Eerd has been coding for well over 25 years, and hopefully coding well for most of that. Previously at Inscriber, Adobe, and BlackBerry, he now enables Painting with Light at Christie Digital. He is on the C++ Committee. He is a Ninja and a Jedi.Show NotesDate Recorded: 2021-05-06Date Released: 2021-05-07C++Now 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”C++Now 2017: Ben Deane & Jason Turner “constexpr ALL the things!”Conor Hoekstra — ITM: My least favorite anti-patternFunctional C++ for Fun and Profit by Phil NashYOW! 2013 Kevlin Henney - The SOLID Design Principles DeconstructedBreaking Dependencies: The SOLID Principles - Klaus Iglberger - CppCon 2020SOLID Revisited: The State of the Matter - Phil Nash [ ACCU 2021 ]C++Now 2017: Tony Van Eerd “Postmodern C++”C++Now 2018: Tony Van Eerd “Words of Wisdom”One Letter Programming LanguagesC++Now 2019: Conor Hoekstra “Algorithm Intuition”Simple Made Easy 2012 - Rich HickeySlow Coding - Ben Deane; A View to a Thing - Jason Turner - 2020-10-11The larger the island of knowledge, the longer the shoreline of wonder.LadyBug PodcastIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Apr 30, 2021 • 42min
Episode 23: Algorithms: Anamorphisms!
In this episode, Bryce and Conor talk about a class of algorithms called anamorphisms (and much more).Date Recorded: 2021-04-17Date Released: 2021-04-30Tristan Brindle’s TweetTristan’s flow libraryCatamorphisms wikiAnamorphisms wikiHaskell’s groupHaskell’s groupByC++20 std::views::splitRange-v3 slidingRange-v3 chunkRange-v3 group_byAPL stencil operator (⌺)C++ std::adjacent_findC++ std::adjacent_differencethrust::reduce_by_keythrust::unique_by_keythrust::sort_by_keyHaskell’s on (PSI combinator)APL over operator (⍥)Cat & Mouse example in APLcub::DeviceRunLengthEncodeIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Apr 23, 2021 • 44min
Episode 22: Our Favorite Tech TV Shows
In this episode, Bryce and Conor talk about their favorite tech TV shows and more.Date Recorded: 2021-04-17Date Released: 2021-04-23The Marvelous Mrs. MaiselGilmore GirlsConor’s Muffin TweetSilicon ValleyHalt and Catch FireMr. RobotDevsParcs & RecParcs & Rec Cones of Dunshire SceneBlack MirrorAltered CarbonSense8FireflyStargateWestWorldFuturamaFuturama - S03E20 - GodfellasIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Apr 16, 2021 • 42min
Episode 21: Galaxy Brain Programming Languages
In this episode, Bryce and Conor talk about galaxy brain programming languages and programming paradigms.Date Recorded: 2021-04-03Date Released: 2021-04-16Galaxy Brain Programming Languages blog postFour Languages from Forty Years Ago - Scott WlaschinPower of Composition - Scott WlaschinCppCast Episode 242 is AWESOME! (first code_report blog post)Intro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8


