Using Fakes in Tests

Recently I encountered a problem that will eventually occur for any tester: that of testing a method which relies on something out of the tester’s control, in my case random number generation. If I relied on random numbers, then calling the method would give results that are outside my control. How did I get round [...]
Read more

Windows server 2012 R2 and the Cloud

It has been argued that Windows Server 2012 is the operating system for the cloud, at first glance this statement seems ironic as the vast majority of users will never interact with an operating system in a public cloud. If however you can look past this point of confusion you start to see where Windows [...]
Read more

Publishing in Windows Azure: Object Reference not set to an Instance of an Object

I recently tried to publish a web role to Windows Azure using Visual Studio 2012. Soon after telling Visual Studio to publish, I got the following error in Visual Studio’s ‘Windows Azure Activity Log’ window:</p align="justify"> In my case, my solution’s Cloud project made a reference to a X.509 certificate’s thumbprint within its configuration files, [...]
Read more

Separation of Concerns with PowerShell

Modern software is complex; often so complex that it is simply too much for one person to hold onto the big picture while digging in to the minute detail of a specific bug or feature. The “Separation of Concerns” paradigm has emerged as a practical and effective way of managing this complexity; a concise description [...]
Read more

Powershell CMDLET Development Settings

PowerShell snapins are a great way of exposing useful tools to your team, we can provide hooks into our existing code allowing us to leverage the investment in the code base through a simple cmdlet.</p align="justify"> There is a bit of a gotcha with PowerShell development however; if you need to be able to execute [...]
Read more

Running Open Source Solutions on Windows Azure

Yesterday I had the pleasure of presenting at the Building Open Source on Microsoft’s Cloud event, which is part of six steps to Windows Azure. This event is particularly important to Amido, because we believe passionately in not reinventing anything to focus on the unique problem at hand, and open source is a major part [...]
Read more

Windows Azure Storage Capacity Metrics with Powershell

Windows Azure Storage Account provide highly competitive rates for storing vast amounts of data. As inexpensive as it is once we are storing data for tens of thousands of users these costs can start to mount up. Fortunately for us the Windows Azure Storage Team have given us some insight into these the usage of [...]
Read more

Compiling PHP Extensions like Mongo and Memcache on Heroku

Heroku doesn’t ship many extensions with the default PHP buildpack, most noticeably (for me anyway) the MongoDB and ZLib extensions.</p align="justify"> When deploying a new application to Heroku you may receive an error – delving into the logs by running</p align="justify"> might show something similar to: While you can install these via PECL, with Heroku [...]
Read more

Azure Service Bus: how to Delay a Message Being Sent to the Queue

From time to time you come across a situation where you need to do a little code fakery, I recently had a similar situation where I needed to raise a BrokeredMessage but delay it by a couple of minutes.</p align="justify"> THE PROBLEM I needed to publish a BrokeredMessage to the azure service bus once a [...]
Read more

Azure Table Storage: Insert or Replace (upsert)

Recently I came across a situation where I needed to update a table storage entity but I could not be sure whether this entity still existed or had been deleted,</p align="justify"> This was due to the highly asynchronous nature of the piece I was working on coupled with the asynchronous nature of Azure Table Storage [...]
Read more

Starting the Azure Table Storage Emulator in Test

I recently had a requirement to code a test harness for a generic azure table storage repository, this can be found at Amido.Azure.Storage.TableStorage library, ideally these tests would act as a semi integration test against azure table storage so I could test the various different methods and result information such as azure table storage continuation [...]
Read more

Azure Table Storage Paging with Continuation Tokens

In order to create a paging control when utilising Azure Table Storage, a slightly different approach is required as the usual paging methods such as skip are not available.</p align="justify"> Out of the box, Azure Table Storage supports continuation tokens which are essentially small xml files acting as keys to the specific sets of data [...]
Read more

Simplifying Accessing Data from Table Storage in Windows Azure

Windows Azure Table storage is one of the options you have for storing data within Windows Azure. Table storage is a very different beast to a traditional relational approach for storing data, such as SQL Server or within Windows Azure using SQL Azure. Table storage is effectively a NoSQL data store, allowing you to store [...]
Read more

Querying the Wadlogstable in Windows Azure

Activating Logging When writing any application, particularly an application built for Azure, it is vital to have a good logging strategy in place. How many times have you heard someone in the office say “hey the system has just gone down, but we don’t know why?” It is important to log anything that can help [...]
Read more

The Art of Less

There’s always a golden moment in the lifetime of building a piece of software; it is right at the beginning when you are staring at a blank canvas – an empty solution. This moment is special because everything is still possible and the objectives are so clear. The lack of code is comprehensible. There are [...]
Read more