
When I first started writing the poorly-named Programming Windows series in mid-2019, I eventually ran into a wall named .NET: this was the point in the history I was trying to cover—the very early 2000s—in which I stopped my formal developer work to focus on writing, allowing my employer, Duke Publishing, to handle the backend work on my websites. It was also the beginning of one of the most exciting times for Microsoft stack developers, the .NET era, but because I wasn’t as familiar with the technical bits as I had been with what had come before, work on the series ground to a halt. I needed time to figure this stuff out.
(I was also hoping that .NET expert Richard Campbell would finish his highly researched book about the history of .NET, but I’m still waiting on that, unfortunately.)
To familiarize myself with Windows Forms—a pre-.NET framework—-and then the Windows Presentation Foundation (WPF), I did what any developer would do: I read as much as possible and started coding myself. Windows Forms was a comfortable way to ease into things because it was so clearly based on Visual Basic (VB), about which I was once quite familiar. And it occurred to me that there might be a story for the Programming Windows series that was about how much work one could accomplish using these environments without actually writing any (C# or VB) code. (WPF does require you to write code, XAML code, to construct application UIs.)
And that’s how the first version of what became .NETpad came about: I used Windows Forms to visually duplicate Notepad as accurately as possible, and then I started writing VB code to make it work. I figured I wouldn’t get very far and that that would be fine: this thing would still stand as an interesting example of how much was possible without writing code. And then maybe someone with actual coding skills could come along and finish it. That’s how things work in the real world, after all.
But the WinForms/VB version of .NETpad turned into a version based on C#, giving me a familiar project to recreate while learning the new (to me) language. And that turned into the WPF version of the app that is still my favorite. And then to a Universal Windows Platform (UWP) version that is weird in some ways, but wonderful and modern in others.
All this took many, many months, of course. What I had intended as a short one-off had turned into a massive series of projects and article series that occurred outside of, and perhaps parallel to, Programming Windows. But once I had all that experience, I was able to pick up Programming Windows again and bring it to its logical conclusion. It’s an epic story.
And I’m going to turn it into an eBook similar to the Windows 11 Field Guide this year. I can’t call it Programming Windows—that title is more correctly used by Charles Petzold and his incredible series of books—but I have some ideas about that. And it’s something I’ve already started working on.
But I also never intended to step back so far from my interest in writing software code. Through the past year or more, I’ve not really stopped experimenting with various things—Flutter, for example, and .NET MAUI—but I’ve also been quite distracted, understandably, I hope, by the Windows 11 Field Guide, which is a big, big project that requires a lot of time and effort. Today, that book is over 625 pages long, and it will be hundreds of pages bigger by the time I’m done. But much of the heavy lifting is out of the way, for now (some of the more technical topics will require a lot of time). And I want to make sure I’m spending my time wisely. And while I don’t see myself creating another .NETpad in some other language or framework or whatever, at least not yet, I would like to include you in the developer topics that occupy my mind these days. I know at least some of you are interested in this stuff.
And so what I came up with is a series of short articles, each of which dives into whatever developer topic I’m currently thinking about or tinkering with. I imagine creating some small UIs in Flutter, for example, and comparing its style of descriptive UI creation with that used by Microsoft and XAML. Explaining what MAUI is good for … and not good for. Examining web apps as the future for desktop apps. Power Automate and Power Apps. And so on.
But I’m probably going to start with a short post about TypeScript, which I’ve already written part of. I feel like the web is the future, generally speaking, and it’s likely that a lot of what I look at this year, developer-wise, will be web-based in some way. Not all of it. But it’s where my head is right now.
Let me know if there are any (small) developer-related topics you’re interested in. The “small” there means I’m not ready for a major project that would require a multi-part series. It can be small in the sense of being very specific. Or small in the sense that it’s a high-level overview. I’d like to do a lot in this space, but have each installment be completely different. Either way, let’s see where this takes us.
With technology shaping our everyday lives, how could we not dig deeper?
Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.