Technical articles

Insights on .NET, software modernization and AI.

Practical guides for companies and software teams maintaining, evolving or modernizing existing .NET applications. Technical content focused on real-world enterprise software challenges.

Monolith or microservices in .NET? Questions to ask before splitting the system

Architettura .NET

Monolith or microservices in .NET? Questions to ask before splitting the system

Microservices or modular monolith? Five practical questions about deployment, data, scaling, teams and platform tax before splitting a .NET system.

Privacy-friendly analytics in ASP.NET Core: self-hosted telemetry without third-party tracking

.NET Development

Privacy-friendly analytics in ASP.NET Core: self-hosted telemetry without third-party tracking

How to design self-hosted product telemetry with ASP.NET Core, EF Core, and SQL Server, collecting only the events you need without sending business data to third-party platforms.

Why a .NET Application Becomes Slow: How to Spot the Real Bottleneck

Performance .NET

Why a .NET Application Becomes Slow: How to Spot the Real Bottleneck

When a .NET page is slow, the problem isn't necessarily in the most complex query or the most visible control. This guide offers a practical method for measuring individual operations and tells a real case in which a few queries executed within a loop brought the load from 3.36 to over 30 seconds.

Developing AI Applications in .NET: Microsoft.Extensions.AI and the Microsoft AI Ecosystem

AI e sviluppo .NET

Developing AI Applications in .NET: Microsoft.Extensions.AI and the Microsoft AI Ecosystem

Microsoft.Extensions.AI and linked libraries show that it is now possible to develop AI applications on .NET without switching stacks. This guide analyzes the main abstractions, the tools available in the Microsoft ecosystem and a real example based on SmartestTour.

How to expose functionality of a legacy .NET system via API without rewriting it

Modernizzazione .NET

How to expose functionality of a legacy .NET system via API without rewriting it

A legacy .NET application may still contain robust logic and important data, but be difficult to integrate with modern portals, apps, and services. This guide shows you how to introduce a controlled API layer, gradually separating the old system from the new consumers without going through a complete rewrite right away.