June 2018

Volume 33 Number 6

[C#]

Tuple Trouble: Why C# Tuples Get to Break the Guidelines

Mark Michaelis

If value types are supposed to be immutable and fields encapsulated by properties, why was the C# 7.0 tuple type explicitly and intentionally designed not to follow the guidelines?

Column

[Data Points]

Replacing a Bulky API with Azure Functions

Julie Lerman

Julie Lerman updates some old NodeJS Web APIs that worked with Azure DocumentDB to take advantage of Azure Functions and Cosmos DB and realizes she can eliminate a whole lot of the code. Learn how that’s possible.

[Blockchain]

Introducing Azure Blockchain Workbench

Stefano Tempesta

At the Build 2018 Conference, Microsoft announced Azure Blockchain Workbench for creating blockchain applications that leverage shared business processes and data with multiple, semi-trusted organizations. Learn how Azure Blockchain Workbench streamlines development of complex blockchain applications, so your organization can focus less on scaffolding and more on logic and smart contracts.

Column

[The Working Programmer]

How To Be MEAN: Reactive Programming

Ted Neward

Reactive programming is a new concept around how to view the “flow” of information—and the resultant control exhibited in code—within a Web application. In this month's column, Ted Neward explores reactive programming with Angular.

[Azure Databricks]

Monitoring Databricks Jobs with Application Insights

Joseph Fultz

Application Insights lets you analyze and monitor your runtime operations, giving you information, insights, and alerts about what’s happening now. This article describes how to use Application Insights for operational monitoring of Azure Databricks jobs.

Column

[Test Run]

Neural Regression Using CNTK

James McCaffrey

The goal of a regression problem is to make a prediction where the value to predict is a single numeric value. James McCaffrey explains how to use the Microsoft CNTK library to create a neural network regression model, which is more complex than the classical statistics linear regression technique, but usually more accurate.

[C++]

Effective Async with Coroutines and C++/WinRT

Kenny Kerr

Learn all about WinRT's async pattern and the way in which coroutines are used to both call and produce async methods. You'll learn how to take advantage of the thread pool and optionally control the calling context.

Column

[Don't Get Me Started]

Ol’ Man River

David S. Platt

David Platt has written about Visual Basic Classic in the past. This month he explores Scott Hanselman’s successful effort at putting a VB6 app into the Microsoft Store.

Column

[Editor's Note]

Our Intelligent Future

Michael Desmond

Artificial Intelligence was front and center at last month's Build conference. What's behind Microsoft's effort to turn every developer into an AI developer?