About:

Alex Chan is a UK-based software developer, writer, and crafter with interests in digital preservation and art.

Website:

Specializations:

Interests:

Digital preservation Software development Non-fiction writing Art Hand crafts Queer and trans topics

Incoming Links:

Outgoing Links:

Simon Willison
Subscribe to RSS:
Archiving social media presents unique challenges, including selection bias, ethical concerns, and the need for context, which differ significantly from personal collections.
A personal exploration of preserving social media memories through a custom scrapbook, highlighting the fragility of online content and the importance of context in digital interactions.
Automating Caddyfile redirects with Cog simplifies URL management by embedding Python snippets directly in the configuration file for easy updates.
A creative exploration of parody movie titles inspired by CSS concepts, highlighting the author's process and the importance of diversity in representation.
The post delves into the Palmyrene alphabet's history, its Unicode encoding, and the author's journey of discovery about this ancient script.
The blog post discusses the process of cleaning up inconsistent timestamp formats in JSON data. It details the author's experience with various timestamp formats that are machine-readable but not uniform, which complicates downstr...
The author enhances website header colors by switching from HSL to CIELAB color space, improving visual coherence and contrast, particularly in dark mode.
Aiming for a decade-long lifespan for a computer, the author emphasizes efficiency, careful software choices, and the impact of global supply chains on technology availability.
A personal method for syncing Git repositories using bare repositories on a local drive, emphasizing simplicity and intentionality over cloud services like GitHub.
A personal approach to securely storing multi-factor authentication recovery codes using an encrypted disk image, emphasizing the importance of backups and security.
The author transitions from Jekyll to a custom Python static site generator, Mosaic, to better align with their programming skills and enhance website functionality.
This post details the creation of Truchet tiles using SVG and JavaScript, showcasing innovative designs and providing code for generating unique patterns.
The author discusses the importance of specifying the correct aspect ratio when embedding videos in web pages to prevent layout shifts. They explain the difference between storage aspect ratio (SAR), pixel aspect ratio (PAR), and ...
The author discusses the issue of certain videos not playing on their iPhone due to the AV1 video codec, which is not supported on older iPhone models. They explain the technical details of the AV1 codec, Apple's hardware limitati...
Adding a README to S3 buckets created with Terraform enhances clarity and usability for future administrators by providing essential context and information.
The author reflects on their long-standing use of syntax highlighting in their programming blog, inspired by Nikita Prokopov's article advocating for a more minimalist approach. They have revamped their syntax highlighting to focu...
A custom Go module for print debugging simplifies logging by separating debug messages into a standalone file, enhancing clarity and context during development.
The blog post discusses the implications of Oxford's new £5 congestion charge for passenger cars, particularly focusing on whether an oxen-driven cart would be subject to this charge. The author explores the legal definitions of v...
The post discusses methods to identify AV1-encoded videos that are incompatible with older iPhone models. It details two approaches: using ffprobe and MediaInfo to check video codecs, and provides a Python test to find such videos...
The author created a fun web app to take colorful self-portraits with their webcam during COVID lockdowns, emphasizing playful creativity with technology.
A step-by-step guide on building a movie collection website using CSS grid layout, focusing on design, functionality, and troubleshooting common CSS issues.
A personal reflection on curating social media memories reveals the emotional growth and lessons learned from past online interactions and relationships.
Memorizing key passwords alongside using a password manager is essential for maintaining access to digital accounts in emergencies.
In 2025, the author experienced a dip in recommended reads but found joy in community discussions and diverse literary themes, sharing their favorite books of the year.