Sign in

Shahab Ganji

@shahab-the-guy.dev
51 followers 135 following 67 posts

The guy who happened to be a software engineer!💻 Loves ⚽️🥋🚴‍♂️🎾⛷️and 📸 C# && Roslyn enthusiast. Passionate about DDD, CQRS, and Event Sourcing! ✍🏼 shahab-the-guy.dev 📹 www.youtube.com/@shahab-the-guy 📸 www.instagram.com/shahab_the_guy

PostsRepliesMedia
Reposted by Shahab Ganji
Barry Dorrans @blowdart.me · 21/04/2026
.NET has an out of band update today to fix CVE-2026-40372, an Elevation of Privilege, which, in some cases, could allow an attacker to forge authentication tickets, or decode authentication tickets or other protected data. github.com/dotnet/annou...
github.com
Microsoft Security Advisory CVE-2026-40372 – ASP.NET Core Elevation of Privilege · Issue #395 · dotnet/announcements
Microsoft Security Advisory CVE-2026-40372 – ASP.NET Core Elevation of Privilege Executive Summary: A bug in Microsoft.AspNetCore.DataProtection 10.0.0-10.0.6 NuGet packages can give an attacker th...
22417
Shahab Ganji @shahab-the-guy.dev · 24/03/2026
It works on my machine ¯\_(ツ)_/¯
010
Shahab Ganji @shahab-the-guy.dev · 24/03/2026
I’ll post my experience as soon as I get home 😬 recently I see everyone as unknown user ¯\_(ツ)_/¯
000
Reposted by Shahab Ganji
Gérald Barré @meziantou.net · 24/03/2026
Speed Up .NET CI with Test Sharding #NuGet #dotnet #github www.meziantou.net/split-dotnet-test…
meziantou.net
Speed Up .NET CI with Test Sharding - Gérald Barré
Learn how to split .NET tests into deterministic CI shards to run in parallel and reduce pipeline feedback time.
132
Shahab Ganji @shahab-the-guy.dev · 24/03/2026
Oh no, im on my way home to watch it 😭
100
Shahab Ganji @shahab-the-guy.dev · 18/03/2026
That was an amazing workshop, hope see each other soon!
010
Shahab Ganji @shahab-the-guy.dev · 28/12/2025
🎄🎁 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
youtu.be
Three Overlooked Features of Azure Storage Account
YouTube video by Shahab Ganji
020
Shahab Ganji @shahab-the-guy.dev · 16/11/2025
`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
011
Reposted by Shahab Ganji
Duende Software @duendesoftware.com · 07/10/2025
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.link
Duende Software - Identity and Access Management for .NET
We help companies using .NET to build identity and access control solutions for modern applications.
022
Reposted by Shahab Ganji
Vaughn Vernon @vaughnvernon.bsky.social · 07/10/2025
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."
2144
Shahab Ganji @shahab-the-guy.dev · 13/09/2025
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
youtu.be
IHostedService vs. BackgroundService
YouTube video by Shahab Ganji
001
Shahab Ganji @shahab-the-guy.dev · 12/09/2025
🎥 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
youtube.com
Demystifying Event Sourcing: A Practical Approach | Shahab Ganji | CodeCrafts 2025
YouTube video by SQUER Solutions
010
Shahab Ganji @shahab-the-guy.dev · 22/07/2025
It was our pleasure to have you with the community and use your knowledge!
020
Shahab Ganji @shahab-the-guy.dev · 19/07/2025
We are live, don’t miss out the show with @rlittlesii.bsky.social and me! 📺 (YouTube) 👉 www.youtube.com/watch?v=mPkg...
110
Shahab Ganji @shahab-the-guy.dev · 14/07/2025
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! 🤔
200
Shahab Ganji @shahab-the-guy.dev · 09/07/2025
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
youtube.com
Stefan Pölz - Null & Void - Everything about Nothing in .NET
YouTube video by Microsoft Zero to Hero Community
020
Reposted by Shahab Ganji
JetBrains Rider @rider.jetbrains.com · 20/06/2025
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
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.
175
Shahab Ganji @shahab-the-guy.dev · 20/06/2025
Not compatible with the latest version, 2025.1.3
110
Shahab Ganji @shahab-the-guy.dev · 03/06/2025
I’m sure your worst is 4.9/5 😉😁
100
Shahab Ganji @shahab-the-guy.dev · 03/06/2025
Haha, if you’ve heard mine a week ago, you wouldn’t talk about disappointment 😂
100
Shahab Ganji @shahab-the-guy.dev · 03/06/2025
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 😊
123
Shahab Ganji @shahab-the-guy.dev · 27/05/2025
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
010
Shahab Ganji @shahab-the-guy.dev · 08/05/2025
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 ¯\_(ツ)_/¯
000
Shahab Ganji @shahab-the-guy.dev · 28/04/2025
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
010
Reposted by Shahab Ganji
Oskar Dudycz @oskardudycz.bsky.social · 28/04/2025
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...
architecture-weekly.com
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...
383
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
I will check it, thanks for sharing.
010
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
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.
110
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
I liked it on first impression, let’s see how it’d be in log run 😁
010
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
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!
110
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
Yeah, I already have some for end of this working week, will keep you updated 😜
010
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
Even though you mentioned that at the end, does not mean kids should not be inspired and try out something safe 😁😅
000
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
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.
000
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
I am doing that, not on production products, but to learn more about the internals of the approach! 😅😬
110
Shahab Ganji @shahab-the-guy.dev · 22/04/2025
I am finally back from three weeks of being busy and an awesome vacation!
110
Shahab Ganji @shahab-the-guy.dev · 02/04/2025
I am back to analysis paralysis mode 😭🤷🏻‍♂️ I hope tomorrow by writing down all thoughts (useful or not) helps.
000
Shahab Ganji @shahab-the-guy.dev · 01/04/2025
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 😅
011
Shahab Ganji @shahab-the-guy.dev · 01/04/2025
I think I need to read it multiple times :)) You mean logs also have those values, right? But I think, observability is more than just having traces or logs, it’s more how we use them to debug systems 🤔
100
Shahab Ganji @shahab-the-guy.dev · 01/04/2025
Just today I was trying to convince people that we should use traces and not (just) logs
100
Shahab Ganji @shahab-the-guy.dev · 31/03/2025
Is there also some aspire stop command taking the name of the service as an argument?
000
Shahab Ganji @shahab-the-guy.dev · 30/03/2025
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. 🏃‍♂️‍➡️😊 💪🏼
000
Reposted by Shahab Ganji
Mattias Karlsson @devlead.se · 26/03/2025
📅📢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
296
Shahab Ganji @shahab-the-guy.dev · 26/03/2025
It’s already there sir! 😅😊 both my favorite topics 😜
010
Shahab Ganji @shahab-the-guy.dev · 26/03/2025
“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.
061
Reposted by Shahab Ganji
Mattias Karlsson @devlead.se · 22/03/2025
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.se
@devlead - Mattias Karlsson's Blog - Introducing AZDOI
A DevOps tool to document a Azure DevOps organization
0188
Shahab Ganji @shahab-the-guy.dev · 22/03/2025
I don’t have any reference for that, I think if you could analyze code using just syntax tree it’d be faster than doing it by registering actions for semantic model. I am not sure what would be the case for operations, I think they are more for language agnostic scenarios ¯\_(ツ)_/¯
110
Shahab Ganji @shahab-the-guy.dev · 21/03/2025
I find the practices mentioned in this blog by @andrewlock.bsky.social quite helpful: andrewlock.net/creating-a-s...
andrewlock.net
Avoiding performance pitfalls in incremental generators: Creating a source generator - Part 9
In this post I describe some important things to think about when designing your incremental source generator, particularly the pitfalls to watch out for
120
Shahab Ganji @shahab-the-guy.dev · 20/03/2025
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
000
Shahab Ganji @shahab-the-guy.dev · 17/03/2025
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.
github.com
GitHub - SteveDunn/Vogen: A semi-opinionated library which is a source generator and a code analyser. It Source generates Value Objects
A semi-opinionated library which is a source generator and a code analyser. It Source generates Value Objects - SteveDunn/Vogen
012
Reposted by Shahab Ganji
Andrew Lock "Sock" @andrewlock.bsky.social · 05/03/2025
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
077
Reposted by Shahab Ganji
Scott Hanselman 🌮 @scott.hanselman.com · 16/03/2025
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...
nintendo.com
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.
716819