Latest Posts

Base64 Encoding With C#

Base64 Encoding With C#

I was working with the Spotify API and reading through the authorization documentation. Like most APIs, we need to securely access the service, authorized as the client application or on behalf of a user. We’ll need to deal with secret...

Rethinking OSS Attribution In .NET

Rethinking OSS Attribution In .NET

The other day I was playing a Castlevania on my RetroPie. In between the doses of pure childhood nostalgia, I found myself scrolling through the Raspberry Pi menus to find an open-source (OSS) attribution display menu. In front of me...

Entity Framework Core 5 Interceptors

Entity Framework Core 5 Interceptors

In previous non-core versions of Entity Framework (EF), it was possible to intercept calls to and from the database, but it’s wasn’t a feature many would classify under “first-class support”. Thankfully the community stepped in at the time to fill...

Capitalize First Letter Of Words With C#

Capitalize First Letter Of Words With C#

Presentation is an essential part of the language, let alone a software application. How we utilize script can make the difference between an enjoyable user experience or an incomprehensible mess. As developers, we likely spend more time formatting strings than...

Play Audio Files With .NET

Play Audio Files With .NET

I’ve been on a spiritual search for a cross-platform solution that allows developers to play and capture audio using .NET 5. It’s a journey filled with many highs and lows, mostly cursing at my screen and ruing the day I...

Avoid C# 9 Record Gotchas

Avoid C# 9 Record Gotchas

C# is quickly evolving, and it may be overwhelming to keep up with every new feature. C# 9 has been out for over a month now, and I thought it would be a good idea to consolidate my thoughts on...

C# 9 Covariant Return Types

C# 9 Covariant Return Types

I’m sitting here reading through the “What’s New in C#9” blog post, and one of the listed additions to the language is Covariant return types. It sounds like an exciting feature, but what does that mean for my day-to-day development...