Shahab Ganji's Avatar

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

43
Followers
132
Following
63
Posts
20.11.2023
Joined
Posts Following

Latest posts by Shahab Ganji @shahab-the-guy.dev

Three Overlooked Features of Azure Storage Account
Three Overlooked Features of Azure Storage Account YouTube video by Shahab Ganji

πŸŽ„πŸŽ A Small Holiday Gift for Azure folks 🎁 ✨

πŸ“Ί youtu.be/ZMpjI8jYsGQ?...
πŸ“ shahab-the-guy.dev

Wishing you all an amazing holidayπŸŽ„ πŸŽ‰ and a joyful 2026! πŸ₯³

#Azure #AzureStorage #CloudArchitecture #Developers #SoftwareArchitecture #Learning #HappyHolidays #MVPbuzz #Microsoft

28.12.2025 22:27 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

`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

16.11.2025 12:00 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Duende Software - Identity and Access Management for .NET We help companies using .NET to build identity and access control solutions for modern applications.

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

07.10.2025 12:15 πŸ‘ 2 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

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."

07.10.2025 05:22 πŸ‘ 14 πŸ” 4 πŸ’¬ 2 πŸ“Œ 0
IHostedService vs. BackgroundService
IHostedService vs. BackgroundService YouTube video by Shahab Ganji

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

13.09.2025 14:35 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Demystifying Event Sourcing: A Practical Approach | Shahab Ganji | CodeCrafts 2025
Demystifying Event Sourcing: A Practical Approach | Shahab Ganji | CodeCrafts 2025 YouTube video by SQUER Solutions

πŸŽ₯ 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

12.09.2025 08:08 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It was our pleasure to have you with the community and use your knowledge!

22.07.2025 08:44 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

We are live, don’t miss out the show with @rlittlesii.bsky.social and me!

πŸ“Ί (YouTube) πŸ‘‰ www.youtube.com/watch?v=mPkg...

19.07.2025 16:20 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Hey Maarten, I think one of the dates are wrong! On the shared link it is 8-9 October, but in the CFP page on sessionize, it is 18-19 September! πŸ€”

14.07.2025 18:44 πŸ‘ 0 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Stefan PΓΆlz - Null & Void - Everything about Nothing in .NET
Stefan PΓΆlz - Null & Void - Everything about Nothing in .NET YouTube video by Microsoft Zero to Hero Community

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

09.07.2025 21:05 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 1
This screenshot from JetBrains Rider shows a tool window with logs and metrics pertaining to OpenTelemetry, as well as an architectural chart for a .NET application for the purposes of runtime observability.

This screenshot from JetBrains Rider shows a tool window with logs and metrics pertaining to OpenTelemetry, as well as an architectural chart for a .NET application for the purposes of runtime observability.

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

20.06.2025 10:49 πŸ‘ 7 πŸ” 5 πŸ’¬ 1 πŸ“Œ 1

Not compatible with the latest version, 2025.1.3

20.06.2025 11:58 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I’m sure your worst is 4.9/5 πŸ˜‰πŸ˜

03.06.2025 17:07 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Haha, if you’ve heard mine a week ago, you wouldn’t talk about disappointment πŸ˜‚

03.06.2025 16:36 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

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 😊

03.06.2025 10:01 πŸ‘ 3 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0
Post image

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

27.05.2025 09:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

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 Β―\_(ツ)_/Β―

08.05.2025 11:23 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

imho, Git Kraken was the best, but since I did not want to switch between Rider and a git gui, I use mostly git in rider

28.04.2025 15:15 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
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...

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...

28.04.2025 09:09 πŸ‘ 9 πŸ” 3 πŸ’¬ 3 πŸ“Œ 0

I will check it, thanks for sharing.

22.04.2025 18:18 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Yes, but there are document size limitations, 2MB, and also there are some limits over the transaction batch size. I was thinking of a separate document as well but in the same transaction as the logical partition for the stream and events.

22.04.2025 17:30 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I liked it on first impression, let’s see how it’d be in log run 😁

22.04.2025 10:27 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Yeah, I am struggling on projections part, I need to think about at least two approaches, inline and async ones. Considering limitations on the backing storage even the inline would not work all the time, and then proper api to return relevant errors is tricky!

22.04.2025 10:26 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Yeah, I already have some for end of this working week, will keep you updated 😜

22.04.2025 10:24 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Even though you mentioned that at the end, does not mean kids should not be inspired and try out something safe πŸ˜πŸ˜…

22.04.2025 09:00 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I double that! Also, the feed from @martin.eventmodeling.org helped me to connect the dots from Event Modeling to ES. even though EM does not necessarily mean one has to do ES.

22.04.2025 07:54 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I am doing that, not on production products, but to learn more about the internals of the approach! πŸ˜…πŸ˜¬

22.04.2025 07:52 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I am finally back from three weeks of being busy and an awesome vacation!

22.04.2025 07:50 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I am back to analysis paralysis mode πŸ˜­πŸ€·πŸ»β€β™‚οΈ I hope tomorrow by writing down all thoughts (useful or not) helps.

02.04.2025 21:43 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This is absolutely true πŸ‘πŸΌ in the past it was like that in some companies I worked for; atm, I just have the other experience. However, after your response I’m trying to be a good model to be followed πŸ˜…

01.04.2025 16:30 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0