
New Generation of IDEs (part 2): Multidimensional Navigation in Photo Libraries
In part 1, I wrote about Visual Studio navigation. In part 2, I will compare IDEs with modern Photo Libraries

LLM Incantations and Spellbooks
We live in interesting times where software development is going through a paradigm shift - Human developers are no longer the only ones writing code!

New Generation of IDEs (part 1): The problem of File-Centric IDEs
I've been thinking a lot about how we write code in IDEs and organize files and classes (and types) in c#
and other modern software languages and projects.

Solving Code Review Frustrations with CodeRabbit AI Automation 🤖
CodeRabbit is a new AI LLM-powered tool for automated code reviews. It integrates with platforms like GitHub, GitLab, and Azure DevOps to automatically review pull requests, thus giving developers suggestions and feedback. The setup is quick and can be done in less than 10 minutes. CodeRabbit can be used with any programming language.

Obsolete Bytes: Nazi Submarines, High-Tech Toilets, and Lessons in Software Engineering
What do German World War II submarines and modern software development have in common? Surprisingly, quite a lot: Overengineering, ignoring testing, poor modularity, and cascading failures, to name a few.

Web components with Blazor .NET 7
Web components are web standards that allow you to create custom, reusable HTML elements. These can encapsulate their styles and behaviors, preventing conflicts with other parts of your website. They are built using HTML, CSS, and JavaScript and can range from simple UI elements to complex, fully-featured web applications.

Finding the Perfect Date: Exploring DateTime Formats for Developers
As developers, it's easy to think that working with dates and times is strictly a computer science problem. Even if it sometimes looks like someone is playing a cruel joke on programmers, historically making sense of time was a challenging task, much more than trying to parse some weird local datetime format. Tom Scott has a great video about problems with Timezones:

Public Nested Classes
For some time, I've been using public nested classes (often records) for POCOs (Plain Old C# Object), mostly with MediatR and services. I have found this approach very useful. Everything is contained within the MediatR model (or service), there is no way to access subclasses without explicitly understanding what you are doing.
Library: HashIds - Masking System Data (Id Series)
When we present information about the system to the users, we want to hide the system's inner workings. But, sometimes, it is necessary to give the user some of the details like:

NCEFMRFVSxU - .Net Core + EF + MediatR + FluentValidation + Serilog + xUnit
To misquote Lord Vader: