Returning to Rails in 2026
I love a good side-project. Like most geeks, I have a tendency to go down rabbit holes when faced with problems - give me a minor inconvenience and I’ll happily spend weeks building something far more elaborate than the situation warrants. There’s joy in having a playground to explore ideas and “what ifs”; Building…
Conventional Commits encourages focus on the wrong things
You’ve almost certainly encountered Conventional Commits before. It may have reared its ugly head in the changelog of an open source project you’ve used. It may have been the enforced commit format for an open source project you contributed to. A lot of people swear by it. I swear at it. Even though it is used by a…
Xfwl4 – The Roadmap for a Xfce Wayland Compositor
After careful consideration, we’ve decided on a meaningful way to use the generous donations from our community: funding longtime Xfce core developer Brian Tarricone to create xfwl4, a brand-new Wayland compositor for Xfce.
Various LLM Smells
Looks like this ended up on the HN front-page: HN Thread Late last year I started writing a math blog and decided to use LLMs to polish/enhance my writin...
SQLite should have (Rust-style) editions
Date: 2026-07-15 Git: https://gitlab.com/mort96/blog/blob/published/content/00000-home/00017-sqlite-editions.md
Even more batteries included with Emacs
Emacs features have a discoverability problem, and we’re chipping away at it one demo at a time. The years since I wrote the last one of these have yielded more surprising and useful finds, so it’s time again for a “batteries included” report. Note This is the third in a series of articles highlighting useful but…
I’m spending months coding the old way
ai is here. so i'm spending 3 months coding the old way
Nobody knows how the whole system works
One of the surprising (at least to me) consequences of the fall of Twitter is the rise of LinkedIn as a social media site. I saw some interesting posts I wanted to call attention to: First, Simon W…
You can beat the binary search
We sometimes have to look for a value in a sorted array. The simplest algorithm consists in just going through the values We sometimes have to look for a value in a sorted array. The simplest algorithm consists in just going through the values one by one, until we encounter the value, or exhaust the … Continue reading…
Can Bundler be as fast as uv?
At RailsWorld earlier this year, I got nerd sniped by someone. They asked “why can’t Bundler be as fast as uv?” Immediately my inner voice said “YA, WHY CAN’T IT BE AS FAST AS UV????” My inner voice likes to shout at me, especially when someone asks a question so obvious I should have thought of it myself. Since then…
HTML Lists
This second installment in the "You don't know HTML" series is going to be all about the ways that we put collections of things together
How to effectively write quality code with AI
AI is rarely optional anymore, but how can you still be proud of your craft? Discover the workflow to effectively write high-quality, robust code using AI tools.
Claude’s C Compiler vs. GCC
A Guide to comparing Claude Code Compiler with GCC
Welcome to Gas Town
Happy New Year, and Welcome to Gas Town!
App Store Rejection of the Week: Dark Hours
My disdain for astrology is so utter, and my esteem for Godier’s previous work so high, that it simply never occurred to me that he might have actually made and submitted to the App Store an astrology app, let alone that he’d then feign surprise and frustration that an astrology app was rejected for being an astrology…
Technical, cognitive, and intent debt
three layers of system health, AI as cognitive system 3, what's expensive if agents make coding free, and the future of source code
Running Claude Code dangerously (safely)
How to run Claude Code with the `--dangerously-skip-permissions` flag in a safe way
Making Firefox's right-click not suck with about:config
A practical about:config checklist to declutter Firefox right-click menus on macOS, disabling AI/chatbot prompts, link previews, OCR, visual search, and other low-value context menu items.
How to write an effective software design document
Best practices for writing a design doc based on my experience working as a developer at Google and Microsoft.
I built a Game Boy emulator in F#
Hundreds of hours, many late nights, and a working Game Boy emulator in F# with sound, running on desktop and web.
Two Years of Emacs Solo
Rahul's Blog
Python: The Optimization Ladder
Python loses every public benchmark by 21-875x. I took the exact problems people use to dunk on Python and climbed every rung of the optimization ladder -- from CPython version upgrades to Rust. Real numbers, real code, real effort costs.
Retraction: The App Store Rejection of the Week That Was a Correct Rejection
My disdain for astrology is so utter, and my esteem for Godier’s previous work so high, that it simply never occurred to me that he might have actually made and submitted to the App Store an astrology app, let alone that he’d then feign surprise and frustration that an astrology app was rejected for being an astrology…
Drunk post: Things I've learned as a senior engineer (2021)
Everything your mentor wants to say but HR won't let them
What's new in Emacs 31.1
Emacs 31.1 adds a slew of quality-of-life features. It retires its quirky unexec dumper; there are general improvements to tree-sitter, including a much-wanted auto-installer for grammars; and much more.
Anti-patterns in software blogging
Effective writing for software developers
My temporary PHP fix from 2014 has nearly 20M installs. Today I'm deprecating it
In 2014 I wrote http_build_url, a temporary PHP polyfill for AOL's CMS. Twelve years and nearly 20 million installs later, I'm deprecating it.