James Chambers

Husband, Father, Mentor, Humanitarian & Software Developer

My good friend Simon Timms (not Tibbs) reached out to me on the first day of this series and said, “I’d love to write a post on Functions using F#”. I said that sounded like a fantastic idea, and now here we are. (Well, here I am, with his post. He’s on a beach…)

When we start getting serious about using Azure Functions, we’re likely going to want a little more horsepower to edit them. Visual Studio gives us a top-flight editing experience, but how do we work with Azure Functions locally? And how do we deploy them to the cloud?

When we use GitHub to store our code, we enable an easy way to deploy our functions continuously to Azure, but it doesn’t come without caveats. This post is about getting you familiar with the benefits, side-effects and consideration points you’ll need to make as you move towards continuous deployment in Azure Functions.

You want to scale wide. That is it. That is the trick and the magic and the secret sauce of cloud computing. Do as much as you want to, as long as it’s as little as possible. Break your work down into smaller parts and let Azure Functions handle the scaling part.

Here’s the scenario: you have some block of processing that needs to be executed everytime a file is pushed up into your blob storage account. The solution: use Azure Functions and the integration module for blob-triggers so that you don’t have to do any of the heavy lifting.

In this post we’ll look at using a storage account trigger to automatically have an image processed as part of an Azure Function App. Not just to be used for image processing, any type of object can trigger a block of work and it will follow these same mechanics.

Even when you’re dealing with Function Apps that have limited scope it’s a good idea to break your scripts up into manageable, possibly reusable chunks. This is especially true if you want to work with the same data in several Functions in your app.

This is one way you can organize your scripts, types and objects in Azure Function Apps, and we’ll have a deeper look at another approach later in this series.

I’m exploring the how-to’s in Azure Functions that go beyond hello world. I’m going to take the next five days to cover some interesting scenarios that I know I will find useful in my upcoming projects and hope that you can find value in it, too.