Development

This Week in Programming: Microsoft Build Keeps Pace Amidst Pandemic

23 May 2020 6:00am, by

Another week, another virtual conference, this time with Microsoft delivering Microsoft Build in the form of a straight 48-hour marathon of repeating sessions across time zones to appease to its global audience. And lucky you, if you missed any of it, it’s all available online for your leisurely viewing.

While others have outright canceled their developer conferences, or held back on the slew of announcements you might expect at such an event, Microsoft offered a dizzying stream of new developer features this week, from the expansion of Visual Studio 2019 support for Visual Studio Codespaces to the launch of Project Reunion, which is meant to reunify the experience of Windows-based app development.

If I’m being honest, despite the move to the online format, the amount of news is a bit overwhelming, so, before looking around at other developer-centric news around the web, we’ll take just a quick look at some highlights from Build 2020. Of course, one place to start might be with Microsoft CEO Satya Nadella‘s keynote, which offers an overview of the company’s expansive efforts and impact.

If you’re looking for a one-stop spot for news from this week’s developer conference, the company does sum much of the developer-centric stuff up in one blog post looking at how developers can code, collaborate, and ship their apps from anywhere. On the code side, Microsoft announced a bunch of things – the release of .NET 5 Preview 4, ASP.NET Blazor WebAssembly, and C# 9.0, just to start. While new features and language versions are exciting, perhaps even more exciting is the announcement that Microsoft is open sourcing GW-BASIC to join MS-DOS. Who needs new languages when you can spend your time poring over assembly code from 1983, right?

Many of the announcements this week also centered around Microsoft Azure, ranging from the general availability of Azure Kubernetes Service (AKS) support for Windows Server containers to additions to Azure Cognitive Services to integrations of GitHub Actions for Azure into Visual Studio Code, Azure CLI and the Azure Portal. Oh, not to mention the AI supercomputer based in Azure that the company said was built in just six months. In his keynote, Nadella explained that they were “innovating at every layer, from edge to hybrid to data and AI” and the breadth of announcements surely seem to back up this claim. Surely, the release of Windows Terminal 1.0, bringing that Linux experience into Windows, is evidence that we’ve entered a bold new world — perhaps, after a long wait, 2020 will finally be the year of Linux on the Windows desktop — wait, wasn’t that 2019?

This Week in Programming

  • Start Your (Contract Tracing) Engines! Last month, we wrote a bit about the difficulties of digital contact tracing and looked at some potential solutions, including a proposal by Apple and Google to work together to build software “with the added perk of being baked into both Android and iOS, so that the two dominant mobile operating systems can not only communicate with each other, but run such a software in the background.” Well, that effort has borne fruit in the form of the newly released Exposure Notification API, which it hopes will be the basis for apps built by local health agencies. “What we’ve built is not an app — rather public health agencies will incorporate the API into their own apps that people install,” the companies wrote in a joint statement. “Today, this technology is in the hands of public health agencies across the world who will take the lead and we will continue to support their efforts.” Now, to just deal with that ever present and pesky user adoption and opt-in part…
  • Go 1.15 Adds Tooling Changes: The 16th major version of the Go programming language has entered “feature lock” and is expected for Aug. 1, with what is said to be “fewer changes than usual” and with most of the major changes coming as “behind-the-scenes or in the tooling,” according to a look at what’s coming in Go 1.15. Those changes include a new linker that will speed up build times and reduce the size of binaries, as well as “performance improvements to the language’s runtime, changes to the architectures supported, and some updates to the standard library.” Overall, it should be a solid upgrade for the language. With more than two months until the release of Go 1.15, there is time to test your own code using the gotip tool, or by waiting for the binary beta release on June 1.

  • Java Turns 25: It’s been 25 years now since the appearance of the Java programming language and InfoWorld offers a look at where the language has been and where it’s going. Having been born from the “Oak” project, they write, “object-oriented Java gained fame for its ‘write once, run anywhere’ portability […] Java continues to rank among the top three programming languages in the most prominent language popularity indexes.” Even in the cloud native world, Java is a stalwart go-to, with things like Quarkus and the Spring framework keeping the language fresh, and development on the language continues strong. Java 14 was released just two months ago and JDK 15 is scheduled for September 2020.
  • Deno Looks to Replace Node.js: The TypeScript and Javascript runtime Deno has hit version 1.0, and the blog post behind the release offers some thought behind why it is a better option than Node.js — especially given that creator Ryan Dahl also created Node.js. Node, they explain, “was designed in 2009 when JavaScript was a much different language” and “had to invent concepts which were later taken up by the standards organizations and added to the language differently.” As a result, “building Node projects can become an arduous endeavor, involving managing build systems and other heavy handed tooling that takes away from the fun of dynamic language scripting.” And thus, Deno was born and made public a couple years back, now providing a Rust-based runtime for running JavaScript and TypeScript outside of the browser.

  • Knative Adds New TOC Members: For those of you following along at home, we’ve been keeping track of the saga of Knative and its governance since last fall, when Google made clear it would not be donating the serverless project to a neutral parent organization such as the CNCF. This week, Google announced that Knative has elected new TOC members, effectively yielding “a new technical stewardship for Knative, with members representing RedHat, VMWare and Google,” which will guide the project for the next two years. As for CNCF donation, that seems to still be a solid nope.

Red Hat is a sponsor of The New Stack.

A newsletter digest of the week’s most important stories & analyses.