#posts21 posts published
Alternative text for the web comic from Tom Humberstone about a history of the Luddites and how you can and should also be a Luddite
The bone conduction earphones from Aftershokz blew my mind and are the best earphones I've ever used! Reviewed 9/10.
How you can use Netlify to set up your own GeoIP API service with no rate limits, payment plans or tracking!
How you can use Vercel to set up your own GeoIP API service with no rate limits, payment plans or tracking!
There are plenty Android apps to access Mastodon and the Fediverse, which one works best for me?
My experience running GrapheneOS on a Google Pixel 6 over the past few months as my daily-driver phone OS
Happy new year! This is a round-up of my 2022, including conferences, work, personal life and media!
My submission to a Competition and Market's Authority consultation on Mobile Browser Competition
Async Alpine for loading Alpine.js components asynchronously and lazily
How to manage tracking scripts and consent easily using Cead Consent
The technical stack for alistairshepherd.uk including 11ty, Sass, esbuild and gulp
Ramblings about web nostalgia, early web experiments and translating through many different languages
Blogs, articles and newsletters I follow to keep up-to-date with Frontend web development.
How you can feature detect native image lazyloading support and load a JS library if not.
Helpful snippet to load the polyfill for CSS pseudo class :focus-visible conditionally.
'Live' colour-changing landscape using custom properties for an SVG landscape.
How I made the parallax SVG landscape in the header of my website. First of a series of two.
Koken is an old CMS for photographers I've worked with, these are some fixes for those still using it.