RSSAmplifier

Blog

Lloyd Atkinson's Articles

This is my place on the internet where I express my thoughts on software engineering, take notes, share knowledge, advocate for best practices, write articles on topics I'm passionate about, occasionally rant about things, and share my creative projects.

lloydatkinson.netRSS feed ↗41 posts

Latest posts

2025: Year in Review

Reflecting on my year - Tagged: Year in review, Gardening, Programming, Portugal, Poland, Slovakia

Motivation in an Absurd System

The struggle to find meaning in meaningless work. - Tagged: Philosophy, Rant

Comparing Git Mirror Options

A brief review of my experience self-hosting Git mirrors with GitWeb, cgit, and Forgejo - Tagged: Git, Homelab

2024: Year in Review

Reflecting on my year - Tagged: Year in review, Gardening, Programming, Norway, Wales, Bulgaria

Containerised Microsoft SQL Server With Grafana

A short example of using Grafana, Microsoft SQL Server, and Docker Compose - Tagged: Containers, Grafana, Microsoft SQL Server

Stupid Problems Require Stupid Solutions (Cloudflare Is Breaking My SVGs)

Fixing problems that shouldn't exist - Tagged: Cloudflare, SVG

Some Thoughts As I Sit Here in Another Standup

What is the software industry playing at? - Tagged: Rant, Agile, Software Management

Frictions and Complexities of "Simple" Scripts

Bash scripts (or any type of script) can become unwieldy, fragile, and difficult to maintain - Tagged: Linux, Bash, Automation, Infrastructure as Code, Homelab

Laughing Off the Dark Mode Lobby

When being insufferable about screen brightness substitutes for having a personality - Tagged: Rant, Skepticism

2023: Year in Review

My thoughts and ideas about my year - Tagged: Year in review, Love, Marriage, Poland

This Year's Christmas Quiz

I continued the tradition I started in 2021 of creating a fun Christmas project - Tagged: Christmas, Astro, React, Netlify, Azure Table Storage

Migrating My Site From Google Domains and Netlify to Cloudflare

Google exiting the domain registrar business, Netlify performance lagging... - Tagged: Cloudflare, Netlify, Hosting, Performance, Networking, Internet

I Got Married ❤️

Mr and Mrs Atkinson - Tagged: Marriage, Love

Favour TypeScript Types Over Interfaces

The case for almost always favouring the type keyword over the interface keyword - Tagged: TypeScript, Type Theory

From Success to Disbandment: Impact of Poor Management on a Talented Team

How mismanagement at the organisation level caused the best team I've been in to disband. - Tagged: Rant, Burnout, Team Culture

Consistent Kebab Cased Controller Routes in ASP.NET Core

Ensuring no capital letters in your routes and using kebab casing. - Tagged: .NET, ASP.NET Core, C#

2022: Year in Review

My thoughts and ideas about my year - Tagged: Year in review, Poland

Creating a Christmas Music Quiz Game

I continued the tradition I started in 2021 of creating a fun Christmas project - Tagged: Christmas, Music, Astro, React, Netlify, Azure

Scheduling Webhook and API Calls With GitHub Actions

Integrate with CI/CD builds and automations on a schedule - Tagged: GitHub, CI/CD, Webhooks, Scheduling

Consider Disabling Browser Push Notifications on Family and Friends Devices

A terrible user-hostile browser feature is being misused, surprising no one. - Tagged: Security, Privacy, Dark Patterns

How to Prevent a Duplicated Canvas When Using P5 and React Strict Mode

The correct way to prevent a duplicated canvas that occurs during development time - Tagged: React, React Hooks, P5

Tiny Projects: Currency Conversion Table

Part of my "Tiny Projects" series. A quick and simple table to convert between Pound and Złoty currencies. - Tagged: Tiny Projects, Currency, Astro, TypeScript

PowerShell, NPM Scripts, and Silently Dropped Arguments

Are you passing arguments to NPM scripts from Powershell and finding some of them are not being passed? Here's why. - Tagged: PowerShell, Node.js, NPM, CLI

Technologies I Don't Want to Work With Again

Sometimes some tools, frameworks, or languages aren't that great. Some are badly designed and were never a good fit - Tagged: Rant, Technical Debt

Default Exports in JavaScript Modules Are Terrible

Default exports lead to mismatched and confusing names. Named exports should be used instead. - Tagged: JavaScript, TypeScript, Rant

An Article I Wrote Featured on GitHub's YouTube Channel!

An article I wrote on usage of Git unexpectedly featured on YouTube - Tagged: GitHub, Git, YouTube

Should You Squash Merge or Merge Commit?

To squash your commits or merge them as they are? There's advantages and disadvantages to both approaches. - Tagged: Git

Writing a Fuzzy Search Component With Preact and Fuse for Astro

How I implemented a generic search component in Preact and Fuse for use with but not limited to Astro - Tagged: Preact, Fuse, Astro, Algorithms, Fuzzy Search

Debugging Responsive CSS Breakpoints With a Helper

Creating a small CSS helper to highlight active media query breakpoints - Tagged: Responsive Design, CSS, Tailwind, CSS-in-JS

Typing Unknown Objects in TypeScript With Record Types

Use the Record type for objects with unknown properties. Work with, not against, TypeScript. - Tagged: TypeScript, Record Types, Configuration

Flexible Design System Components With "as/is" Props

Designing flexible and semantically correct design systems with polymorphic components - Tagged: Design Systems, TypeScript, CSS-in-JS, Vue, React, Astro

Eight Points for One Team Is Two Points for Another Team

Storypointing is a pointless exercise many agile/scrum teams follow - Tagged: Rant, Agile, Critical Thinking, No Estimates, Software Management

Modelling Workflows With Finite State Machines in .NET

Build workflows and processes with Finite State Machines to reduce code complexity - Tagged: .NET, C#, Finite State Machines, Workflows, Stateless

My Thoughts on What I Want to Do As a Software Developer

My thoughts and reflections on what I want to do as a software developer and how I want to do it - Tagged: Passion & Creativity, Rant, Burnout

Automate Pull Request Labels Based on Changed Files With GitHub Actions

Using GitHub Actions to add labels conditionally to a PR based on which files and directories changed - Tagged: GitHub, Infrastructure as Code, CI/CD, Pull requests

Static Site Redirects With Astro (or Any Static Site Builder)

Generating page redirects at build time for static sites without client-side code while maintaining SEO. Redirect visitors to your latest post! - Tagged: Astro, Static Sites, HTML

Going Further With TypeScript - Part 1: Mapped Types

Mapped types are one of the many powerful types available in TypeScript. I demonstrate how to use them to create two new utility types; Prefix and Suffix. - Tagged: TypeScript, Type Theory, Mapped Types

List Replication in F#

A small experiment with F# and list replication - Tagged: Functional Programming, F#, HackerRank, Algorithms, Kata

Essential .NET Libraries I Use

.NET libraries I highly recommend for probably every project - Tagged: Software Design, .NET

Always Ask "Why?"

Asking "Why?" leads to better software designs - Tagged: Critical Thinking, Software Design, Five Whys, Rant

The First Post on the Site

This is the first post on the site. Isn't that super interesting? Anyway, have a good read. - Tagged: First Post