TWIL: November 21, 2021

Last week I returned to hearing the usual podcasts and got to do some research on API Management as well as Serverless options in Microsoft Azure. If these topics interest you, then good reading!


.NET Rocks

Episode 1764: Azure Infrastructure as Code with Eduard Keiholz, Erwin Staal and Henry Been
How do you build your Azure infrastructure? Carl and Richard talk to Eduard Keiholz, Erwin Staal, and Henry Been about their upcoming book on building Azure infrastructure with code using ARM Templates and Bicep. The conversation dives into a deep love for JSON that no one has – and the amount of tweaking it takes to build ARM Templates from JSON. Enter Bicep that gives you a more familiar dot notation that works well with intellisense and ultimately transpiles into the JSON that Azure needs.

Episode 1765: DNSimple API with Enrique Comba
How do you automate DNS changes? And why would you? Carl and Richard talk to Enrique Comba, the DNSimple Ambassador, about programming against the DNSimple API. Enrique talks about automating migration from other DNS services – in fact, there are community-created products for migrating from various ‘popular’ DNS providers to DNSimple. The conversation also ranges over other tasks that are difficult to do manually, like certificate generation and renewal. If you’re creating multi-tenant applications, configuration of DNS is a normal part of the job, and it should be automated – there are lots of reasons to dive into the API!

The Azure Podcast

Episode 394: Quantum Update
Principal Software Engineer in the Quantum Computing group, Mariia Mykhailova  talks to us of the state of the technology and gives us tips on how to upskill and build Quantum applications today that can be deployed to Azure.

Episode 398: Hear ye! Hear ye!
Evan and Sujit catch up on the flurry of Azure updates from the past week. A lot of new stuff related to Azure Kubernetes Service (AKS), but also Azure Static Web Apps and also Azure Spring Cloud.

Episode 399: Chain of blocks evolution
We talk to our very own Cale Teeter about the current state of Blockchain technology and how it is changing the way we deploy these networks in Azure and build applications.

API Management

You need API management help: 11 open-source tools to consider
There is a lot to consider when providing an API. From how the service is managed to style governance, the developer portal, security, gateway, and monetization, API owners have many features to maintain and support. While there are plenty of commercial API management options out there, from providers such as 3Scale, Kong, and Axway, among others, some API providers may desire to build upon open-source components.

10 Top Open Source API Gateways and Management Tools
To businesses and other organizations, APIs have become the core of digital transformation strategies. The growth in the use of APIs has increased the use of API management solutions by developers to publish their APIs to the public or external developers, internal developers as well as other partners. Are you searching for an open-source API management solution for your company? Then this guide is made just for you, continue reading.

RAML (RESTfull API Modeling Language)
RAML stands for RESTful API Modeling Language. It’s a way of describing practically-RESTful APIs in a way that’s highly readable by both humans and computers. We say “practically RESTful” because, today in the real world, very few APIs today actually obey all constraints of REST. RAML isn’t strict: for now, it focuses on cleanly describing resources, methods, parameters, responses, media types, and other HTTP constructs that form the basis for modern APIs that obey many, though perhaps not all, RESTful constraints.

The Springfox suite of java libraries are all about automating the generation of machine and human readable specifications for JSON APIs written using the spring family of projects. Springfox works by examining an application, once, at runtime to infer API semantics based on spring configurations, class structure and various compile time java Annotations.


Serverless – What is it?
To better understand the definition of serverless, we first need to follow the path many companies took in their cloud adoption. Many companies have started at Infrastructure as a Service (IaaS), Container as a Service (CaaS) or Platform as a Service (PaaS). Some have also already experimented with Functions as a Service or have built entire application architectures using these Serverless Functions.

Abstracting the Back-end with FaaS
Public cloud vendors are in the business of providing abstractions. Functions as a Service (FaaS) are one of the newer services offered by Cloud vendors. Developers are using FaaS to implement back-end logic without configuring a single server. This has sparked a lot of interest in Serverless Architectures. The question I want to ask, is FaaS the ultimate abstraction of Back-end logic.

REST API – HTTP GET with Request Body
Here I am going to discuss about whether it is a good idea to send parameter in request body of the HTTP GET request or not. Request body is also known as payload of the request. I will also discuss about idempotent and safe http methods.

Azure Functions

What are Durable Functions?
Durable Functions is an extension of Azure Functions that lets you write stateful functions in a serverless compute environment. The extension lets you define stateful workflows by writing orchestrator functions and stateful entities by writing entity functions using the Azure Functions programming model. Behind the scenes, the extension manages state, checkpoints, and restarts for you, allowing you to focus on your business logic.

Integrating Rule Engines with Azure Functions and LogicApps
If you want to include a simple rule engine in your Microsoft LogicApps workflow or if you’re going to create a REST service which exposes a rules engine you can definitely use Azure Functions. With Azure Functions, you can use libraries of the rich npm eco-system and so you can extend the functionality of your Microsoft LogicApps conveniently.

Comparing Container Apps with other Azure container options
There are many options for teams to build and deploy cloud native and containerized applications on Azure. This article will help you understand which scenarios and use cases are best suited for Azure Container Apps and how it compares to other container options on Azure including: Azure App Service, Azure Container Instances, Azure Kubernetes Service, Azure Functions and Azure Spring Cloud.

Azure Integration

Choose the right integration and automation services in Azure
This article compares the following Microsoft cloud services: Microsoft Power Automate, Azure Logic Apps, Azure Functions and Azure App Service WebJobs. All of these services can solve integration problems and automate business processes. They can all define input, actions, conditions, and output. You can run each of them on a schedule or trigger. Each service has unique advantages, and this article explains the differences.

Power Automate vs Logic Apps
Power Automate and Azure Logic Apps are workflow services that can automate your processes business or system and integrate with Microsoft and 3rd party services with over 300 connectors. These powerful services are designed to get you going quickly, building the workflow between business services providing that familiarity without having the steep learning curve.

Azure Messaging

Azure Event Hubs — A big data streaming platform and event ingestion service
Azure Event Hubs is a big data streaming platform and event ingestion service. It can receive and process millions of events per second. Data sent to an event hub can be transformed and stored by using any real-time analytics provider or batching/storage adapters.

Choose between Azure messaging services – Event Grid, Event Hubs, and Service Bus
Azure offers three services that assist with delivering events or messages throughout a solution: Azure Event Grid, Azure Event Hubs and Azure Service Bus. Although they have some similarities, each service is designed for particular scenarios. This article describes the differences between these services, and helps you understand which one to choose for your application. In many cases, the messaging services are complementary and can be used together.

Have a great week!

Photo by Anton Maksimov juvnsky on Unsplash