Saturday, December 31, 2016

Year 2016 in review, Integration is still relevant


Last few hours before 2016 ends and what a year it has been as so many things happened. The year started off with finalizing and publishing an eBook on extensibility of BizTalk Server, which is available for free. My buddy Saravana made available through BizTalk360 website.


The publishing of the book marked the first major milestone in 2016. The collaboration of Eldert, Johann and myself as authors and three awesome reviewers in Mark, James and Sandro delivered a 150-page book on the power of .NET and BizTalk.
With the release of the book, Eldert and myself embarked on a speaking tour to promote the book, which we did in front of the BizTalk User Group in the Netherlands, online through integration Monday and in Sweden (Stockholm, Gothenburg). Thanks Mikael, Johan and Peter!!!


In the spring (May) I presented at Integrate 2016 on IoT end to end leveraging the Microsoft Azure Platform services. And this was in front of almost 400 people.



Who would have thought that integration is irrelevant? It’s not! Thanks for  Saravana and the BizTalk360 team for making this three-day event happening. Integrate 2016 was a success and for me my second major milestone in 2016.


Before Integrate 2016 Kent, his wife Melissa travelled through the UK and Scotland enjoying various country sides. One of the best days was hanging out with Michael in Newcastle. A really nice place with some great bars and restaurants.


After Integrate I went to TUGA IT, a large two-day conference in Lisbon. Thanks to Sandro I got invited to speak together with Nino. The three of us did a full day workshop on integration on Friday and a few talks on Saturday.


We had a blast and I really enjoyed Lisbon together with Nino and Sandro. Thanks to Niko Neugebauer and other Portuguese involved! Before I left I spend a full day exploring Lisbon with Sandro.


After Integrate and TUGA IT I went to Sweden with Eldert to talk about BizTalk Extensibility and another topic Azure Web Jobs. Sweden and its user groups are awesome, great welcome, excellent hosting environments and crowd. In Stockholm, we had a great user group event with several speakers including Mikael, Johan, Eldert, Robin, Ashwin and myself. The next day Eldert and myself went to Gothenburg to speak on extensibility and Web Jobs.

The summer holidays I spent in Italy and started to seriously prepare for third major milestone in 2016, the NYC marathon. In 2013 I ran the Berlin marathon together with Kent and decided or at least I said I will do another, preferably New York. Once Kent and his brother Kurt decided they wanted to run it when they turned 40 I said I am in!


The race was brutal and the bridges were quite the experience and challenge. It was a psychical and mental test yet I managed to finish with 5 hours.


My Canadian buddies finished just a few minutes later and then we enjoyed our medals with some great food and beers.


Thanks Kent and Kurt for letting me join in this endeavor. Our next challenge might be in 2018.


The next stop after the Marathon was the MVP Summit, which started the day after NYC Marathon. And to start things of was a nice game of the Seahawks playing the Bills. Lots of MVP and some MS folks went to the game.


The MVP Summit was a great experience as there was lots to share and engagements with the product teams.


You always run into someone you know ☺


This summit took place during the elections, hence we spent an evening together at Dan and Ola, who organized a great barbeque.


The outcome was not what we thought it would be, however, we still had a great time.


One of the traditions during the Summit is visiting Joey’s in Bellevue, which of course we did.


And Moksha our favorite Indian Cuisine place.


Another thing we did was visiting Tord, PG BizTalk Server and his family in Redmond.

And the BizTalk Crew was reunited once again.


We know BizTalk Server is in good hands now!
I really enjoyed my stay in Seattle. I went to another football game with Kent. We watched the Washington Huskies.


Before I left Seattle, I spent some time with my great friend Tom and his wife JoAnn. We watched the Seahawks play the Patriots on Sunday in a bar. Yes, more American Football, I love it. And it was an epic game, with the Hawks winning the game and cheers in the bar!


It was quite a trip, New York, running the Marathon followed by the MVP Summit. Something to remember as long as I will live.

