Matrix.org Will Migrate to MAS
Matrix, the open protocol for secure decentralised communications
Skynet won and destroyed humanity
For a very long time, it appeared obvious to outside observers of the time flow that Skynet would never win the war, and never annihilate humanity.
How long does it take to create a new habit? (2015)
How long it really takes to create a new habit, not 21 days.
28h Days: year 1 update
It’s been a little over a year since I started living 28h days . I figured it might be a good idea to write an yearly update, and doing it at the beginning of the year feels appropriate, so here we are.
Using AI for Coding: My Journey with Cline and LLMs
How I leveraged AI tools like Cline to enhance the UI/UX of a website and streamline backend tasks. From redesigning pages and translating content to navigating the benefits and challenges of AI-assisted development, this blog post highlights the potential of using large language models to boost productivity while…
Why I'm writing a Scheme implementation in 2025: Async Rust
I really love Rust. I’ve been using it as my language of choice for about ten years now. I believe that it is a remarkably well designed language, and that includes the parts that are often most criticized, most notably async.
Extracting content from an LCP “protected” ePub
As Cory Doctorow once said "Any time that someone puts a lock on something that belongs to you but won't give you the key, that lock's not there for you." But here's the thing with the LCP DRM scheme; they do give you the key! As I've written about previously, LCP mostly relies on the user entering their password (the…
Monotype font licencing shake-down
tl;dr Don’t try to shake-down a typography nerd with your dubious, automated claims about his employer using unlicensed fonts. How it started It started with a LinkedIn InMail message (sanitised to protect privacy): Subject: [Urgent] Font Software Licensing Review Hi Ameel I hope you
AdapTive-LeArning Speculator System (ATLAS): Faster LLM inference
LLM inference that gets faster as you use it. Our runtime-learning accelerator adapts continuously to your workload, delivering 500 TPS on DeepSeek-V3.1, a 4x speedup over baseline performance without manual tuning.
DeepSeek's smallpond: Bringing Distributed Computing to DuckDB
DeepSeek is pushing DuckDB beyond its single-node roots with smallpond, a new, simple approach to distributed compute. But does it solve the scalability challenge—or introduce new trade-offs?
Should we design for iffy internet?
Around 97% of US households have internet access, but bandwidth and latency are likely worse than you expect.
Using TypeScript to obtain one of the rarest license plates
Using TypeScript and some DMV API digging, I chased down and claimed one of the rarest available license plate combinations.
Zig; what I think after months of using it
Ah, Zig . I have a love-hate relationship with this one. A “new” (reading: appeared a couple years ago , already — yes, already ), language with high ambitions. Zig was made to run at low-level, with a simple design to solve many problems C has (macros, allocators, error handling, more powerful types like baked-in…
Six day and IP address certificate options in 2025
Update: January 15, 2026 Six-day and IP address certificates are now generally available. See 6-day and IP Address Certificates are Generally Available for details. This year we will continue to pursue our commitment to improving the security of the Web PKI by introducing the option to get certificates with six-day…
Firefox OS's story from a Mozilla insider not working on the project (2024)
I clearly remember, but can't date it. I was working for Mozilla messaging at the time ( momo ), being the QA lead for Thunderbird. It was at the end of one of the Mozilla All-hands, maybe in 2011 or 2012. At one of the ending keynotes, we were introduced to Boot 2 Gecko. A hack that would let US - Mozilla own the…
Consider Knitting
Let’s say that, like me, you are a person who stares at a computer and writes code for a living. As a straight male who grew up in a time where knitting was very strongly female coded, it for the most part never occurred to me that knitting was a thing I could do and might enjoy. Regardless of your demographic…
Chrome's New AI Features
Google Chrome is getting upgraded with the latest AI to make it safer, smarter and more useful
Java 25's new CPU-Time Profiler
Learn all about Java 25's new CPU-time profiler and why it matters in this weeks blog post from the creator himself.
Writing memory efficient C structs
A struct in C is the best way to organize your data so that you can easily use the data later in your program. However, there are a few caveats to C structures, mainly how their memory works. Note that I’m making a lot of assumptions about type sizes and standards. These can differ between systems and ABI’s, so for…
Introduction to AT Protocol
Walkthrough of the various parts and concepts in Bluesky's AT Protocol (ATProto), the types of servers involved and how it all fits together
An upgraded dev experience in Google AI Studio
Explore the upgraded Google AI Studio with Gemini 2.5 Pro, agentic tools, and enhanced multimodal capabilities for developers to build sophisticated AI apps.
I built a faster Notion in Rust
Outcrop is a modern knowledge base for software teams, built with Rust and Solid.
The value of institutional memory
In 1978, a dredging gang working for British Waterways was struggling with a problem. They were trying to clear obstacles on the Chesterfield Canal so they could stabilise a concrete wall — not an …
Rock Tumbler Instructions
A detailed step-by-step guide for turning rough rocks into beautiful gems with a rotary rock tumbler.
Project Vend: Phase Two
How Claude turned around its failing vending machine business
Tau² benchmark: How a prompt rewrite boosted GPT-5-mini by 22%
We expected small models to be fast, but our benchmarks revealed a common reliability trap. Here’s our deep dive on finding and fixing it.