Shahab Ganji
banner
shahab-the-guy.dev
Shahab Ganji
@shahab-the-guy.dev
The guy who happened to be a software engineer!💻

Loves ⚽️🥋🚴‍♂️🎾⛷️and 📸

C# && Roslyn enthusiast. Passionate about DDD, CQRS, and Event Sourcing!

✍🏼 https://shahab-the-guy.dev
📹 https://www.youtube.com/@shahab-the-guy
📸 https://www.instagram.com/shahab_the_guy
`DiagnosticSuppressor` shines, when we want a dynamic behavior for enabling/disabling a `DiagnosticAnalyzer`. Here I am covering them and of course with tests 😉

👉🏼 bit.ly/4p8d99a or scan the QR code!

#Roslyn #DiagnosticAnalyzer #DiagnosticSuppressor #SourceGenerator #csharp #dotnet
November 16, 2025 at 12:00 PM
Reposted by Shahab Ganji
Passwordless authentication is gaining momentum. The upcoming release of #dotnet 10 comes with built-in passkey support!

In this post, we look at the new #Blazor project template and how it adds secure authentication using passkeys.

duende.link/37egw9f

#identity #passkey #webauthn #aspnetcore
Duende Software - Identity and Access Management for .NET
We help companies using .NET to build identity and access control solutions for modern applications.
duende.link
October 7, 2025 at 12:15 PM
Reposted by Shahab Ganji
YAGNI is too often a plague infecting otherwise good software design. It's a knee-jerk reaction to "I don't have a clue, so I'll ensure that I don't need to have a clue."
October 7, 2025 at 5:22 AM
You ever wondered what is the difference between an `IHostedService` and a `BackgroundService`? The latter is designed for long-running tasks and the former for the short-running ones!

📹 youtu.be/S0H_qElq59Y?...

📚 shahab-the-guy.dev/blogPost/e4e...

#aspnetcore #csharp #dotnet
IHostedService vs. BackgroundService
YouTube video by Shahab Ganji
youtu.be
September 13, 2025 at 2:35 PM
🎥 My CodeCrafts 2025 talk is now online!
Demystifying Event Sourcing: A Practical Approach
👉 www.youtube.com/watch?v=upRS...

And hey — CodeCrafts 2026 is already around the corner 👀
🎟️ code-crafts.com
Demystifying Event Sourcing: A Practical Approach | Shahab Ganji | CodeCrafts 2025
YouTube video by SQUER Solutions
www.youtube.com
September 12, 2025 at 8:08 AM
We are live, don’t miss out the show with @rlittlesii.bsky.social and me!

📺 (YouTube) 👉 www.youtube.com/watch?v=mPkg...
July 19, 2025 at 4:20 PM
Join @flash0ver.bsky.social and me to for an hour about Null & Void, Everything about Nothing in .NET 😁

12th July 2025–18:00 CET

📺 www.youtube.com/watch?v=XX_6...

Looking forward to seeing you there! 😊

#Microsoft #dotnet #csharp #MicrosoftZeroToHero #DeveloperCommunity #MVP #MVPbuzz
Stefan Pölz - Null & Void - Everything about Nothing in .NET
YouTube video by Microsoft Zero to Hero Community
www.youtube.com
July 9, 2025 at 9:05 PM
Reposted by Shahab Ganji
We're stunned by the love our new #OpenTelemetry plugin for Rider has been receiving lately 🤯
We thought "Hey, observability inside the IDE sounds useful" and gave it our best shot, but the response has been...wow.
Bottom line: No more dashboard hopping to optimize your .NET app! 👉 jb.gg/ot-in-rd
June 20, 2025 at 10:49 AM
Heading to @eventcentric.bsky.social for two days of great talks, looking forward to talk with @noctovis.bsky.social about event versioning and @oskardudycz.bsky.social about Event Sourcing 😊
June 3, 2025 at 10:01 AM
At Microsoft build, a new way to run C# applications was introduced, check out my latest post to get familiar with it:

📝 bit.ly/4kopAeU

#csharp #build #Build2025 #MVPbuzz #dotnet #csproj #programming #softwaredevelopment #dotnet10
May 27, 2025 at 9:17 AM
I am implementing a new feature in a code base, and want to emphasize that "Code Duplication is a lesser evil than coupling"! 😭

Just saying ¯\_(ツ)_/¯
May 8, 2025 at 11:23 AM
Reposted by Shahab Ganji
Have you heard a surgeon say, "I won't sterilise my tools, as the patient won't let me"? I haven't, but I have heard multiple times, "Business won't let us add unit tests."

