Microsoft Build 2019: App Developer Highlights

For Microsoft Build 2019, I have tried to summarize the most important announcements for Application Developers, Cloud Native fans and Data & AI engineers here at one place.

Microsoft Build 2019: App Developer Highlights

This time a year, it often feels like Christmas for Nerds! With Microsoft Build, Google I/O and Red Hat Summit, a lot of major tech conferences all take place in the same week. At least for Microsoft Build 2019, I have tried to summarize the most important announcements for Application Developers, Cloud Native fans and Data & AI engineers here at one place.


☝️ Advertisement Block: I will buy myself a pizza every time I make enough money with these ads to do so. So please feed a hungry developer and consider disabling your Ad Blocker.


Application Development

New Windows Terminal with WSL2

Official announcement | GitHub repository

Is this the real life? Is this just fantasy? Microsoft announced a new Terminal for Developers on Windows. Yes, you read correctly: A Terminal. With bash and everything you ever wanted. With the new Windows Subsystem for Linux (WSL2), Windows is not longer only emulating Linux, but it gets shipped with a full Linux kernel.

.NET 5

Official announcement

There are a bunch of .NETs variants out there. While .NET Framework is the most mature one, it only works on Windows. Its younger brother .NET Core runs on Windows, Linux and Mac but is not exactly as capable as the full framework. Mono is a .NET implementation, that runs on iOS and Android (Xamarin is based on it). The new evolution of the .NET platform will combine all of them into one platform and will be released November 2020.

Visual Studio Online

Official announcement

Visual Studio Online is a light-weight version of Visual Studio Code that helps you out whenever you need a code editor but don’t have on on hand. It runs in the browser and lets you connect to any environment.

Visual Studio Remote Development

Official announcement

You can now not only edit, compile and run local code with Visual Studio Code, you can even connect the editor to any remote host, like a Docker Container or Server and directly work on a remote file sytem. Super handy!

App Center: Mobile Backend as a Service (Preview)

Offical announcement

Visual Studio App Center, the lightweight DevOps solution for all kinds of frontend applications, gets enriched by Mobile Backend as a Service (MBaaS) capabilities starting with Offline Sync for Cosmos DB and Authentication for Mobile Apps.

Azure App Configuration Service (Preview)

Official documentation

A new Azure Service to store app configurations across environments in a scalable way in the cloud and not with the application code itself, which usually promotes poor security practices. App Configuration is complementary to Key Vault. They’re typically used side by side to store and distribute application configuration data

React Native for Windows

GitHub repository

Facebook’s popular development framework has received official Windows support
(including Xbox) due to major contributions from the Windows team. Microsoft has rewritten many components in C++ to ensure maximum performance.

App Service: VNET support for Linux (Preview)

Official announcement

App Serviceon Linux now supports Virtual Network integration, which has been a common request from customers. This enables Linux based web applications to accessresources in virtual networks, service endpoint-secured entities, and on-premises locations through ExpressRoute or site-to-site VPN.

App Service: Java 11 support

Official announcement

App Service now supports Java 11, expanding the language support to the two latestLTSversions of theJava runtime.This allows to run Java apps withoutincurring unplanned Java SE subscription fees, all while enjoying free securitypatches and platform bug fixes. Java 11 support is provided on both Linux andWindows versions of App Service.

Azure Functions: Durable stateful Functions

Official announcement

Durable Functions now supports a new stateful entities pattern, enabling you to build stateful Azure Functions that map to an actor. This way, functions can preserve state and data, while keeping the consumption-based billing model with charges only when these actor functions are running and not for idle time.

Azure Functions: Dependency Injection for .NET

Official announcement

Dependency Injection for Azure Functions that are written in .NET. It feels very familiar with the one from ASP.NETand will definitely help to clear a lot of clutter from existing and new code!

Azure Functions: Expose endpoints via API Management

Official annoucement

Developers can now expose HTTP trigger Functions through a new or an existing API in API Management. If your Function App has Application Insights logging enabled, you may also opt-in for automatic configuration of logging your API activity to the same Application Insights instance.

ML.NET 1.0

Official announcement

ML.NET allows you to train, build and ship custom machine learning models using C# or F# for scenarios such as sentiment analysis, issue classification,forecasting, recommendations and more.

DevOps

Azure DevOps: Unified YAML for Build and Release Pipelines

Official announcement

