Hello there, I’m Martin, software architect and developer from the Cologne/Bonn area. Right from the start of my professional career, I decided in favor of .NET and Microsoft technologies and tools and have always incorporated them into my work. With more than 15 years of experience in the field of software architecture and development with .NET, my focus is particularly on increasing the quality and performance of development teams, the interaction of the software solution with the target environment and the actual application down to the last byte.
In my position as Director Consulting Services @ CGI
, I act as enterprise architect and developer for cloud native and .NET solutions. I am also a trainer for cloud and software architecture. In addition to my professional life, I am involved in the open source communities and currently provide them with various NuGet packages with different focuses and functionalities.
A strong willingness to learn and develop is also part of my everyday life. This was taken to a new level for me in 2021 after I successfully completed my IHK trainer and my Microsoft certified trainer this year. In addition, I was able to qualify as a trainer for CGI’s Risk and Cost Driven Architecture
program in 2022.
In software development, dependencies are inevitable - any project worth its salt relies on various libraries, frameworks, or packages. However, as I found in my own work, managing these dependencies can be an onerous task. Constant updates, new vulnerabilities, and endless manual approvals were draining my time and focus. What if, I thought, these processes could be automated? This thought led to the creation of dependamerge, a GitHub Action designed to free developers from the drudgery of manual dependency maintenance and let us get back to what we do best: building great software.
As developers, we’re often tasked with maintaining and modernizing legacy codebases that were written long before some of the best practices of today—such as nullability annotations—were available. While modern C# now supports nullable reference types, enabling us to avoid the dreaded NullReferenceException, introducing this feature to existing, large codebases can be a challenge.
In this article, I’ll share my step-by-step approach for introducing nullability into a legacy .NET and C# project. You’ll learn how to apply nullability in a controlled, incremental manner using project-level settings, scoped annotations, and file/method-level directives, all while maintaining the integrity of your legacy codebase. After all, modernizing your code doesn’t have to be an all-or-nothing endeavor—gradual change is key to a successful transition. Let’s get started!
In the ever-evolving world of .NET development, managing project configurations effectively is crucial for maintaining a clean and efficient build process. One of the less frequently discussed but highly useful properties is BuildingInsideVisualStudio. This property, when correctly utilized, can streamline your build process and ensure that your project is configured properly depending on the build environment. In this article, we’ll explore the BuildingInsideVisualStudio property with concrete examples and discuss best practices for using it effectively.
Embark on a journey through Microsoft’s redesigned certification exam UI. Discover streamlined navigation, enhanced accessibility, and personalized experiences, revolutionizing the exam-taking experience.
For over 12 years, NuGet package management has been part of the .NET ecosystem with direct integrations to various IDEs, CLIs and build systems. But a feature took 12 years before it appeared and certainly needs some more maintenance until it is mature!