I wrote a bit on such lies we tell to ourselves in the latest #ArchitectureWeekly

www.architecture-weekly.com/p/business-w...
Business Won't Let Me and other lies we tell to ourselves
Have you heard a surgeon say, "I won't sterilise my tools, as patient won't let me"? I didn't, but I heard, multiple times, "Business won't let us add unit tests." Let's discuss how real this phrase i...
www.architecture-weekly.com
April 28, 2025 at 9:09 AM
I am finally back from three weeks of being busy and an awesome vacation!
April 22, 2025 at 7:50 AM
I am back to analysis paralysis mode 😭🤷🏻‍♂️ I hope tomorrow by writing down all thoughts (useful or not) helps.
April 2, 2025 at 9:43 PM
I haven’t done anything in March, and it was more like being tired and rest; April and May, on the other hand, will be a marathon of work, family time and fun. 🏃‍♂️‍➡️😊 💪🏼
March 30, 2025 at 10:14 PM
Reposted by Shahab Ganji
📅📢Hurry up! The @oredev.org CFP deadline of March 31st is approaching fast. As a volunteer overseeing the #dotnet track, I'm eager to review your top-notch submissions. Don't miss out; submit now!

Submission link: sessionize.com/oredev-2025/

#cfp #opportunity #techconference
March 26, 2025 at 9:07 PM
“You can’t change the world of bad software design. You can only hope to implement proper DDD in projects you work on.”
- @vaughnvernon.bsky.social

I could 100% relate to this, sometimes brown field projects prevents you from achieving proper DDD, and sometimes people in your team.
March 26, 2025 at 7:46 PM
Reposted by Shahab Ganji
Just blogged: Introducing AZDOI, a .NET tool designed to document Azure DevOps organizations by generating Markdown files. This tool helps keep track of your projects and repositories.
Read more: www.devlead.se/posts/2025/2...

#DevOps #Azure #DotNet #DevOpsDocs
@devlead - Mattias Karlsson's Blog - Introducing AZDOI
A DevOps tool to document a Azure DevOps organization
www.devlead.se
March 22, 2025 at 11:21 PM
Happy Persian new year! May it be less of anything representing a BBoM, and they've been transforming into well-defined bounded contexts, working autonomously under your control.

#Nowruz #PersianNewYear #software #development
March 20, 2025 at 9:01 AM
This is a great talk, highly recommended. Also, an opinionated implementation of V.O by @dunnhq.com that I could recommend:

github.com/SteveDunn/Vo...

- You could reduce a lot of cognitive load from your team and yourself, with ample number of Code Analyzers, that prevent you from mistakes.
March 17, 2025 at 8:12 AM
Reposted by Shahab Ganji
Blogged: Creating an analyzer to detect infinite loops caused by ThreadAbortExceptions

andrewlock.net/creating-an-...

In this post I describe a Roslyn Analyzer that detects code which can result in infinite loops if a ThreadAbortException is raised

#dotnet #csharp
March 5, 2025 at 7:13 PM
Reposted by Shahab Ganji
If you’ve ever wanted a Visual Studio Code for Nintendo Switch, definitely check this out. Supports USB keyboards (!), write your own games, great for the kids www.nintendo.com/us/store/pro...
FUZE4 Nintendo Switch for Nintendo Switch - Nintendo Official Site
Buy FUZE4 Nintendo Switch and shop other great Nintendo products online at the official My Nintendo Store.
www.nintendo.com
March 16, 2025 at 3:49 AM
Suppress or enforce? In C#, you can silence warnings OR make sure critical ones can’t be ignored! Learn how to configure diagnostics and take control of your code analysis. ⚡

📚👉🏼 https://bit.ly/4bVU7gJ

#CSharp #Roslyn #CodeAnalysis #SourceGenerator #dotnet
March 16, 2025 at 9:01 AM
Reposted by Shahab Ganji
One of the bigger problems with the Aspire dashboard right now is that it focuses on the structure of the waterfall, rather than the fact that each span is structured data.

You can't easily see and compare the data from each span, which is what makes spans so great as telemetry data.
March 15, 2025 at 8:56 PM
Reposted by Shahab Ganji
My latest talk is now available. It covers a lot of different design techniques in just 60 mins!
www.youtube.com/watch?v=fOF3...
Thirteen ways of looking at a Turtle - Scott Wlaschin - NDC London 2025
YouTube video by NDC Conferences
www.youtube.com
March 10, 2025 at 8:58 AM