Azure DevOps now offers a unified YAML experience, so you can configure each of your pipelines to do CI, CD, or CI and CD together. Defining your pipelines using YAML documents allows you to check the configuration of your CI/CD into source control together with your application’s code, for easy management, versioning, and control.

Azure DevOps: Native Kubernetes integration

Official announcement

Kubernetes is now fully integrated with Azure Pipelines environments. This lets you view all the deployments, daemonsets, etc, running on Kubernetes in each environment, completed by insights such as readiness and liveness probes of pods.

Azure DevOps: MLOps for Machine Learning

Official announcement

MLOps or DevOps for machine learning capabilities, including Azure DevOps integration in Azure Machine Learning that enables Azure DevOps to be used to manage the entire machine learning lifecycle including model reproducibility, validation, deployment, and retraining.

Cloud Native

Kubernetes based event-driven autoscaling (KEDA) announced

Official announcement

KEDA provides aFaaS-like model of event-aware scaling,where deployments candynamicallyscale to and from zero based ondemand. KEDA also brings more event sources to Kubernetes. Microsoft and Red Hat partnered to buildthisopen source componenttoprovide event-driven capabilities for anyKubernetesworkload. KEDA enables any container to scale from zero to potentially thousands of instances based on event metrics like the length of a Kafka stream or an Azure Queue.

AKS: Azure Policy support (Preview)

Official announcement

Azure Policy allows you to govern your resources on every service exposed to Azure Resource Manager (at the control plane). With this release, Azure Policy goes even deeper into AKS, allowing you to set policies inside AKS clusters on pods, namespaces and ingress. This extends the capability of Azure Policy to get deeper and deeper into Azure services and give you more control over your resources.

AKS: Multi-node pools (Preview)

Official announcement

Multiple node pools for AKS allow customers to use different virtual machine sizes in a node pool supporting a variety of workloads in a single AKS cluster. For example, an e-commerce website can have a node pool for a billing service and another for a machine learning-based recommendation service, each with potentiallydifferent VM types.

AKS: Windows container support (Preview)

Official announcement (video)

Witht the support for multi-node pools, AKS now also adds support for Windows nodes, allowing developers to run Windows and Linux containers side-by-side in the same cluster.

AKS: Azure Dev Spaces now publically available

Official documentation

Dev Spaces is now out of preview and generally available with AKS, allowing developer teams to collaborate through sharing an AKS cluster and allowing them to work in parallel to develop and test their code.Team members can now work on different parts of an application in parallel, and they can test their code end-to-end without replicating or mocking-up dependencies.

AKS: Virtual Node now publically availbale

Official documentation

The Virtual Node feature is powered by the open source Virtual Kubelet technology, and is now out of preview available to the public. Virtual Nodes extend your Kubernetes clusters by Azure Container Instances (ACI) that start in seconds on demand to allow you to elastically provision additional pods

AKS: User-defined network policy

Official announcement

The user-defined network policy feature in AKS enables secure network segmentation within Kubernetes. This feature also allows cluster operators to control which pods can communicate with each other and with resources outside the cluster.

Azure Container Registry: New Security Features

Official documentation

With AKS gaining new security features, the Azure Container Registry (ACR) follows that path and adds support for Content Trust, Tag Locking policies and VNET and firewall support. This lets you control and manage in more detail, which services are allowed to interact with ACR in which ways.

Cosmos DB: API for etcd (Preview)

Official announcement

With etcd being the typical key-value store for the Kubernetes API, it’s extremely important for developers to ensure its availability. Cosmos DB now has a new API interface for etcd and can act at the configuration store for Kubernetes clusters while enabling developers to scale coordination and state management data on a fully managed service with 99.999 percentage high-availability.

Azure Red Hat OpenShift: Now publically available

Official announcement

Azure Red Hat OpenShift is a fully managed implementation of Red Hat OpenShift deeply integrated into the Azure control plane and provides a flexible, self-service deployment of OpenShift clusters. Azure Red Hat OpenShift is a one-of-a-kind solution in the public cloud, offering the best of OpenShift with pro-active 24/7 management and support from both Microsoft and Red Hat.

ACI: Windows Server 2019 container support (Preview)

Official announcement

Azure Container Instances (ACI) now supports Windows Server 2019-based containers. Windows Server 2019 allows for far lighter containers as compared to currently supported Windows Server 2016. Lighter containers enable faster deployments, making it easier for customers to dynamically scale workloads on ACI.

