Tom Hollander's blog

Head in the clouds

Detecting drift between ARM templates and Azure resource groups

In DevOps Utopia, all of your Azure resources are deployed from ARM templates using a Continuous...

Author: Tom Hollander Date: 10/16/2017

Get Alerts as you approach your Azure resource quotas

Updated 16/06/2107 to also return Network usage  Each Azure subscription has a bunch of limits and...

Author: Tom Hollander Date: 06/11/2017

Industrial Scale Onboarding in Microsoft Azure

In my last post on Industrial Scale RBAC, I alluded to the fact that in an enterprise context you'll...

Author: Tom Hollander Date: 05/30/2017

Industrial Scale RBAC in Microsoft Azure

If you're building a cloud service with just a few of your closest friends, you can forgiven for not...

Author: Tom Hollander Date: 05/29/2017

Exporting details of Azure Virtual Machines to CSV/Excel

In my current role as a Cloud Solution Architect, I'm often asked to take a look at a customer's...

Author: Tom Hollander Date: 11/22/2016

Migrating Azure IaaS solutions from ASM to ARM using MigAz

Anyone who has previously deployed Azure IaaS solutions using the older Azure Service Management...

Author: Tom Hollander Date: 07/16/2016

Analysing Enterprise Azure spend by Tags

Azure Resource Manager allows you to assign custom "tags" to resources such as VMs or storage...

Author: Tom Hollander Date: 03/08/2016

Authenticating to Azure Resource Manager using AAD and Certificates

In a previous post I described how to perform unattended authentication to Azure Active Directory...

Author: Tom Hollander Date: 06/18/2015

So, you want to build a cloud service?

Great! Now, you probably have a million questions on which cloud provider, technologies and patterns...

Author: Tom Hollander Date: 06/02/2015

Azure QuickStarts: In Visual Studio and on the web

Whether you are a beginner or an experienced developer, learning a brand new API can be challenging....

Author: Tom Hollander Date: 05/10/2015

Changing the server time zone on Azure Web Apps

If you’re anything like me, you’ve probably learned that it’s a bad idea for your...

Author: Tom Hollander Date: 04/06/2015

Applying a “Web and Worker Roles” pattern to the Azure App Service

Summary: A common use for Azure Cloud Services is to implement services that utilise a “web...

Author: Tom Hollander Date: 03/31/2015

Applying some DevOps Rigour to Azure Websites’ AppSettings

Summary: Configuring Azure Websites Application Settings in the portal is fine for quick and dirty...

Author: Tom Hollander Date: 12/09/2014

Unattended authentication to Azure Management APIs with Azure Active Directory

19/06/2015: See also this new post explaining how to authenticate using Certificates to call the...

Author: Tom Hollander Date: 11/24/2014

A/B Testing with Azure Websites

In the context of websites, A/B testing, or Testing In Production, is a technique whereby different...

Author: Tom Hollander Date: 11/09/2014

Deploying multiple virtual directories to a single Azure Website

Since the beginning of time, IIS has allowed you to configure multiple virtual directories and...

Author: Tom Hollander Date: 09/21/2014

Windows Azure in Australia: Facts and Rumours

Today, Microsoft has made the long-awaited announcement that Windows Azure is coming to Australia!...

Author: Tom Hollander Date: 05/20/2013

Keep your Windows Azure applications running with custom health checks

Summary: Even though Windows Azure does a great job of keeping your VMs running, only you know...

Author: Tom Hollander Date: 05/17/2013

Running scripts from a Windows Azure role’s OnStart method

Summary: Startup scripts declared in ServiceDefinition.csdef work well in most cases, but if you...

Author: Tom Hollander Date: 05/14/2013

Using XPath to set environment variables in ServiceDefinition.csdef

In my last post on zipping IIS log files in Windows Azure, my ServiceDefinition.csdef file included...

Author: Tom Hollander Date: 05/13/2013

Zip your IIS log files before transferring with Windows Azure Diagnostics

Summary: If your Windows Azure-hosted website is really popular, the IIS log files can start to get...

Author: Tom Hollander Date: 05/08/2013

Using Windows Firewall to restrict access to Windows Azure instances

Summary: If you ever have a need to restrict access to your Windows Azure deployment to known IP...

Author: Tom Hollander Date: 05/07/2013

Keeping diagnostics in sync across Windows Azure instances

Windows Azure Diagnostics provides a great way for operations staff, developers and testers to find...

Author: Tom Hollander Date: 05/05/2013

Integrate Lync into your intranet sites using the NameCtrl plug-in

Introduction If you’re a regular user of both SharePoint and Lync, you’ve probably seen that...

Author: Tom Hollander Date: 03/02/2013

Automated Build and Deployment with Windows Azure SDK 1.6

