Jeff Makes Software

The software musings of Jeff Putz

  • Using Azure DevOps pipelines for cloud-hosted POP Forums

    Last week I did my first production deployment of the cloud-hosted version of POP Forums. I'm really excited to offer a version that others can use without setting it up themselves (I'm really excited about the performance, too!). If you've followed me for any length of time, you know that I've been maintaining POP Forums as an open source project since around 2003. The new cloud-hosted version is about 95% the same code, with a few substitutions in the dependency injection container to facilitate multi-tenancy, especially in the asynchronous Azure Functions to make sure that they're acting on behalf of the right tenant. What I'm excited to share is that it's so easy to use the output of the open source project and get those bits into the commercial product.

  • POP Forums for .NET Core is thriving

    That's weird. I haven't made a post here in more than two years. Kind of lame, right? I got out of the habit because it took me years through the betas and changes to port POP Forums to Core, and I'm in that career stage where I've been bouncing in and out of writing code. I don't write any at all for work now, which gives me more of that flavor of mental bandwidth for it now. Because of that, I've made more than a hundred commits to POP Forums the last few months. It's an actual thing, and even gets a PR now and then.

  • The very slow move of POP Forums to .NET Core

    I started to work on migrating POP Forums to the new ASP.NET Core more than a year ago, but as the framework and tooling changed a bunch of times, I kind of got tired of trying to keep up, and I let it just hang out for a long time. As I've been engaged at various levels of deep coding at work (usually 0 or 100 mph, never somewhere in between), so goes the mental bandwidth for my little open source project, which has existed in one form or another for more than 16 years. The progress was in spurts, but there was progress. Heck, I even have a CI build now! Here's the timeline:

  • Adventures in load testing

    I'm at a point now where POP Forums is mostly ported to ASP.NET Core, and I'm super happy with it. I've done some minor tweaks here and there, but mostly it's the "old" code running in the context of the new framework. I mentioned before that my intention is not to really add a ton of features for this release, but I do want to make it capable of scaling out, which is to say run on multiple nodes. I haven't done any real sniffing on SQL performance or anything, but I noticed that I had some free, simple load testing available as part of my free-level Visual Studio Team Services account, so that seemed convenient.

  • No! You don't need to use ASP.NET Identity!

    Going way back to, I think, .NET v3, ASP.NET had this new thing called Membership. Maybe it was a version earlier. I dunno. "Neat," I thought, I can write a provider adhering to this interface and use my existing user and auth structure to plug into this system. Then I saw that the membership and role providers each had about a bazillion (maybe quadbazillion) members to implement, and reality set in that what I already had was working just fine. Some years later, ASP.NET offered Identity, this newer thing that did sort of the same thing. It even made its way into Core.

  • POP Forums roadmap and ASP.NET Core

    The volatility over ASP.NET Core made me pause (twice) since last fall when it came to porting POP Forums to the new platform. Every new release broke things to the point of frustration, and the RC2 reboot was hard. With SignalR falling a bit behind, it made things worse. But alas, that seems to be mostly behind us, and I've started committing stuff to a branch again, a little at a time, to run on the new ASP.NET. It's not at all usable, and every change seems to invite more changes, but I'm starting to see the potential and love for ASP.NET Core.