Something or other, whatever!

Christian Lawson-Perfect's homepage

Everything!

Hyperjumps knockoff

games

An implementation of Quanta Magazine's Hyperjumps game. There was some discussion on the Talking Maths in Public group about how difficult to understand Quanta's presentation is.

How should I colour the days?

toys

I'd like to colour the days of the year by changing the hue parameter of an oklch colour with the day of the year. How do I have to shift the number so that summer is reddish and winter is blueish?

Wordy Christmas cards

art

A tool to make art consisting of text drawn over an image, avoiding a mask drawn by hand. Heavily inspired by Litographs, made for Christmas cards in 2023.

Clip my face

toys

The beginnings of an idea about quickly cutting out sprites from a drawing. I used a photo of myself as a toddler as the test image.

OEISle

games

A Wordle clone where you have to guess a sequence from the Online Encyclopedia of Integer Sequences

Prime Run

games

A game about adding and subtracting prime numbers. You start at a random number, with a random target. Try to reach the target, by adding or removing any prime factor of your current number.

Nulac

games

This is a pen-and-paper game I invented in secondary school. Twenty years later, I've made a digital version of it!

Each Edge Peach Pear Plum

talks

I've made another baby, so it's time for another talk about baby maths. Each Peach Pear Plum is a classic picture book for babies, with a beautifully simple rhyming scheme. But I've always wished it was more complete. Join me for an Eulerian tour through fantasy land!

A lullaby sequence

writing

My son was born last September. While he doesn’t hate sleep as much as his sister did, he still needs a bit of help to drop off. I’m not at all musically inclined, and I seem unable to …

My robot draws TeX

writing

For my birthday I got an EleksDraw pen plotter. It’s a cheap and cheerful example of the form: a pair of orthogonal metal rods with a pen on the end, attached to electric motors. The idea is …

Automatic Namesby

toys

Uses some word lists to come up with random fake place names and show them in street signs. Prompted by the thought that glitch's automatic project URLs would be cuter if they were place names.

Baked sudoku

talks

You can impose on Sudoku puzzles a physical system which works surprisingly well. It has phase transitions, and when you reduce the heat it settles into a solved state!

Sierpinski interpolation

toys

This is known in some places as the chaos game: if you repeatedly move halfway towards a randomly chosen vertex of an equilateral triangle, the positions you can end up together make the Sierpiński triangle. In this one, press the keys 1, 2 and 3 to move to each vertex.

Incident counter

toys

Inspired by the 'paralellepiped incident' joke that some friends make. You reocrd an incident, and when you come back later it tells you how long since the last incident.

Zeckendorf cup arithmetic

talks

My 5-minute talk at the big MathsJam conference this weekend was about some stacking cups that my daughter is too young to appreciate. Here’s the really quick version, in just over a minute: …

Distance to postcodes

boring tools

Calculates the straight-line distances from a source postcode to a list of other postcodes. Made in response to someone at a university asking how many of their students they could expect to travel in for a day event.

Truchet polygons

art

Each tile is a regular polygon with an even number of sides. The vertices are painted in alternating colours. The tiles are lined up so that the colours on every edge match.

The People Shuffler

useful tools

A tool to decide who goes first: everyone loads this on their phone, and presses the screen at the same time. The phones will all ping at different times. A knock-off of an app I saw someone use. Contains a QR code so everyone else can load it easily.

Get the Average Right

games

I think the gist of the game would be that in each round, everyone guesses a number, and at the end the closest guess to the average of everyone's guesses wins. It didn't really work.

time

unfinished

I had an idea about a way of modelling intervals of time and doing arithmetic with them, prompted by the question of what 'one month from now' means. It didn't really work.

Circular lights out

puzzles

A circular version of the Lights Out puzzle. The aim of the game is to turn all of the lights off. When there is an evenly-spaced sequence of bulbs all turned off or all turned on, you may switch them all on or off by clicking two consecutive lights in the sequence.

Lights modular out

puzzles

A move in the classic Lights Out puzzle could be viewed as addition mod 2. This lets you set up a version of the puzzle where it's addition modulo something else.

Hexaflex yourself

toys

Makes a printable template for a hexaflexagon containing a picture from your camera, or any image you upload. Made for outreach purposes at work.

The MathJax URL

work

From the time when I needed it lots, and the main MathJax site didn't make it easy to find, I made this page with just the URL to load MathJax.

A quiz in Elm

unfinished

I wondered how much work it would be to write a quiz system like Numbas, in Elm. The hardest part was thinking about randomising, because I didn't have a good understanding of how Elm's randomisation works.

Interesting Esoterica

websites

This site hosts my list of interesting and unusual papers that I have collected over the years. Many of the references are kept here so I can easily find them again when I want to tell someone about the really interesting idea they contain; others are here only because they caught my eye when I first came across them.

Code Clicker

games

A clicker game where each click runs a program you've written. You get points for completing challenges, but each operation in your program costs points. It works OK, but I didn't have the motivation to finish it.

Pancake flipping

puzzles

An interactive toy for the pancake-flipping problem, to go with a post by Katie Steckles on The Aperiodical. By repeatedly flipping the top part of a stack of pancakes, can you sort them by size?

punchcards

toys

I never used real computer punchcards, so this is a simulation of how I think they worked. Click bits to turn them on or off, or in Lovelace mode you can't unpunch a hole! Shows the ASCII decoding of the card on the top.

Unfurl an image

toys

A thing to do a coordinate transformation on an image. The example it loads with transforms from polar to cartesian coordinates.

Ask Clever Hans a question

toys

Before I made the physical Clever Hans, I made this page which uses speech recognition and a formal grammar to answer arithmetic questions. Featuring the pixelated horse from my horsey game.

Traffic thingy

unfinished

A little tool to help Cushing try out the birthday problem with cars - how many cars should you expect to drive past before having a 50% chance of seeing the same string of final 3 letters twice?

Download scores report for Moodle SCORM

work

This report provides buttons to download a spreadsheet of scores for a SCORM package. It differs from the basic report by giving the total score in raw marks and percentage, as well as scores for each SCORM objective (called "question").

LissaJS

work

Alas, this doesn't work any more!

An algebra parsing, evaluation and simplification system written entirely in JavaScript.

Olympic chokers

toys

Alas, this doesn't work any more!

Which countries are just failing to win the most? Shows a table of all countries who have won at least one gold (to exclude the milquetoast nations for whom second place is an achievement), sorted by the proportion of their medals which are not gold.

Numbas

work

Numbas is an open-source e-assessment tool aimed at mathematical disciplines. It's what I spend most of my work time on.

Check my working

websites

checkmyworking.com began as place to put notes about my PhD work, before I abandoned it. I also used to post about maths things, before I started The Aperiodical. Now (in 2022), my plan is to use this site to post bits and bobs about the techy things I'm doing, for the sake of anyone else who might encounter the same problems I do.

warpycode

juvenilia

This is an up-to-date repository of all my blitzmax code. It's mainly for my use, but others might find something useful in it.