Home Blog
Blog

Case Study: NerdDinner Modernization - Phase 1

August 28, 2026

I wanted to show off what modernization looks like by doing a case study. I selected the classic tongue-in-cheek showcase web app "NerdDinner". All the gory technical details can be found in the Github repo. It's been a fun exercise, so far.

Beyond the technical details, I want to dig into one of the choices that was made to highlight Decimal Zero's value proposition in the age of AI. AI tools exist to perform modernization, and they are good at updating libraries and writing code. They can even generate a list of modernization options to choose from. Microsoft has a tool called GitHub Copilot upgrade that is specifically designed for modernization work. You can point it at a legacy codebase and it will present you with one or more migration paths. But which one do you choose? Which one is right for your unique circumstances that take into account your business requirements, budget, timeframe, and risk tolerance? That's where my experience comes in.

A good example of managing risk was a major change to the plan that I made. I used Claude to help formulate the plan and it defaulted to a full rewrite from .NET Framework to .NET 10 in one pass. While this is the quickest path to the ideal end state, there were two issues I saw with a one-pass approach. The first is that it is riskier to migrate from Framework to modern .NET. The runtimes are different and there are major implementation differences, such as with the middleware and Entity Framework. There is an increased risk that things may break or incompatibilities may be introduced. See DL-001 in the decision-log.md.

The second issue is that there is no good off-ramp in the event of some unforeseen issue, such as a subtle incompatibility, changing requirements, or budget cuts. Once the process has been started, the only stopping point is when the ported rewrite of the entire site is done.

To address those concerns, I opted for a two-phase plan (see plan.md). The first phase would upgrade the site to .NET Framework 4.8 and update to maintained dependencies, while the second phase would do the port over to .NET 10 (among other things). Phase 1 would also address major security issues. So, at the end of Phase 1 the site would be utilizing a version of .NET Framework currently supported by Microsoft, be using dependencies that are maintained, and have critical security vulnerabilities fixed. If the project has to be postponed or canceled, the site is in a good state and could be deployed, be functional, and be more secure.

The whole philosophy of Decimal Zero is to only change what is necessary. AI tools are wonderful force-multipliers and great at execution. Like any tool, though, they are part of a larger plan and need to be used correctly within the plan. That's where Decimal Zero comes in - we customize a modernization plan tailored to your business.

Next up: Phase 2 - getting the application to its end state.

© 2026 Decimal Zero LLC  ·  decimalzero.com  ·  Blog  ·  Privacy Policy  ·  Terms of Use