Udi Dahan

Udi Dahan

@udidahan.com

Posts about Software Development, Design, and Architecture. Founder and CEO of NServiceBus. He/Him. https://udidahan.com/ https://twitter.com/UdiDahan https://hachyderm.io/@udidahan

1.8K followers228 following44 posts

Udi Dahan reposted

We’re here! 👋 The Particular Software booth is up and running at #TechoramaNL. If you're building message-driven systems - or wondering why yours behaved perfectly in development and then did something *interesting* in production - come talk to us. 😄

Udi Dahan reposted

🔄 Change is inevitable. Breaking everything isn’t! Learn practical techniques to evolve event-driven systems, version message contracts and maintain compatibility without downtime. 🚀 📅 Nov 17 · Thomas More Campus De Nayer 🎟️ www.visug.be/events/2026-... #VisugXL #dotnet #Architecture

Udi Dahan reposted

Replying to @ardalis.com

But I assure you if you haven’t been you will absolutely regret not making it to this years TechoramaNL which is featuring and over the top medieval theme that is NOT TO BE MISSED

Udi Dahan reposted

Hey #NDCOslo! 👋 Meet the engineers behind Particular Software! @SzymonPobiega @PoornimaNayar @Masternak and Andreas are here. Building a #distributedsystems? Bring your architecture questions. We'd love to talk messaging, event-driven systems, reliability, and real-world trade-offs. #dotnet

Udi Dahan reposted

One topic, many subscriptions in Azure Service Bus. A shared topic can be a good trade-off. But filters, fan-out, and storage work accumulate there, and topic depth shows when delivery falls behind. www.planetgeek.ch/2026/08/14/a... #AzureServiceBus #NServiceBus

planetgeek.chAzure Service Bus: One topic, many subscriptionsTL;DR: A single Azure Service Bus topic can be a reasonable starting point for one-to-many messaging. The topic receives published messages, and subscriptions provide separate delivery views for consu...

Udi Dahan reposted

We built our previous Azure Functions integration based on the foundations of the past, where only one endpoint is feasible and runtime assembly scanning is inescapable. The new Azure Functions model allows multiple endpoints to coexist in a single Functions App.

particular.netRunning multiple NServiceBus endpoints in Azure FunctionsRun multiple isolated NServiceBus endpoints in one Azure Functions app, with source-generated wiring and explicit endpoint boundaries.

Udi Dahan reposted

Replying to @particular.net

All together, a great set of tools for situations where speed is important, and message durability either isn't necessary or can be "reloaded" after a process restart.

Udi Dahan reposted

Modeling business requirements and policies is a tricky thing. In this video, @indualagarsamy discusses the saga message pattern to see how you can model complex business workflows, and model time as an immutable durable event

particular.netEvolving with the Changing Requirements: The DDD Dream🔗Transcription 00:05 Indu Alagarsamy What I'm going to talk today, this talk is going to be, is requirements are going to be changing all the time and how can we keep up with those requirement…

Udi Dahan reposted

Replying to @rballard.bsky.social

Another thing that’s sticking with me is the importance of social learning and peer support. I think I can credit a lot of my success, especially earlier in my career, to landing in an organization that values collaboration, information sharing, and mentorship.

> In the context of combined EDA and SOA, the word “service” is equivalent to a logical “thing” that can have a database schema, Web Services, and even user-interface (UI) code inside it.

Udi Dahan reposted

Most engineers undervalue their time. You have more important work to do than re-inventing the wheel.

Dylan Beattie@dylanbeatt.ie

"That's quite expensive. We'll just build our own." "Your library doesn't do what we need. Fix it now. For free." "Why do you want budget to pay for free software?" "You said this was free! How dare you charge money for the latest version!" Sound familiar? Help us fix it: usewhatworks.org

Udi Dahan reposted

I have to say, that's quite the wall of names for something that's been out less than a week. It's encouraging to see so many people showing their support for what we're trying to do here. Want to join us? Head over to usewhatworks.org and sign the manifesto.

Dylan Beattie@dylanbeatt.ie

"That's quite expensive. We'll just build our own." "Your library doesn't do what we need. Fix it now. For free." "Why do you want budget to pay for free software?" "You said this was free! How dare you charge money for the latest version!" Sound familiar? Help us fix it: usewhatworks.org

Udi Dahan reposted

How do you design a UI when the back-end system consists of dozens (or more) of microservices? In this video, Mauro Servienti shows how to use the concept of UI Composition to build a page without losing autonomy between services

particular.netDesigning a UI for Microservices🔗Transcription 00:01 Mauro Servienti So welcome again. And welcome to Designing a UI for Microservices. As said, my name is Mauro Servienti. So I'm a remote worker. So I'm fully working remotely for…

