Mr Speaker

Author Archives: Mr Speaker

Fire/Escape

Well well well, it’s been quite a while! Nice to see you again. Sorry for the delay… I forgot my blog password, and I had to run some errands, the decade just got away from me. Anyway, the password was qwerty123 so let’s get on with it… Today’s thing is a terminal-based 90s demo effect […]

Your Last Ever Computer

I gaze across the calm morning ocean as I sip my coffee. The computer takes a while to boot, and watching the ocean is more relaxing than the torrent of kernel messages that (hopefully) say things are loading nominally. I wonder if there will be any deliveries today. It’s been a while, and recent weather […]

Basic-er BASIC

Today I wrote an “eBASIC” code snippet that contained a macro. The macro expansion included another macro that when expanded generated 6502 assembler code – which itself happened to contain a KickAssembler macro: that in turn generated its own 6502 assembler. The result of the entire macro formed part of a BASIC program that POKEd […]

NBA Jam, um, tank-mode?

Eight minutes ago I had a flashback. The following is my stream-of-consciousness account of those eight minutes. I refuse to google it to see if it’s true, or if I imagined the whole thing. The year was… 1992? 1993? I was playing the hit arcade game NBA Jam. A lot. I remember playing NBA Jam […]

Why WebGL colors don’t look like Blender colors

The following is an account of my embarrassing ignorance on color spaces, gamma correction, and pretty-much everything to do with how a computer outputs things to a monitor. Recently I’ve been kicking around an idea for probably the greatest retro-video-game game of all time. I’m 40% sure it will be amazing and spawn a whole […]

Note to self: Math.hypot() still exists

C’mon Mr Speaker, stop re-writing your “distance” function every project… Math.hypot() has been around for ages now! Math.hypot(1,1); // 1.4142135623730951 (So has Math.SQRT2. I also forgot I already remembered and re-forgot that)

USB Mini Shawarma

Years ago I had a genius idea of making a USB-powered mini shawarma machine that you could have on your desk, and shave off bits of meat during the day. Sometimes I still lay awake at night, wondering if that would have worked.

And… goodbye JavaScript!

When I de-bloated my piece of the web, I noted that the largest asset I was serving on my blog was a local version of jQuery – coming in at some 70+ kilobytes – that “I still need to insert into the head of my page for historical reasons: 15 years ago I in-lined lots […]

Monads for Babies

Monads for Babies is the first in a series that teaches computer science to toddlers. It’s only available in digital form at the moment (png format, embedded below), so I suggest `right-click -> print` so you can read it to the lil’ tigers at bed time: Support my Patreon if you’d like to see more.