This post shows how you can debug code that you didn't write and don't have the source code for.
What do you do when upgrading Windows makes your code compile a lot slower? This, of course.
Every year we get told that 'YYYY' in date formats is bad. But why? And just how bad is it? (Spoiler: very.)
In this post, I go deeper into the world's strangest logging implementation, and make it work with Notepad++ and Notepad2.
In this post, I take possibly the world's strangest logging implementation, and rewrite it for .NET Core.
Did you know that you can control serial COM ports from a web page? Me neither. Here's what I've learned about it.
How does a ZIP file work? And how do you make really, really, _really_ big ones? Read this post to find out.
When using Packer to build virtual machines, sometimes I just want to pause it and poke around. Here's how I achieve that.
I got into the GitHub Actions beta! Here's what I've learned so far.
If you're sick of System.IO.FileLoadExceptions, you've come to the right place!
In ASP.NET Core, you can write custom formatters to serialize or deserialize objects from/into request bodies. But how do you pick one without a Content-Type?
.NET today is no longer a walled-off Microsoft-only environment. This post explores how it has evolved and how you can evolve your software with it.
Do you think all HTTP headers are Train-Cased-Like-This? If so, you're in for a surprise.
The more "smart" features added to a car, the more distracting and dangerous it can be.
Here's how to do it on Linux, macOS and Windows. No surprises, Windows is by far the most complex.
How do you create an immutable tree structure? The Roslyn compiler developers figured it out, and in this post I break down what they did.
It can be hard to make sense of the increasing complexity found in .NET stack traces. Once you strip out the noise, it becomes understandable.
How do you debug the .NET Core base class libraries on a Mac? Like this.
The good news is that you can now make HTTP/2 requests from Windows. The bad news is that it needs a blog post to explain it.
There's a handful of race conditions you can hit when running child processes. Here is how to avoid them.