The .NET Core Podcast
Comparers with Stephen Cleary
This episode is sponsored in part by dotConnect by Devart. Whether you're a developer or a business owner, dotConnect has the database integration tools you need to succeed.
Remember: you can also always follow the show on Twitter @dotnetcoreshow, and the shows host on Twitter @podcasterJay or visit our Contact page.
Welcome to season 5 of the award-winning .NET Core Podcast! Check that link for proof.
Hello everyone and welcome to THE .NET Core Podcast. An award-winning podcast where we reach into the core of the .NET technology stack and, with the help of the .NET community, present you with the information that you need in order to grok the many moving parts of one of the biggest cross-platform, multi-application frameworks on the planet.
I am your host, Jamie "GaProgMan" Taylor. In this episode, I talked with Stephen Cleary about his Comparers library and how comparison and equality of objects in your code base mean different things to different people. For instance, one block of code may view equality as two different object instances with the same ID field, and a different block of code may view equality as a combination of other properties being equal. It's all different for different people, for different consumers, right.
We also talk about the importance of unit testing in the comparers library and how writing these unit tests has sort of unearthed some interesting corner cases in the .NET BCL. Along the way, we discuss our opinions and guesswork regarding a potential corner case in the .NET BCL. But please do remember that neither Stephen nor myself actually work for Microsoft or indeed were involved in writing the original BCL. As such, our opinions and guesswork are just that: guesswork and opinions.
The full show notes, including links to some of the things we discussed and a full transcription of this episode, can be found at https://dotnetcore.show/episode-119-comparers-with-stephen-clearyUseful Links from the episode:
- The .NET Core Podcast Discord Server
- Comparers
- The Spaceship operator
- AsyncEx library
- SemaphoreSlim
- video series on YouTube on TCP/IP protocol design
- Performance Improvements in .NET 7
- Flight 68k
- Don't repeat yourself (DRY)
- HashCode
- C# language repo
- Stephen Clary on GitHub
- stephencleary.com
- Cleary Coding
- Steve Cleary on Twitter
Remember to rate and review the show on Apple Podcasts, Podchaser, or wherever you find your podcasts, this will help the show's audience grow. Or you can just share the show with a friend.
And don't forget to reach out via our Contact page. We're very interested in your opinion of the show, so please get in touch.
You can support the show by making a monthly donation on the show's Patreon page at: https://www.patreon.com/TheDotNetCorePodcast