State-Of-The-Art Natural Language Processing in .NET on the Edge

HuggingFace + .NET + Uno Platform FTW!

In this post I show how .NET can be used to run state-of-the-art Natural Language Processing (NLP) models on "the edge". I provide a simple means for downloading and converting 'transformer' models from HuggingFace into models that can perform inference from managed .NET code on resource constrained devices. Finally I use Uno Platform to implement a cross-platform user-interface that allows real-time inference using these models.

Using GMail To Send Email From A Custom Domain

Establishing a free façade for email communication via your domain using a personal GMail account.

Do you use a domain registrar that provides email forwarding facilities? Then read this post to see how to set up Gmail to ensure the correct "From" address when replying to emails sent to your domains.

Cross-Platform App Authentication with Azure AD B2C And The Uno Platform


In this post I comprehensively show how apps written using the Uno Platform can leverage Azure AD B2C & MSAL.Net to provide Identity and Access Management services across platforms as diverse as Windows, Android, iOS and the web. As you will see, this combination of technologies provides extremely cheap, simple and flexible identity management functionality that runs from a single code base.

A Blogging Milestone

12,000 page views in 365 days

Today my blog hit a minor milestone: over 12,000 page views in the last 365 days. That's over two-thousand page views a month! While a long way short of other notable tech bloggers (yes, I'm looking at you Hanselman), I think it's a pretty decent number, particularly when considering the somewhat limited audience for my very targeted content. In this post I provide insights into my "Top 20" posts and my plans for the coming months.

State-of-the-art ML in UWP

Using U²-Net for Salient Object Detection

In this post I show how to use a state-of-the-art machine learning model to implement Salient Object Detection and Image Segmentation. I then show how this model can be used to provide local inference capabilities entirely within a UWP app.