AI review agents in Azure Pipelines can be hijacked by a single PR description. Four real 2026 incidents, a .NET before-and-after, and an audit checklist.
How We Used LLMs to Understand and Modernize a Legacy Delphi Application
Many legacy modernization projects start with a simple question: what does this thing actually do?
In this project, we were modernizing a decades-old Delphi application with limited documentation, no meaningful test coverage, engineers long since moved on, and significant unknowns about the environment in which it operated.
Modernizing legacy systems is challenging, particularly when documentation is limited and system knowledge has been lost over time. When LLMs and AI are applied thoughtfully, they can help teams understand legacy systems faster and reduce modernization risk.
This article focuses on how we used LLMs to understand, document, and de-risk an unfamiliar legacy system before modernization began. Once the application was understood and the architecture was defined, the team leveraged AI-assisted development workflows to accelerate the Delphi-to-.NET rewrite itself. Evan Sanning shares that side of the project in his companion article, How We Used LLMs to Rewrite a Legacy Delphi Application in C#.
How We Used LLMs to Rewrite a Legacy Delphi Application in C#
We rewrote a legacy Delphi (Object Pascal) application into a .NET C# service worker in three months, beating a five-month deadline for a client in the healthcare software space.
Here’s what actually made that possible and the pitfalls we hit using LLMs along the way.
Flutter vs. .NET MAUI for AI: Which Framework Wins?
Are you developing an AI-powered application but unsure whether Flutter or .NET MAUI is the right framework for your project? The decision you make can significantly impact performance, scalability, and development efficiency, so it’s essential to choose wisely. Both Flutter and .NET MAUI offer strong cross-platform development capabilities, but they have distinct differences when it comes to AI model support, …
Blazor Server in .NET 6 – Part Five
In the final part of the Blazor Server in .NET 6 blog series, we covered how to use data binding and dropdowns with lists and enums. This included a short introduction to setting up an HttpService, making a get call to the API, and viewing the results as a string. For further clarity, I also included a demonstration on how to add an HttpService that uses the built-in .NET HttpClient class to make calls to the D&D 5e API!
Finally, I presented a way to add a dropdown with the available race options that our character can choose from. That concludes my five-part educational series on Blazor Server in .NET 6. I hope you enjoyed it, and learned a little something you can take with you. Thanks for tuning in!




