Azure Functions .NET UG Tour

A few months ago I put together an Azure Functions lightening talk to present at MS Ignite and I've realized that there was so much more to be said than 15 minutes. So I've turned it into a full talk and the idea of this talk was to cover from end-to-end the whole development lifecycle of Azure Functions and also give several different ways to do so.

In this talk, I give an overview of Serverless, the pros and cons, when not to use it and a few other things. I won't put the whole content of the talk in the post here as I don't think it's really relevant. You can check the slide deck for the whole thing.

The Talk

Talk recorded by SSW TV

Demos
Creating Azure Function using Cli
//Installing npm package
npm i -g azure-functions-core-tools  
//Creating new directory
md NewFolder  
//Getting into directory
cd NewFolder  
//Initiate Function App
func init  
//Create Function. Follow steps from the command
func new  
//Running Function App
func host start  
Debugging it

For C# you will need to download the Azure Functions Tools for Visual Studio.
Run func host start --debug vs, it will prompt to select a new or existing instance of Visual Studio and off you go.

For JavaScript just use VS Code.
Run func host start --debug vscode, after it's started, open your function app in Visual Studio Code and press F5. This should attach the process automatically

Deploying it

There are several ways to deploy your function app to the Portal.

Configuring Continuous Deployment via Portal

  • Commit your code to a remote repository. Ex.: GitHub
  • Create a function app in the portal
  • Platform Features > Deployment Options > Setup

Via Core Tools

  • Create a function app in the Portal
  • Run func azure functionapp publish [Function App Name]
  • If you don't know the name of your function, you can use the Portal or run func azure functionapp list

Pushing your local Git repository straight to the remote repository in the cloud

  • Create a function app in the Portal
  • Create a deployment credential: Platform Features > Deployment Credential
  • Run func azure functionapp list to get the repository URL
  • Run git clone [Repository URL] to download the source code
  • Make changes to the code and push it back in. For the basics of Git check this
Use Cases
Resources
Tour Experience

We did the Canberra .NET User Group on a Monday, Brisbane .NET UG on Tuesday and the Sydnet .NET UG on Wednesday. So for me, who's still not that used with all the talks, was pretty full-on, but a great experience all the same.

I used to think that presenting the same content over and over again would be pretty boring and it kind of is when thinking from the audience perspective, but it feels completely different from the presenter's. Each delivery is different, the audience is different, they will come up with different questions, also the talk itself evolves every time, which although the audience doesn't notice, we do. A small thing that you change makes a big improvement in the overall delivery.

It's tiring, there's a lot of preparation involved, a lot of test pleases. I still get nervous before each single talk. I hardly sleep. But it's awesome, it's very self-satisfying and I'd do it all over again. In fact, I'm looking forward to doing it again. Next time we'll include Melbourne in the tour.

Thanks
  • Firstly and mostly my wife for supporting me in this new adventure
  • Secondly SSW for taking care of costs and giving all the support
  • Jason for joining me on this tour
  • SSW Brisbane team for all the test pleases
  • Grant Holliday for organizing the Canberra .NET UG
  • David Cook for organizing the Brisbane .NET UG
  • SSW Sydney team for organizing the Sydnet .NET UG

Comments