Monitoring is an essential part of maintaining the health and performance of your applications. I already have this site monitoring user visits using Umami and exceptions and errors using Seq but now...
This is just a quick article as it builds on the others in the full text search series such as the typeahead dropdown and Postgres full text search.
In this post, I will show you how to implement a...
In a previous post I showed you how to create a search dropdown using Alpine.js and HTMX then I showed how we could enable Cross-Site Request Forgery protection using the AntiforgeryRequestToken in...
In this site I use HTMX extensively, this is a super easy way to make your site feel more responsive and smoother without having to write a lot of JavaScript.
NOTE: I'm not entirely happy with this...
Polly is a critical part of any .NET developer's toolkit. It is a library that allows you to define policies for handling exceptions and retries in your application. In this article, we will explore...
I've blogged many times about how I use Markdown to create my blog posts; I really like this approach but it has one major drawback - it means I have to do a complete Docker build cycle to update a...
Scott Galloway | Lead .NET Developer & CTO
I'm a versatile and accomplished developer and lead with an over 25 year track record building teams and platforms and revitalising startups.
Proficient in...
Donut hole caching can be a useful technique where you want to cache certain elements of a page but not all. However it can be tricky to implement. In this post I will show you how to implement a...
So I've posted a LOT in the past on using Umami for analytics in a self-hosted environment and even published the Umami.Net Nuget pacakge. However I was having an issue where I wanted to track users...
One of my projects since starting this blog is an almost obsessive wish to track how many users look at my website. To do this I use Umami and have a BUNCH of posts around using and setting up Umami....
In the previous part of this series where I tested Umami.Net tracking methods
The Problem
In the previous part I used Moq to give me a Mock<HttpMessageHandler> and return the handler used in...
I'm a relative noob using Moq (yes I'm aware of the controversies) and I was trying to test a new service I'm adding to Umami.Net, UmamiData. This is a service this allows me to pull data from my...
One of the MANY LinkedIn aspects which bugs me is the 'how to interview developers' posts. There's a TON of them and they're in 3 camps:
The 'How would you move Mount Fuji?' approach with logic...
In the previous article, we discussed how to test the UmamiClient using xUnit and Moq. In this article, we will discuss how to test the UmamiBackgroundSender class. The UmamiBackgroundSender is a bit...
This is just a quick post to update everyone on the status of this blog. I started it a little over a month ago and decided to commit to at least one post a day for the first month.
So far I've posted...
Now I have the Umami.Net package out there I of course want to ensure it all works as expected. To do this the best way is to somewhat comprehensively test all the methods and classes. This is where...
In the previous part I showed you how to set up self hosting for Seq using ASP.NET Core . Now that we have it set up it's time to use more of it's features to allow for more complete logging & tracing...
In the previous part in this series, I set up the database for the comments system. In this post, I'll cover how saving the comments are managed client side and in ASP.NET Core.
Add New...
I use Mermaid.js to create the dope diagrams you see in a few posts. Like the one below.
However something that annoyed me is that it wasn't reactive to switching themes (dark/light) and there seemed...
Seq is an application which lets you view and analyse logs. It's a great tool for debugging and monitoring your application. In this post I'll cover how I set up Seq to log my ASP.NET Core...