Creating ARM Templates was easier than I thought

Recently I have been getting my teeth into Infrastructure as Code (IAC) and particularly Azure Resource Manager (ARM) Templates. Initially, I saw these things as potentially large JSON files with a massive schema and something that could consume my time learning, causing me to question if I actually wanted to learn it. Although I am…More

Dynamic content for email signatures in Outlook (an exercise in being lazy)

Every second week at OnePlace Solutions, our very enthusiastic marketing manager tells everyone in the company to update their email signature. Typically it is just changing the image below our name to show what event we are at next, or highlighting a particular product or feature recently worked on. The image is also hyperlinked to…More

Concurrent IO read or write operations with HTTPWebRequest

Recently when using the HTTPWebRequest¬†class to stream a file up to a SharePoint Online Document Library, I was consistently coming across the following issue: System.NotSupportedException: The stream does not support concurrent IO read or write operations. What was really annoying about that message is, I was not doing any concurrent operations but passing blocks of…More

Adding LaunchDarkly to your Angular CLI Application

Creating an angular app from scratch is annoying and time consuming. The easiest option is to use the Angular CLI to create a new app and its components; this gets you up and running very quickly. What I am talking about below is how to add the LaunchDarkly JavaScript library to an Angular CLI application,…More

Sending VSTS Build and Release messages to Microsoft Teams

A while back I noticed a VSTS add-in for sending messages to Slack from a VSTS Build or Release process. This was a great idea and thought that mentioned that it would be great to have an equivalent for Microsoft Teams, to which the response was: Microsoft has already created Microsoft Teams integration to VSTS,…More

Rate limit is exceeded in Application Insights REST API

When looking into the capabilities of the Application Insights REST API, I came across the following error returned when attempting to get a list of events. { ¬† “error”: { “message”: “Rate limit is exceeded”, ¬† ¬†“code”: “ThrottledError”, ¬† ¬†“innererror”: { ¬† ¬† “code”: “ThrottledError”, ¬† ¬† ¬†“message”: “Rate limit of 0 per day is…More