Push vs. Pull

Here’s from my Channel 9 Subscribe blog, an ad-hoc, single-take whiteboard discussion on “push” and “pull” communication patterns. There’s a lot of talk in the industry on push (see push notifications) and pulling/polling (long polling vs. web sockets and messaging), so I’m dissecting that space a bit and explore push vs. pull and various pattern…


Subscribe! – Getting Started with Service Bus

Over on my new Channel 9 blog I’ve started a series that will (hopefully) help novices with getting started developing applications that leverage Windows Azure Service Bus (and, in coming episodes also Service Bus for Windows Server) The first two episodes are up: Getting Started with Service Bus. Part 1: The Portal Getting Started with Service Bus….



I have a new (additional) blog. It’s not a “write” blog, it’s a “speak” blog. Over on Microsoft’s Channel 9 I started the “Subscribe!” blog last Friday night. The goal for it is to be a way to talk about middleware and specifically about my team’s product Service Bus on Channel 9. Service Bus and…


Where I’m at, what’s next, and asking for some help

Here’s a short video explaining where I’m at now (here’s a map) and what I’m up to. Meanwhile I’ve also figured out how to put sound on both channels with the setup that I have, but here it’s still just on the left channel and also doesn’t sound as good as it should as I…


Service Bus: BeginSend is no magic async pixie dust

I just got off the call with a customer and had a bit of a déjà vu from a meeting at the beginning of the week, so it looks like the misconception I’ll explain here is a bit more common than I expected. In both cases, the folks I talked to, had the about equivalent…


About the ‘D’ in ACID Transactions

I just got prompted to write this in an email reply and I think it’s worth sharing. My personal definition for ACID’s Durability tenet is as follows: “The outcome of the transaction outlasts the transaction, meaning that the result of the transaction is published to other consumers as the transaction completes. ‘I’ resolves into ‘D’.”…


Are you catching falling knives?

as I thumb through some people’s code on Github, I see a fairly large number of “catch all” exception handling cases. It’s difficult to blame folks for that, since there’s generally (and sadly) very little discipline about exception contracts and exception masking, i.e. wrapping exceptions to avoid bubbling through failure conditions of underlying implementation details….


Going Home

After just over six years in the United States, our family is going to relocate back to Germany sometime in the second half of this month. Thanks to a lot of effort by our management and HR teams at Microsoft, including our VP Scott Guthrie, I will be staying with the Windows Azure engineering group…



Today has been a lively day in some parts of the Twitterverse debating the Saga pattern. As it stands, there are a few frameworks for .NET out there that use the term “Saga” for some framework implementation of a state machine or workflow. Trouble is, that’s not what a Saga is. A Saga is a failure…