A few months ago I posted on how to automate deployment of Windows Azure projects using MSBuild....

Author: Tom Hollander Date: 12/05/2011

Updates to Windows Azure MSBuild post for SDK 1.5

Just a quick note that I’ve edited my previous post Using MSBuild to deploy to multiple...

Author: Tom Hollander Date: 10/19/2011

Using Service Bus Topics and Subscriptions with WCF

Introduction In my last post, I showed how to use Windows Azure AppFabric Service Bus Queues with...

Author: Tom Hollander Date: 10/08/2011

Using Service Bus Queues with WCF

In 2008 I posted a series of blog articles about how to use MSMQ, WCF and IIS together. I chose to...

Author: Tom Hollander Date: 10/06/2011

Environments for Windows Azure development

What is an Environment? Anyone who has worked on a software development project will be familiar...

Author: Tom Hollander Date: 09/27/2011

Hosting Services with WAS and IIS on Windows Azure

Many developers choose to use service oriented techniques to break large systems into smaller,...

Author: Tom Hollander Date: 06/27/2011

Creating multi-series Bubble Charts in Excel

Bubble Charts are a great way to visualise data that has three numerical values for each point. Two...

Author: Tom Hollander Date: 03/27/2011

Using MSBuild to deploy to multiple Windows Azure environments

Update 6 December 2011: Windows Azure SDK 1.6 includes some significant changes to how credentials...

Author: Tom Hollander Date: 02/22/2011

Adding a Windows Firewall rule using PowerShell

PowerShell is an amazing technology which I’d love to learn to use properly some day. Unfortunately...

Author: Tom Hollander Date: 11/07/2010

The role of an architect in an agile team

I’ve just come back from Microsoft’s Tech.Ed conferences in Australia and New Zealand,...

Author: Tom Hollander Date: 09/07/2010

Get logging in Windows Azure with Enterprise Library

Hi again – yes I know it’s been a while. Recently I’ve started a new role in...

Author: Tom Hollander Date: 09/06/2010

“Suggested Resources” Visual Studio Plug-In

Today’s post is a quick plug for a new tool developed by my friend Olaf Conijn, who (amongst...

Author: Tom Hollander Date: 04/25/2010

What do you think of the EntLib 5.0 configuration tool?

Hello again! It’s been a while, I know. I’ve been busy over the last few months with several...

Author: Tom Hollander Date: 03/13/2010

See you at TechEd Australia and New Zealand

Just a quick post for anyone attending TechEd Australia and/or New Zealand, in the first couple of...

Author: Tom Hollander Date: 08/24/2009

Beware the perils of local time

Where were you at 2:15am (Sydney time) on 5 April 2009? Other than the fact that your memory is...

Author: Tom Hollander Date: 06/20/2009

Protecting against XML Entity Expansion attacks

One of the critical responsibilities of every developer and architect is to understand, and know how...

Author: Tom Hollander Date: 05/21/2009

Your guided tour of the Microsoft Solutions Development Centre

When I decided to leave the patterns & practices team to move back to Australia, one of my big...

Author: Tom Hollander Date: 05/02/2009

What do you want to see in EntLib 5.0?

As you’ve probably noticed, I’ve been on a bit of a blogging vacation of late. Rest assured that I’m...

Author: Tom Hollander Date: 03/30/2009

Enterprise Library 5.0 kick-off! Spend your $100 wisely!

It’s that time again – the kick-off for the next major release of Enterprise Library. I can’t...

Author: Tom Hollander Date: 01/27/2009

Just Released: Validation Application Block Hands-On Lab

Reposting Grigori’s announcement in case you missed it: Here’s a gift for the New Year’s. We have...

Author: Tom Hollander Date: 01/08/2009

The Joy of Code Reviews

As I mentioned in my recent post about how my team does agile, one of the core ingredients of our...

Author: Tom Hollander Date: 01/06/2009

StickyNotes for Visual Studio

Pablo Galiano, one of my friends and colleagues from my patterns & practices days, has just...

Author: Tom Hollander Date: 12/22/2008

How my team does agile

As you know, I’m a big fan of agile software development. But what exactly does “agile” mean? If you...

Author: Tom Hollander Date: 12/15/2008

Windows Live finally makes sense

Those who have followed my blog for a while should know that I’m not in the habit of using...

Author: Tom Hollander Date: 12/13/2008

Constructors and Inheritance – Why is this still so painful?

Recently my team discovered a limitation in the RelativeDateTimeValidator that ships with the...

Author: Tom Hollander Date: 11/18/2008

What did the other 37.5% want?

And so another US election is behind us. Despite the fact that I no longer live in the United...

Author: Tom Hollander Date: 11/06/2008

Next>