NDC London slides and link to QCW article

I’ve had a few requests for the slides from my talk at NDC London. Here it is:


John Azariah and I also wrote an article on Queue Centric Workflow for the Developer Magazine – NDC Edition. You can find the online version of the magazine here:


(You will have to flip to page 68 if you want to jump straight to the article)

Windows Azure talks at Tech Ed AU 2013

Tech Ed 2013 is less than a month away, and I am fortunate enough to be presenting again this year. I will be presenting on “Implementing Modern Cloud Patterns” along with John Azariah.

There are lots of great topics on Windows Azure this year, and I’ve tried to list all of them here. Hope you find the list useful:

Wednesday, Sept 04 2013:

Thursday, Sep 05 2013

Friday, Sept 06 2013

Modern Architecture patterns for the cloud

John Azariah and I presented at talk titled Modern Architecture patterns for the cloud at both DDD Melbourne and the .NET User group in Melbourne. Although, a lot of these patterns can be used in a non-cloud environment, it works really well in the cloud when you want to create a web scale application. The presentation is available in prezi via this link:


We created a twitter like application called WhingePool for this talk to showcase the patterns we talk about, and the source code is available in Github: https://github.com/mahesh-krishnan/WhingePool

New Windows Azure datacenters in Oz. Finally!!!

Moving applications to the cloud would seem like a no-brainer decision for companies – It provides low or zero upfront cost and low ongoing costs that is charged by the hour. In addition, it provides you with seemingly infinite resources at your disposal, and elasticity on demand – i.e. the ability to scale dynamically based on your traffic and usage.

And yet, when I go talk to customers in Australia about moving their sites across to Windows Azure, some of them are reluctant to move to the cloud citing two major concerns: Data sovereignty/regulatory requirements and network latency worries.

The reason for these concerns is that Microsoft has 6 regions around the world where Windows Azure is run from, and none of them are based in Australia. But with the announcement today that Microsoft are opening a new Australia region with two sub-regions – one in NSW, and one in VIC, it makes it easier for these companies to finally make the jump.

Data sovereignty/regulatory requirements

Data sovereignty concerns, stem from the fact that the data, which is actually stored in another country, could be subject to the laws of that country. Companies are afraid that once the data leaves the shores of Australia, they lose control on who has access to it. I have heard people quote the Patriot Act every so often, saying the “Feds” can now get their data easily. Most of these fears arise out of the lack of knowledge around these issues. If your data is legal, you really have nothing to fear about things such as the Patriot Act, but that is another story. (And of course, if you’ve broken the law and the “Feds” need access to your data, even if stored in Australia, it is highly likely that will get to it – but like I said, that is another story)

What you need to really worry about is that there are some regulations (both industry as well as government) that could cause problems for you if the data leaves the shores of Australia.

But now that Microsoft will have a data center in Australia, you do not really have to worry about it.

One other thing that excites me about the new announcement is that the new Australia region will have two datacenters and they will provide geo-replication of data without affecting sovereignty and regulatory issues.

Network Latency

As all the Windows Azure data centers currently reside outside Australia, there is always going to be some amount of network latency, when the data is accessed from Australia (unless it is exposed via a CDN). It could take several hops in some instance to get to the data, and that could be a problem for some applications. Well written web applications that are hosted within Azure, with its data also residing in the same data center may not necessarily be problematic. Although there may still be latency issues with the delivery of webpages, most of the data transfer will happen within the data center and this will not be affected by latency issues.

Problems will arise mainly when the application resides outside the data center and the data resides within (or the other way around). You can re-architect your application to avoid some of these problems (make coarse grained calls, and making your application less chatty), but you get really good gains if the latency is reduced dramatically.

And that is what you will get when the Azure data centers are located within Australia, and applications that access them also reside locally. With this announcement from Microsoft, this is soon going to be a reality.