June 2019

Volume 34 Number 6

AI-Powered Biometric Security in ASP.NET Core

[ASP.NET Core 3.0]

AI-Powered Biometric Security in ASP.NET Core

Stefano Tempesta

The policy-based authorization model in ASP.NET Core 3.0 aims to decouple authorization logic from the underlying user roles. In this article, Stefano Tempesta explores this authorization process and how it can be used to secure access to a building using biometric information.

EF Core in a Docker Containerized App, Part 3Column

[Data Points]

EF Core in a Docker Containerized App, Part 3

Julie Lerman

In the final installment of her series on using EF Core and Docker together to build a containerized app and add a data persistence mechanism, Julie Lerman integrates a dedicated, containerized SQL Server into her API development.

Super-DRY Development for ASP.NET Core

[Patterns and Practices]

Super-DRY Development for ASP.NET Core

Thomas Hansen

Don’t Repeat Yourself (DRY) stands as a foundational principle of good software development. In this article, Thomas Hansen shows how to leverage DRY concepts to create a software architecture that enables the creation of an entire application using minimal code.

Coding Naked: Naked ActingColumn

[The Working Programmer]

Coding Naked: Naked Acting

Ted Neward

Actions represent an important aspect of the Naked Objects Framework experience, in that they are where behavior on an object is defined. In the fifth article in this series, Ted Neward covers the places where actions can live and how they appear in the UI.

MSIX: The Modern Way to Deploy Desktop Apps on Windows


MSIX: The Modern Way to Deploy Desktop Apps on Windows

Magnus Montin

The new MSIX packaging format builds on previous installation technologies, such as MSI and ClickOnce, and is the recommended way to install all kinds of apps on Windows going forward. This article introduces MSIX and shows how it can be used for continuous integration.

Exploring Data with RColumn

[Artificially Intelligent]

Exploring Data with R

Frank La

Frank La Vigne explores the R programming language, which has emerged as a powerful tool for data wrangling and mathematical processing, thanks to its wide array of built-in statistical algorithms and extensibility via functions and extension packages.

Text-To-Speech Synthesis in .NET


Text-To-Speech Synthesis in .NET

Ilia Smirnov

Advances in Text-to-Speech synthesis (TTS) enable increasingly natural and lifelike machine output. Learn about unit selection TTS and walk through adding speech to an existing .NET application using Speech Synthesis Markup Language (SSML) and the .NET Speech API.

Revisiting the ASP.NET Core PipelineColumn

[Cutting Edge]

Revisiting the ASP.NET Core Pipeline

Dino Esposito

What do POCO controllers, SignalR hubs and gRPC services in ASP.NET Core 3.0 have in common? They're all an RPC-style façade for HTTP endpoints and don't rely on MVC. Yet they need to be written in three different ways.

Simplified Naive Bayes Classification Using C\#Column

[Test Run]

Simplified Naive Bayes Classification Using C#

James McCaffrey

James McCaffrey presents a demo program that shows how to use naive Bayes classification to predict the class of a gemstone based on color, size and shape. The demo performs binary classification because there are only two class values, but the program logic can also be used without modification for multiclass classification.

Testing 1 ... 2 ... 3 ...Column

[Don't Get Me Started]

Testing 1 ... 2 ... 3 ...

David S. Platt

David Platt says the single best way to improve your UX designs and build compelling apps is to test them on live users before coding them. So why don't more dev shops do this?

A Failure of ProcessColumn

[Editor's Note]

A Failure of Process

Michael Desmond

One of the emerging lessons of the 737 MAX catastrophe is that a process is only as good as the people and the institutions that execute it.