Udi Dahan - The Software SimplistUdi Dahan - The Software Simplist.Net Development Expert & SOA Specialist Articles
Webcast on NServiceBus with Andreas Öhlund
2011-03-07 00:52:00 Tomorrow (March 8th) Andreas will be presenting a webcast on NService Bus for the European Virtual ALT.NET group. This will actually be part 2 of his previous presentation – you can find the recording of part 1 here. This time Andreas will be showing publish/subscribe communication as well as the use of sagas – get the full details ... More About: Community , Presentations
Entities, Transactions, and Broken Boundaries
2011-03-05 12:44:00 One of the things I cover early on in my course is the problem with traditional layered architecture driving people to create a business logic layer made up of a bunch of inter-related entities. I see this happening a lot, even though nowadays people are calling that bunch of inter-related entities a “domain model”. Let me ... More About: Business Rules , Architecture , Data , Sets , Transactions
Presentations and Courses
2011-03-04 08:26:00 Last night I gave a presentation at Skills Matter in the UK on asynchronous web-scale architectures. It’s been recorded and is now available online here. I also was on the famous Dot Net Rocks again, this time talking about CQRS. You can find that here. If you want to understand these topics in depth, the best recommendation ... More About: Community , Podcast , Presentations
Polymorphism and Messaging
2011-01-13 09:52:00 One of the questions that came up from my NService Bus – .NET Service Bus Smackdown post was about the Polymorphic Message Dispatch and Polymorphic Message Routing features. People wanted to know what those are, why they’re important, and if other technologies (specifically WCF and BizTalk ) support them. Messaging Basics First of all, when building a system using ... More About: Architecture , Web Services , Polymorphism
NServiceBus 2.5 Released
2010-12-31 17:12:00 Just before we usher in the new year, I’m happy to announce the release of NService Bus version 2.5. Yes, there’s a new logo, and the website’s been redesigned. It’s been a long time coming – the previous version (2.0) was released in March. I’m really quite excited about this version as it rolls up all the bug fixes ... More About: Released , Web Services
Weather, Podcast, and Courses
2010-12-20 17:14:00 Well, I’m back home now after a week of training in Seattle. I’m probably the luckiest frequent flyer in the world (touch wood). I flew to Seattle through Frankfurt, just after the (previous) big snow storm subsided and missing the storms that most travelers in the US had to endure. On my way back, I ... More About: Weather , Podcast
The Known Unknowns of SOA
2010-11-15 14:44:00 One of the better known analysts in the enterprise software area, JP Morgenthal, wrote this post about the relationship between SOA, BPM, and EA. In it he defines SOA as follows: “SOA is a practice that focuses on modeling the entities, and relationships between entities, that comprise the business as a set of services. This can ...
Logical and Physical Architecture
2010-11-08 20:14:00 One architectural misunderstanding I see repeatedly in my work with clients is in the relationship between logical and physical architecture. The most common building-block of these misunderstandings is the web service (or it’s “upgraded” .net counterpart – the WCF service). Don’t get me wrong, sometimes there is a place for a web service, just not everywhere. So, ... More About: Architecture , Physical
NServiceBus Updates
2010-11-04 07:14:00 Just wanted to point you to some of the interesting new developments going on in the NService Bus ecosystem. For those of you looking at on-premise solutions but don’t want MSMQ and prefer a more “enterprise-ready” infrastructure, there is now an adapter for WebSphere MQ. This is already being used in production with NServiceBus version 1.9 and ... More About: Updates
Upcoming conferences and courses
2010-09-30 05:44:00 Seeing as several hundred new subscribers have joined since my last post, I wanted to give a quick update on the courses I’m teaching (Advanced Distributed Systems Design and Enterprise Development with NService Bus) as well as the conferences at which I’m presenting. Hands-on The NServiceBus course is actually different from what I previously delivered – the course ... More About: Community , Consulting , Conferences , Presentations
Race Conditions Don?t Exist
2010-08-31 11:56:00 Not in the business world anyway. The problem is that, as software developers, we’re all too quick to accept them at face value. We don’t question the requirements – in all fairness, it was never our job to do so. We were the ones that implemented them, preferably quickly. For example Let’s say we get the requirement ... More About: Business Rules , Architecture , Service , Race , Workflow
NServiceBus ? .NET Service Bus Smackdown
2010-08-04 13:24:00 I get this question quite often: “what is the difference between NService Bus and the .NET Service Bus from Microsoft?” And I’m afraid the answer is that the two technologies were designed to handle a very different set of problems. The .NET Service Bus was designed to bridge internet communications using the cloud to enable a ... More About: Web Services
Cautiously Merging IL
2010-08-01 09:16:00 As Dru mentioned on his blog, while having dinner in Kansas City, I described why NService Bus makes use of IL Merge and some of the challenges we were facing with version management as a result. While I do think that we’ve managed to find the right balance, I must say that it wasn’t easy and ... More About: Development , Simplicity
Course Update
2010-07-24 22:06:00 Just wanted to let you know that there is a scheduling change for my upcoming courses. This is due to some minor issues internal to Skills Matter, the company that hosts my training in the UK and manages the France location as well. Anyway, these issues have been resolved but the scheduling changes remain. The courses ... More About: Update
Evolving Loosely-Coupled Frameworks & Apps
2010-07-14 15:10:00 This post will be less of a big-concept type posts I usually do, and more of a tip for people building and maintaining infrastructure and frameworks either open-source or internally for their companies. I’m going to illustrate this with NService Bus as it is a large enough code base to have significant complexity and open so ... More About: Architecture , Development , Simplicity , Dependency Injection
High Availability Presentation
2010-06-21 08:36:00 OK – this is the last one, I promise. Well, for now, anyway. Earlier this month at TechEd North America I gave a fairly new presentation that was only delivered once before (at the Connected Systems User Group in London) and I’m happy to say is now online for your viewing pleasure. High Availability – A Contrarian ... More About: Architecture , The Team , Presentations
CQRS, DDD, and NServiceBus video
2010-06-18 13:11:00 Following the theme of my last few blog posts, this post will also be pointing you to videos of me talking. After I had finished speaking at QCon London last March, I sat down for a short interview with the guys from InfoQ chatting about topics from CQRS, to DDD, to NService Bus. I’m happy to say ... More About: Video , Presentations
DDD Exchange London 2010
2010-06-17 11:03:00 Last Friday I was in London for the DDD Exchange . It was great seeing Eric Evans again and Greg Young, who I haven’t seen for at least a couple of years. It might take some time for Skills Matter to get the videos online so in the mean time I wanted to point you to ... More About: Presentations
NServiceBus Presentation Now Online
2010-06-09 23:43:00 Last April I was in Bergen Norway for some consulting and training and I also gave my first NService Bus presentation to a user group. I don’t particularly like giving NServiceBus-specific presentations, preferring to talk about the patterns and concepts of service-based architectures and service buses – NServiceBus is just an implementation. Ultimately, that’s what happened ... More About: Community , Online , Presentations
Server Naming and Configuration Conflicts
2010-06-05 14:59:00 In my work with clients the topic of how to handle the movement of software from one environment to another inevitably comes up. Sometimes this is in the context of NServiceBus but the problem is more generic. The faster that an organization is able to get software out the door, the more agile they can ... More About: Architecture , Management , Development , Simplicity , Server
CQRS isn?t the answer ? it?s just one of the questions
2010-05-07 11:25:00 With the growing interest in Command/Query Responsibility Segregation (CQRS), more people are starting to ask questions about how to apply it to their applications. CQRS is actually in danger of reaching “best practice” status at which point in time people will apply it indiscriminately with truly terrible results. One of the things that I’ve been ... More About: Architecture , Questions , Management , Answer , Development
On MS, OSS, and Java
2010-05-01 13:14:00 It appears that my last post caught a lot of people’s attention, with responses online and offline from people in the community as well as inside Microsoft. Some read it as a criticism of Microsoft. Others found it rang true with their experiences, particularly in their interactions with technological decision makers. One thing I’d like ... More About: Java , Management , General , Development
Thoughts on Microsoft History and OSS
2010-04-23 23:47:00 It’s coming on 4 years now that I’ve been running NServiceBus. How the time flies. As it has worked its way into the critical infrastructure of many organizations, more and more managers have been asking me questions about how this .NET OSS thing works. In this post, I’ll try to answer that question based on ... More About: Microsoft , History , Management , Development , Thoughts
On Design for Testability
2010-04-18 17:43:00 Almost at every conference, event, training, or consulting engagement someone asks for my opinion on the whole design for testability thing. I’m not quite sure why I haven’t blogged on this topic, especially at the time that a lot of the other bloggers were weighing in, but better late than never. Before getting into that, I ... More About: Design , Projects , Architecture , Management , Development
ESB Differences Between Java and .NET
2010-03-29 15:53:00 At QCon London a couple of weeks ago I had a chat with Ross Mason, the founder of Mule – the open source Java ESB. After a while, I realized that NService Bus is a bit different from Mule ESB in terms of scope. While Mule has many features in terms of connectivity and integration, NServiceBus provides ... More About: Podcast , Differences
On Small Applications
2010-03-07 12:32:00 I hear this too often: “X sounds like a great pattern, but it’s overkill for small applications”. Many patterns have been subjected to this including (but not limited to): SOA, DDD, CQRS, ORM, etc. Often the statement is made by a person without experience in the given pattern (though possibly experienced in other patterns). Let’s ... More About: Applications , Architecture , Management , Development , The Team
NServiceBus 2.0 RTM
2010-03-02 01:06:00 Well, it’s been a long time coming. NService Bus 2.0 RTM is now generally available. There were some small tweaks after the RC2 but I’m happy to say that, all in all, this was a very quiet stabilization period. Key customers have reported very high levels of satisfaction with the NServiceBus stability, scalability, and simplicity. For example Conduit.com has very ...
CQRS Video Online
2010-02-26 10:42:00 A couple of weeks ago I gave a talk on Command/Query Responsibility Segregation in London. The recording of the talk is online here. There is one important thing that I didn’t have enough time to cover, but I want you to keep in mind as you’re watching this. It is that CQRS is applicable only *within* ... More About: Video , Architecture , Community , Scalability , Online
Eventual Consistency Is Just Caching
2010-02-21 07:27:00 People seem to make a big deal about eventual consistency. Those same people don’t seem to think twice about using a cache to improve the performance of their system when the database can’t handle it. That cache holds a copy of data that isn’t 100% synchronized with the database. That’s eventual consistency. Get over it. More About: Caching , Consistency
Courses and Training
More articles from this author:2010-02-10 10:00:00 I’ve been hesitant to blog about the dates and locations that I offer courses. While any independent consultant can’t be above some shameless self-promotion, I’ve tried to keep this blog focused on content that is applicable to the broadest cross-section of my readership. Course information was something that I had been putting out only via ... More About: Training 1, 2, 3, 4, 5, 6, 7 |



