Testing Plugin Architectures in C#: Strategies for Extensible Systems
Testing Plugin Architectures in C#: Strategies for Extensible Systems
If you've built a testing plugin architectures in C# system, you already know what makes it powerful: plugins are discovered at runtime, loaded dynamically, and executed against a contract your host defines. What you might not have figured out yet is how to test all of that reliably.
Standard unit testing advice breaks down quickly here. You can't just instantiate your subject under test and call its methods -- not when the sy...
Take me to this post.
April 11, 2026
The Future of Everything is Lies, I Guess: Annoyances
Table of Contents
This is a long article, so I'm breaking it up into a series of posts which will be released over the next few days. You can also read the full work as a PDF or EPUB; these files will be updated as each section is released.
Introduction
Dynamics
Culture
Information Ecology
Annoyances
Psychological Hazards
Safety
Work
New Roles for Humans
Where Do We Go From Here
The latest crop of machine learning ...
Take me to this post.
April 11, 2026
When to Use Adapter Pattern in C#: Decision Guide with Examples
When to Use Adapter Pattern in C#: Decision Guide with Examples
You've got two systems that need to talk to each other, but their interfaces don't line up. Maybe it's a legacy service with method signatures that predate your current architecture. Maybe it's a third-party library that models data differently than your domain. The when to use adapter pattern in C# question comes up every time you face an interface mismatch and need a clean way to bridge the gap without rewriting either side.
This ...
Take me to this post.
April 11, 2026
The Center Has a Bias
Whenever a new technology shows up, the conversation quickly splits into camps.
There are the people who reject it outright, and there are the people who seem
to adopt it with religious enthusiasm. For more than a year now, no topic has
been more polarising than AI coding agents.
What I keep noticing is that a lot of the criticism directed at these tools is
perfectly legitimate, but it often comes from people without a meaningful amount
of direct experience with them. They are not necessarily ...
Take me to this post.
April 11, 2026
How I Made $360 by Serving Markdown to A.I. agents from My Jekyll Blog
In April 2025 I wrote Apologizing for My Obsessiveness Over Punctuation, a post about my various organizational compulsions. Near the end, almost as an aside, I mentioned that I obsessively categorize expenses in Monarch, a personal finance app, linking it with my referral code. That post earned me exactly one referral in the nine months that followed.
Then, on January 15th, 2026, I wrote Serving Markdown for AI Agents. The idea is simple: for every post on this blog, there’s now a .md version ...
Take me to this post.
April 11, 2026
Weekly Recap: Plugin Architecture, Adapter Pattern, and C# Source Generators [April 2026]
This week: Full coverage of plugin architecture in .NET lands -- AssemblyLoadContext, DI integration, lifecycle management, plugin contracts, and testing extensible systems. The adapter design pattern in C# gets the same treatment with a complete guide, step-by-step implementation, and a decision guide. The composite pattern rounds out the week with a decorator comparison, best practices, and a when-to-use breakdown. Source generator fans also get a practical testing guide and a deep dive into s...
Take me to this post.
April 11, 2026