mod_rewrite breakage Apr 25th

If you use mod_rewrite and you've started getting random errors in your logs that look like "rewritten query string contains control characters or spaces", it's because of a security patch that breaks using backrefs as query params if they contain spaces (and certain other special characters). For example:

RewriteRule ^foo/([^/]+)$ foo.php?page=$1 [L,QSA]

This will still work for foo/bar but break for foo/bar%3Abaz. You need to add the B flag as follows:

RewriteRule ^foo/([^/]+)$ foo.php?page=$1 [L,QSA,B]

2022 Reading List Jan 9th

I've updated my 2022 reading list with all the 112 books I read in the year.

Highlights were Tomorrow, and Tomorrow, and Tomorrow, by Gabrielle Zevin and A Memory Called Empire by Arkady Martine.

Some generous soul has re-traced a bunch of the Apple emoji to provide much higher res versions of them for use in presentations.

Mornington Crescent May 31st

A convergence of two of my interests: Tuble is a Worlde-style game where you guess Tube Stations.

The first established commercial airline started in 1909, operating zeppelins

UK children's TV show Rainbow has a very memorable theme song, but the original has many verses

AWS Pricing Mar 28th

AWS pro-tip: take a look through cost explorer every now and then, just in case you can reduce your bill by 65%, just by disabling unused services. And switch from Cloudfront to Cloudflare for anything simple that uses a lot of egress bandwidth.

I'm a fan of the cube rule of food classification, if only because the deck is so well done.

Wordles Feb 28th

Wordle got super popular and was then sold to the NYT. There have been a ton of interesting variations on the core mechanics:

  • Wordle for Netscape - Wordle, but works in Netscape 1.0
  • WorDOS - Wordle, but for DOS
  • Worldle - Guess the country, once per day, based on outline
  • Globle - Guess the country, once per day, with warmer/colder hints
  • Passwordle - Guess the SHA-256 password hash (parody)
  • DuoMoji - Emoji matching, once per day
  • DNDle - Guess the D&D monster based on core stats
  • Mathler - Guess the math equation (with a known target)
  • Nerdle - Guess the math equation (including the equals)
  • Mumberle - Guess the math equation (including the equals)
  • Summle - Guess the (very simple) math equation
  • Quordle - Guess four words at once
  • Octordle - Guess eight words at once
  • Semantle - Guess the semantically-similar word
  • Lewdle - Guess the offensive word

Neat little game where you have to place world events on a timeline, along with a Wikipedia card for each one, telling you more. Very addicting

Subscribe via RSS | Older posts »


This is the personal website of Cal Henderson, Slack co-founder & CTO.

I give occasional talks, write code and sometimes articles.

» About Cal


» Twitter
» GitHub (more, moar)
» Flickr Photos
» Flengbot (Group Linklog)
» Shakefeed (Best of Mlkshk)
» Building Scalable Wesites (My book)
» My Conference Talks


» Glitch: Bees!
» Starcraft: Bees #187
» Diablo 3: Bees #1517
» Steam: iamcal
» XBox Live: iamcal
» EVE: Demitra
» Weewar: iamcal
» Kingdom of Loathing: bees (id #29410)
» My WoW theory blog

flickr twitter facebook linkedin vimeo WoW kickstarter github stack overflow glitch