In November and December I spend time writing some quest blogs for Saravana, a LinkedIn article on today’s integration and presenting at our Local user group.


In 2017 I, will kick the tires with some speaking engagements in Australia. In February I, will spent two and a half week with Mick, Eldert, Rene, Dean, Bill, Dan and many others. This will be followed by the global integration boot camp in March, where I’ll be speaking at the location of motion10 together with Eldert, Rob, Gijs, and Tomasso. In April and May I will be on the road to probably to speak in Portugal, Sweden and some other countries or venues. It will be an interesting year 2017!

P.S. I lost some kind of bet I have to wear some jersey with a name of a soccer player I really like, NOT!!!
















Cheers,
Steef-Jan




Sunday, December 04, 2016

Microsoft Azure Function GA

In this blog post we will discuss an Azure Service called Azure Functions. This service has recently (15th of November) gone GA (General Available) and provides a capability of running small pieces of code in Azure. With functions, you do not have to deal that much with infrastructure, it’s the responsibility of Azure or an application (see Azure Functions Overview). The functionality you develop in a browser i.e. in the Azure Portal (Function App or https://functions.azure.com/), test it and done. The only aspects other than the code are scalability and pricing.

Basic Walkthrough of creating an Azure Function


In the Azure Portal, you can navigate/search for Function App. And click on Function App. Next, you’ll see a button Create and once you press that a pane will appear.




In this pane, you specify the name for the app, select a subscription, create or add to the existing resource group, choose a hosting plan, location and choose a storage account. Hit create and a quick start tab will appear once the app has been provisioned, where you can choose a scenario, a preferred language or create your own function. You can choose for the Webhook + API scenario with C# and click “Create this function”, which will create an HTTP triggered function. The first thing that will happen is that you will be taken through a tour guiding you through several tabs and options. The focus will be on the development tab once you complete the tour.














By choosing the scenario “Webhook + API” you instantly get access to sample code you can leverage. The code represents a HTTP request that takes a request and returns with a response either Hello plus or that you’ll have to provide a query string. You can run this straight away or call via Postman i.e. copy the Function URL and execute a GET.

By choosing the Integrate tab you can change the trigger, input and output bindings for your function. By clicking the document plus sign you’ll see information on the setting for HTTP and webhook bindings, including more sample code (see also Azure Functions HTTP and webhook bindings). In the next tab Manage you can enable/disable the function, and manage function keys, which are intended for security purposes (see also Working with Keys). In the Monitor tab, you observe your function runs.















The Function app settings tab below shows function app settings, that hook into the capabilities of the app service, where basically the function apps run.
















In the Development tab, you can test your function by selecting test and configure how you like to test your function.
















The development environment or feature of functions provides you with the necessary tools to build, test and deploy your function. You do not specifically need any other tools like Postman. However, the latter can be useful to see if your function is accessible from the outside. For testing a function see Testing Azure Functions.

Considerations


The Azure function can be another solution building block in your toolbox. From a solution architecture perspective, you a few similar building blocks available such as WebJob, Flow, and Logic Apps. All capable of solving integration problems and/or automate business process. Fortunately there is guidance on what to choose: Choose between Flow, Logic Apps, Functions, and WebJobs.

Pricing is another aspect of any Azure Service you use. With functions, you can either opt for a consumption plan or regular pricing through App Service Plan, see Function Pricing. You can use the calculator to have a better indication of price.

Depending on your requirements i.e. predominantly at what scale you want to run your functions, see Scaling Azure Functions.

To build Azure Functions you can use a browser as it is a server less coding experience. However, you have the possibility of building a function using Visual Studio 2015. Note that this is still in preview.

In case you run into issues with Functions you have several options:

Conclusion


In this blog post we scratched the service of Azure Functions by providing a basic walk through of creating a function. The service has gone GA and extends the capabilities Microsoft Azure brings to its consumers. It’s a great addition to building Azure solutions.

Cheers,

Steef-Jan