One of my constant obsessions is sample data. It's an often annoying aspect of developing systems that you have the catch 22 of needing data to appropritately test fucntionality while developing the...
Sunday, 02 November 2025 12:30
//
56 minute read
One of the key things I wanted with LLMApi was the ability for it to be as lightweight as possible (so JUST simulate the api type you want) AND be super easy to get intp; so you should be able to get...
Sunday, 02 November 2025 12:30
//
10 minute read
So, as my current contract is soon ending and I need to keep working due to that pesky 'eating stuff' habit I have I'm doing one of my periodic skills updates. This here blog was in fact the last time...
Wednesday, 22 October 2025 22:00
//
6 minute read
If you've ever left a meeting wondering "what was the point of that?" or found yourself having the same discussion for the third time, you're not alone. Most meetings fail - and it's not because...
Friday, 20 June 2025 15:30
//
7 minute read
HTMX is a powerful JavaScript library that allows you to create dynamic web applications with minimal JavaScript. It enables you to make AJAX requests, swap HTML content, and handle events directly in...
Friday, 02 May 2025 20:30
//
17 minute read
Just a quick one, I had a need in a work project for the ability to 'clear' URL parameters from a URL. This is useful when you have a URL with multiple parameters, and you want to remove one or more...
Friday, 25 April 2025 23:00
//
7 minute read
So in what's becoming a series, in a work project I wanted to add the ability for a partial to auto-update on a given timescale.
Here's how I did it using Alpine.js and HTMX.
Requirements
So I wanted...
Wednesday, 23 April 2025 19:30
//
7 minute read
On a work project I've been using and abusing HTMX to build an admin UI. As part of this I'm using the lovely SweetAlert2 Javascript library for my confirmation dialogs. It works great but I also...
Monday, 21 April 2025 20:05
//
13 minute read
HTMX is a great library for making your web applications more dynamic and responsive. In this post, I'll show you how to use HTMX to show a toast notification and swap content on the page.
One of the...
Saturday, 12 April 2025 13:33
//
8 minute read
As part of my ongoing sage with my paging tag helper I have now separated out PageSize into its own tag helper. This is to make the tag helper more flexible and to allow for more complex paging...
Tuesday, 25 March 2025 22:12
//
7 minute read
Well I've been playing with a nuget package for doing paging stuff in ASP.NET and well I never thought there'd be 1.7k downloads. I thoght not making a 1.0 version would make it clear that it was a...
Thursday, 20 March 2025 21:30
//
1 minute read
So while building out a project I originally built the paging tag helper for I also cam across ANOTHER need. A way to easily build sorting functionality for a table of results with HtMX...
Monday, 17 March 2025 22:12
//
7 minute read
A work project the other day necessitated implementing paging form results. My go-to paging tag helper has always been the pagination Tag Helper by Darrel O'Neill as I wrote about here however for...
Tuesday, 11 March 2025 17:12
//
14 minute read
In Part 3, we built a beautiful visual editor. But our workflows only run when we manually trigger them. In this final post, we'll make workflows truly autonomous using Hangfire for:
Scheduled...
Wednesday, 15 January 2025 18:00
//
12 minute read
In Part 2, we built a powerful workflow engine. But workflows defined in JSON aren't very user-friendly. In this post, we'll create a stunning visual workflow editor - think "dummy's Node-RED" - using...
Wednesday, 15 January 2025 16:00
//
12 minute read
In Part 1, we introduced the concept of building a custom workflow system. Now it's time to get our hands dirty! In this post, we'll build the core workflow engine - the heart of our system that...
Wednesday, 15 January 2025 14:00
//
10 minute read
Workflow systems are everywhere in modern applications - from simple approval processes to complex multi-step automations. While there are excellent commercial solutions like Temporal, Airflow, and...
Wednesday, 15 January 2025 12:00
//
7 minute read
In my previous post I spoke about the difficulties of being a contractor and how sometimes you can be left high and dry when a customer doesn't pay.
This can happen for a few reasons;
They CANNOT pay...
Tuesday, 12 November 2024 06:30
//
11 minute read
As a freelance developer one of the skill-sets you need to learn quickly is how to work on existing codebases effectively. I've been lucky to have built a bunch of from--scratch systems; this is a JOY...
Wednesday, 06 November 2024 22:30
//
17 minute read
Logging is OF COURSE a critical part of applications however I often see it misunderstood / misused in ASP.NET applications. This is part post and part manifesto on how to effectively log in ASP.NET...
Sunday, 27 October 2024 17:00
//
10 minute read