Data & AI

Cognitive Services: New OCR formats and capabilites

Official announcement

Computer Vision Read****capability of Cognitive Services extractstext from the most common file types. The team has added PDF and TIFF support as well as the ability to read multi-page documents.

Cognitive Services: New Personalizer Service (Preview)

Official announcement

Personalizer is anew Cognitive Service for developers who want to easily embed personalization capabilities into their apps. Itis built on reinforcement-learning and prioritizes relevant content and experiences for each user, improving app usability and engagement.

Cognitive Services: New Ink Recognition Service (Preview)

Official announcement

Ink Recognizer enables developers to combine the benefits of physical pen and paper with the best of the digital by embedding digital ink recognition capabilities into apps. Developers can build on top of it to make notes searchable and convert hand-written sketches into presentation-ready content.

Cognitive Services: New Conversation Transcription Service (Preview)

Official announcement

A new advanced speech-to-text capability called Conversation Transcription has been announced, that catalyzes meeting efficiency by transcribing conversations in real-time so participants can fully engage in the discussion, know who said what when, and quickly follow up on next steps.

Cognitive Services: More services available on the edge

Official announcement

Microsoft has expanded the portfolio of Cognitive Services that can run locally through a Docker container to Anomaly Detector, Speech-to-Text, and Text-to-Speech. These services will be available in containers to unlock on-premises scenarios where low latency is critical.

Azure Bot Framework: Adaptive Dialogs and Language Generation

Offical announcement

The Azure Bot framework enables developers to create logic for Bot Applications of all kinds. The new Adaptive Dialogs feature, enable developers to create more sophisticated, dynamic conversations. A new Language Generation Package streamlines the creation of smart and dynamic bot responses.

Azure Bot Framework: QnA Maker supports multi-turn dialogs

Official announcement

QnA Maker****now supports multi-turn dialogs. So you can create a bot that can troubleshoot with a series of questions or multiple dialog turns.

Cosmos DB: Apache Spark API (Preview)

Official announcement

Azure Cosmos DB gets extended by a native integration of Apache Spark. You can now run globally distributed, low latency operational analytics and AI on transactional data stored within your Cosmos databases. You can directly execute Spark queries on indexed multi-model data stored within your data partitions, without any unnecessary data movement.

Cosmos DB: Built-in Jupyter notebooks support (Preview)

Official announcement

With the native notebook experience support for all Azure Cosmos DB APIs and all data models, developers can now interactively run queries, execute ML models, explore and analyze the data stored in their Cosmos databases. The notebook experience also enables easy exploration with the stored data, building and training machine learning models, and performing inferencing on the data using the familiar Jupyter notebook experience, directly inside the Azure portal.

Azure SQL Database: New serverless compute tier (Preview)

Official documentation

With the new serverless compute tier, Azure SQL Database can automatically scale compute for single databases based on workload demand and bills for compute used per second. Serverless databases automatically pause during inactive periods when only storage is billed and automatically resume when activity returns.

Azure PostgreSQL: Oracle online migration (Preview)

Official documentation

Perform online migrations of Oracle databases hosted on-premises or on a virtual machine to Azure Database for PostgreSQL by using Azure Database Migration Service. It enables resilient migrations of Oracle databases at scale and with high reliability. Provision an instance of Database Migration Service from the Azure portal or via Azure PowerShell and create a migration project to perform the migration.

Azure Open Datasets (Preview)

Official announcement

Azure Open Datasets help customers to improve machine learning model accuracy using rich, curated open data and reduce time normally spent on both data discovery and preparation. Open Datasets are acollection of datasets from the public domain to accelerate the development of machine learning models built in Azure. Open Datasets integrates with Machine Leaning Studio or can be accessed from python notebooks in Azure Machine Learning Service.

What else?

Azure Portal: GitHub Login

Official announcement

GitHub identities are now supported as a sign in option to Azure, so developers can take their code from GitHub to all the way to Azure for deployment using just their existing GitHub credentials. This new login method works anywhere a personal Microsoft account does, from Azure to Office 365.To get started, log in using the “Sign in with GitHub” button on the Azure sign-in page or under the “Sign-in options” link on other sign-in pages.


☝️ Advertisement Block: I will buy myself a pizza every time I make enough money with these ads to do so. So please feed a hungry developer and consider disabling your Ad Blocker.