Udi Dahan reposted

Replying to @kenny.weave-it.org

If implicit ranking can silence a room of senior engineers during a training simulation, imagine what it is doing to your actual architecture design sessions. If we don't actively facilitate group dynamics and level the playing field, we lose the vital perspectives required to solve complex problems

This thread demonstrates how people may *think* they are representing the "problem space" when they are still subconsciously stuck in the "solution space". My recommendation is to delay naming things, using placeholders like colors in the interim - uncomfortable at first, yes, but helpful. Try it.

Kenny (Baas) Schwegler@kenny.weave-it.org

We stop designing for the feature and start designing for the business problem. Coming up with new ideas and models to solve the problem. The takeaway: Name your bounded context towards the problems in the problem space, not the solutions in the solution space.

Yup, many people underestimate the "gravity" of data when doing legacy modernization. That and data quality issues.

Nick Tune@nick-tune.me

But the real challenge comes when tackling the core of the legacy, especially the data, that has many dependencies and is hard to untangle. And picking too many quick wins can increase overall complexity that makes untangling the core even harder. 2/4

Udi Dahan reposted

.NET 10 is out! Before you ask, you can already use .NET 10 in your #NServiceBus endpoints. We've run tests with the previews along the way to ensure you won't run into any issues when you change your target framework.

devblogs.microsoft.comAnnouncing .NET 10 - .NET BlogAnnouncing the release of .NET 10, the most productive, modern, secure, intelligent, and performant release of .NET yet. With updates across ASP.NET Core, C# 14, .NET MAUI, Aspire, and so much more.

Udi Dahan reposted

Replying to @udidahan.com

Companies don’t realize their developers often make decisions without leadership involved (to build their own infrastructure because it’s fun) that then burden the company with supporting such systems indefinitely. At the expense of a simpler more maintainable app.

"Rants and Raves" from @wildermuth.com > I think this is true whether it is an open source project, or a commercial product. It has felt like developers can get focused on “How hard could it be?”.

Particular Software@particular.net

Every developer has faced the “buy vs. build” dilemma. Truth is, reinventing the wheel can cost way more than you think—both in dollars and lost focus. Adopt existing solutions where possible and spend your energy where it matters #UseWhatWorks

Udi Dahan reposted

New on the blog! We released a bunch of enhancements to our AWS-related components, including improvements to the #SQS transport, #DynamoDB persistence, and #Lambda hosting. Check out all the details here.

particular.netAWS EnhancementsCheck out the latest enhancements to NServiceBus support for AWS. All of these updates aim to give you more control, fewer surprises, and a smoother experience when building distributed message-based…

Udi Dahan reposted

We can fall into a trap, believing things happen synchronously in a predefined order. They don't–at least not in scalable systems, and certainly not at Starbucks. "What Starbucks can teach you about (software) scalability" on our blog:

particular.netWhat Starbucks can teach us about software scalabilityIn 2004, Gregor Hohpe published his brilliant post “Starbucks Does Not Use Two-Phase Commit.” When I read it, my time working at Starbucks during my college years suddenly became relevant. Over the…

Udi Dahan reposted

Replying to @maggiefero.bsky.social

When you're trying to set culture, you need to prioritize high-trust environments and the delivery of feedback. You cannot let yourself be "casually cruel in the name of being honest" even just a little bit or trust and culture will degrade. - @rstephens.me @ #monktoberfest

Udi Dahan reposted

Replying to @ruthmalan.bsky.social

And I draw on Mary Parker Follett’s work; it’s from ~100 years ago, but not only deserves a place in the formative history of the system design (and leadership) field, but in the discourse that helps shape our understanding and approaches today.

Udi Dahan reposted

Udi Dahan reposted

"We are the Borg. Your messages have failed and will be assimilated. Resistance is futile." For Star Trek day this year, learn how to use the Borg's resiliency as an advantage using ServicePulse to manage when messages fail. particular.net/blog/resista...

particular.netResistance is futile...unless you have ServicePulseWe are the Borg. Your messages have failed and will be assimilated. Resistance is futile. Distributed systems are a lot like Star Trek’s infamous Borg Collective: massively parallel, highly…

Udi Dahan reposted

If you're still unsure what the story is behind the #PostgreSQL popularity, then it's the right time to do something. Doing something means clicking the link below and signing up for my tomorrow's webinar! particular.net/webinars/pos... 1/

particular.netPostgreSQL Superpowers in PracticePostgreSQL is more than a database — it can partition data, stream events, power maps, and even act like a message queue. Let’s build a real fleet management system that proves it. …