I went quiet on the blog for a month because I was building this. Thermalith is an open-source desktop label designer and driver for NIIMBOT thermal printers: local-first, no account, no cloud, prints over USB or Bluetooth. Cross-platform on .NET 10 and Avalonia, with the reverse-engineered printer protocol pulled out into its own reusable GPL library.
The workshop is a self-hosted GitLab I own and run. The shop window is GitHub. Development happens in private with no metered CI bill and full control of the runners; when a release is ready, one GitLab CI job mirrors the source to GitHub and cuts a release with the built binaries. Here's the actual pipeline that does it, gotchas included.
Two reader-facing additions to the site this week. There is now a Donate page with Ko-fi and Interac e-Transfer, and a Projects section where each thing I build gets a real writeup instead of a line on a GitHub profile. Neither is clever. Both are things I kept meaning to do and finally did.
Build 2026 is ten days out, and this edition is the calm before. VS 2026 18.6.1 patches a hard ARM64 debugger blocker, System.ClientModel 1.13.0 ships breaking credential changes, GitHub Copilot pushes a pre-cutover changelog flurry, and the Musk v. Altman verdict closes a story two editions in the making.
I spent a weekend proving the VB6 loop is alive outside Windows. Visual Basic on Avalonia 11, .NET 10, Visual Studio 2026, two update patterns side-by-side, and the same VB source publishing to a 47 MB self-contained win-x64 .exe and a 47 MB self-contained linux-x64 ELF. No first-party VB template for Avalonia, so the .vbproj is hand-rolled. Everything downstream behaves normally. Full source and…
Microsoft has shipped more UI frameworks than any other vendor in computing history. Win32, MFC, WinForms, WPF, Silverlight, Xamarin.Forms, UWP, WinUI, MAUI, Blazor Hybrid. Each launched with a deck full of reasons this one was the future. Some are still here. Most are not. The real question is not whether MAUI is the next Silverlight; it is why a working developer in 2026 should ever again bet on…
A weekly look at what shipped, what shifted, and what Microsoft decided this week in the corner of the ecosystem I actually work in: Avalonia for cross-platform UI, .NET 10 in production, Visual Basic still refusing to die, and whatever decision out of Redmond is going to land on a working developer's desk on Monday.
The old ways do still work. WinForms in VB.NET 10 on Visual Studio 2026 is a perfectly modern stack. Modern system design is not asking you to give up forms, events, or any of the tools that already serve you well. It is a small set of techniques you can add behind them, when a project starts to want them.
The hardware curve has flattened. The papering-over is ending. Here are the rules for writing code that respects the machine it actually runs on, with .NET specifics.
Stood up GoAccess on the production logs this morning. Noticed iOS clients 404'ing on /apple-touch-icon.png within minutes. Resized the admin avatar with PowerShell and System.Drawing, dropped the result at wwwroot/apple-touch-icon.png, deployed. Thirty minutes from 'huh, that's a lot of 404s' to live. The story is the loop, not the icon.
Dennard scaling broke twenty years ago. The transistor density curve still has runway. The bill nobody warned us about is the complexity tax, and it is coming due.
Starting a long-form history of Visual Basic on EvilGeniusLabs.ca. Chapter 1 covers the BASIC dynasty Microsoft had been running since 1975, the California developer Microsoft bought to put a face on it, and the launch pitch Bill Gates seeded in BYTE Magazine eighteen months before VB shipped. Six articles, focused on the parts of the story that don't get covered.
A weekly look at what shipped, what shifted, and what Microsoft decided this week in the corner of the ecosystem I actually work in: Avalonia for cross-platform UI, .NET 10 in production, Visual Basic still refusing to die, and whatever decision out of Redmond is going to land on a working developer's desk on Monday.
A bootcamp can teach you the syntax of a language in six weeks. The part that takes a decade is everything else: where the seams go, where the data flows, which decisions you are stuck with for the life of the codebase. This is a senior developer's argument for what learners should actually be looking for, after thirty years of watching the difference.
Two open questions for anyone who shipped real work on Visual Basic 6 and is now writing C# against modern .NET. What specifically did VB6 get right that you miss? And what do you find frustrating about the modern toolchain that VB6 didn't make you fight? I shipped about a hundred VB3-through-VB6 line-of-business systems between 1995 and 2010, and I'm trying to get to the root of what was actually…
YouTube has tens of thousands of talented creators making careful, deep, useful videos. The home feed will not show them to you. There is no browse. Only a funnel, built from your laziest clicks and tuned to keep you watching, not to surface what's worth watching. A rant from inside the trap, and a sketch of the tool I'm building to climb out of it.
In April 2005, Linus Torvalds wrote Git in ten days because BitKeeper revoked its free licence to the Linux kernel. Twenty-one years later, no successor has emerged. A practitioner's history of source control from someone who used every major system since 1990, and lost code in most of them.
I adopted Claude Code about four months ago to help with code and writing. The ideas, the anecdotes, the prose, and the opinions on this site are mine. The model edits. I want to say that out loud rather than leave readers guessing, and I want to be clear about why a force multiplier is a double-edged tool.
M12 said draft books are public works-in-progress. I updated the book-level visibility filter and called it done. The article-level filter, which lived in seven other queries, was a separate code path. Anonymous visitors saw the book, saw the chapters, and every chapter rendered 'no published articles'. Here's what I missed and the fix.
Every UI framework Microsoft has shipped since WinForms (2002) was sold as its successor. WPF, Silverlight, UWP, MAUI, Blazor desktop. Twenty-four years on, WinForms is still there, on modern .NET, with a designer that any VB6 developer would recognise on sight. The Cooper and Geary form-designer architecture from 1987 is still the path of least resistance for a working line-of-business app in…