2019 was the year the Kubernetes debates ended. Everyone had picked a side, most of them picked Kubernetes, and the conversation shifted from "should we" to "how do we make this production-ready". The orchestration wars were over. The real work was just beginning.

Kubernetes wins the orchestration war

Docker Swarm and Apache Mesos competed with Kubernetes for container orchestration from 2015 to 2018. By 2019 the market has decided. All three major cloud providers offer managed Kubernetes (AKS GA in 2019, EKS launched 2018, GKE was first). Red Hat OpenShift 4 built on Kubernetes. The Kubernetes ecosystem, Helm, Prometheus, Istio, Argo, reached production readiness that Docker Swarm never achieved.

.NET Core 3.0 and desktop applications

.NET Core 3.0 (September 2019) brought Windows Forms and WPF support to .NET Core for the first time. Desktop application developers on .NET Framework now have a migration path to the cross-platform, performance-improved .NET Core. The C# 8.0 language features, nullable reference types, async streams, switch expressions, shipped with .NET Core 3.0 and significantly improved the language's safety and expressiveness.

GPT-2 and the responsible AI debate

OpenAI's GPT-2 was released in stages through 2019, with the largest model held back due to 'concerns about malicious applications'. The staged release was controversial, many researchers argued the model was not as dangerous as OpenAI claimed. The episode highlighted the emerging challenge of responsible AI release practices and became a reference point for the debate about AI capability disclosure.

The service mesh year

2019 was the year service meshes moved from proof-of-concept to production consideration. Istio 1.0 (2018) matured through the 1.1, 1.2, and 1.3 releases. Linkerd 2 (Buoyant) launched as a lighter-weight alternative. AWS App Mesh entered GA. The CNCF's SMI (Service Mesh Interface) specification attempted to standardise the service mesh API surface. Enterprise adoption of service meshes accelerated.