Android
Android: VS Debugging
Android: Foreground Services
Android Emulator: Connecting to Localhost
Issues with Android Emulator DNS
Angular
Angular Transclusion With Parameters
Apache
Adding a new site with Apache
Aspnet
Mailkit ASP.NET Core
ASP.NET Core Background Service
Aspnetcore
Aspnetcore - A multiple authentication scheme story
Auth
Aspnetcore - A multiple authentication scheme story
Azure
Azure Docker: No space left on disk
VSCode in Browser: Unexpectedly difficult
Setting Azure App Service node version
Azure and The Performance Mystery
Using Service Connections in Azure DevOps
Forcing any version of Xcode on VSTS Mac build agent
Adding Snyk to VSTS
Blazor
Cross platform options: A very shallow exploration
Another go at Blazor: Complex State?
Playing with Blazor in .NET 5
Blender
Some Useful Blender Tips
C sharp
C# - Static members in Generic classes are weird
Casting NaN to Numerics
Capacitor
Cross platform options: A very shallow exploration
Cosmos
CosmosDB Partition Keys and running Azurite from VS
Docker
Debugging Readonly Docker Containers
Docker bits and bobs
Azure Docker: No space left on disk
Dockerising a Full Stack (SQL, aspnetcore, React) application with a nice F5 experience
Dotnetcore
Nancy + Castle + .NET 4.7 to dotnetcore
Migrating to dotnetcore 3.1 (mostly EFCore)
Entity framework
Migrating to dotnetcore 3.1 (mostly EFCore)
Ffmpeg
Revisiting Av1
HTML 5 Video and Images for Web
Flutter
Cross platform options: A very shallow exploration
Fork
Gitkraken vs Fork: Facts vs Feelings
Git
Gitkraken vs Fork: Facts vs Feelings
Gitkraken
Gitkraken vs Fork: Facts vs Feelings
Homelab
Adding a new site with Apache
Ios
Forcing any version of Xcode on VSTS Mac build agent
Building iOS store certificates on Windows
JSON
Newtonsoft vs System.Text.Json: Memory Allocations using BenchmarkDotNet
Migrating Newtonsoft to System.Text.Json
Managed services
Managed Services Handovers: the Good, the Bad, and the rest
Markdown
Hugo Syntax Extension: Revisited
VSCode Extension: Hugo syntax highlighting for Markdown
Maui
Cross platform options: A very shallow exploration
What does a production MAUI app look like?
Nancy
Nancy + Castle + .NET 4.7 to dotnetcore
Net5
Migrating Newtonsoft to System.Text.Json
Net6
Upgrading .NET 4.8 to NET 6: Aspnetcore Auth + Background Service
Nextcloud
Nextcloud: My Journey so far
Nextcloud: LAN only
Node
Setting Azure App Service node version
Node as a Dependency
Obsidian
Obsidian: Previous Week Review
Perf
Sql Performance Debugging for Developers
Caching MediatR Queries
Azure and The Performance Mystery
SQL Performance Chasing
Productivity
Personal Productivity in this Hectic World
What I Use
Visual Studio and VS Code Tips and Tricks
Pwa
Service Worker Updates
Selfhosted
Adding a new site with Apache
Service worker
Service Worker Updates
SQL
Sql Performance Debugging for Developers
SQL Performance Chasing
Svelte
Cross platform options: A very shallow exploration
Swagger
Swagger and OpenAPI Example attribute: Why so difficult?!
Visual studio
Visual Studio and VS Code Tips and Tricks
Vscode
VSCode in Browser: Unexpectedly difficult
Hugo Syntax Extension: Revisited
Visual Studio and VS Code Tips and Tricks
VSCode Extension: Hugo syntax highlighting for Markdown
Windows
Windows Setup Gripes
Xamarin
Android: VS Debugging
Android: Foreground Services
Adventures in Xamarin Forms
Xamarin and Hyper V
Kael’s Kabbage
Tech Superfood
Cabbage is awful, but this blog isn’t :)
Recent Posts
Debugging Readonly Docker Containers
Personal Productivity in this Hectic World
Docker bits and bobs
Recent Render
All Renders
Tags
☰