exupero's blog
Superformula identicons
infinite possibility, tiny utility
Symmetrical identicons
infinite possibility space × 3
Divisibility graph identicons
a small possibility space
Hand-drawn dungeon identicons
a large possibility space
Mapping orbital positions
a little numerical approximation
Mapping elliptical orbits
a little matrix multiplication
Locker doors puzzle
slightly magical
Lens transducer
Exponential smoothing transducer
introductory signal processing
Specialty transducers
e.g. take-until-repeat, interpolate, spillover
Workaday transducers
e.g. tap, dedupe-by, parallel
list processing
Bus barn dequeueing
better strategies?
Jumping higher when the sun is overhead on different planets
as expected
Jumping higher when the sun and moon are overhead
less than I expected
Jumping higher when the sun is overhead
more than I expected
Divisibility scatter plots
tricks for smallish primes
Best base for modulo tricks?
possibly base 9
Modulo tricks in other bases
special behavior around the choice of base
Divisibility graphs and modulo tricks
explaining a couple small mysteries
Divisibility graph of 7
a starting point
Calculating a date's day of the week
the final step
Calculating anchor days
simple math and memorization
not as scary as it sounds
Recursive subdivision
a generic function to only subdivide as needed
Coastal variation
add some regional parameters
Basic island generation
an oldie but a goodie
Sunlight's distance through the atmosphere
influence on color?
Mapmaking on a toroidal world
sometimes the simpler option is actually pretty good
Compass directions on a toroidal world
facing unusual choices
Day and night in the toroidal interior
it keeps switching
Toroidal interior
dark and eerie
Toroidal poles
double horizon
Torus with Earth's area and volume
two equations, two unknowns
An Earth-sized torus
mostly hollow
Toroidal world
worldbuilding in genus one
Calculator words
a simple amusement
Apparent size above horizon
just one triangle inside another
Finding hide and seek probabilities analytically
reinventing the choose function
Probabilities when hiding more items
less computation, more exact
Hiding strategies
overanalyzing the task
Timeline of the patriarchs
less certain than usually shown
Uncertain Gantt
fuzzy at the edges
Gantt charts of diverging possibilities
Relative schedules
a simple start
Sum and product puzzle extra credit
doesn't help
Sum and product puzzle
re-encoding the problem
Drawing the Mandelbrot set
it's the negative space
Semi-tessellation with a continuous line
a (minor) dilemma
Growth limited by interpersonal conflict?
or just reading too much into a cubic term?
A Sigmoidal Population
resource contention over an idea?
Nelson rules
leveraging a small set of Clojure's collection functions
Rate, time, and distance nomogram for shorter distances
after feedback from the kids
Manipulating nomographic matrices symbolically
data as code
Rate, time, and distance nomogram
for the children
Horizon distance along ground
more work to get the same result
Distance to horizon
surprisingly simple
Adventures in notebook programming
some different approaches
Vim syntax range plugin
convenient for mixing Clojure and Markdown
A Clojure reader with string interpolation
forking tools.reader to add a dispatch macro
Mid-ocean ridge trace
extracting geographical coordinates from an image
Stack-math compendium
for future reference
Stack-based square and cube roots
could be worse
Chunking stack-math operations
a vocabulary
More flexible rewrite rules
wading into a broader solution space
Rewriting stack algorithms programmatically
find and replace
Improving a mental math stack algorithm
some numbers are easier to multiply than others
Stack-based mental math
leveraging small working memory but big(ger) long-term memory
Mini Zettelkasten
130 lines of Clojure, 1.9 kilobytes of JavaScript
Clojure-flavored JavaScript
macro expand, compile, and minify
Accelerating to oblivion?
is there a relativistic barrier below the speed of light?
View from a photon
is everything flat?
Michigan big trees near you
group hug
Drawing an icosphere
divide and inflate
Drawing an icosahedron
spherical coordinates for the win
Michigan county boundary roads
three naming conventions
Babashka script to serve stdin
for those who prefer the command line to setting up a webserver
Analysis of incremental water heating
writing math to avoid tedious computation
Heating cold water in smaller batches
writing code to avoid tedious arithmetic
Modeling a simple thermodynamics problem
setup for further experiments
Heating cold water
feels paradoxical
Calendar recurrence
when you'd rather store old calendars than buy new ones
Checkerboard islands
don't go cross-eyed
Terrain chess
because war is also senseless
Variations on hand-drawn dungeons
not a major development
Procedural generation by hand
invented in a meeting
Scaling stars on the flag
not hoping to need it, just an occupational hazard
`quickbb` script for Babashka
saving rework with an nREPL
`quick` script for Tmux
entr Joe
Improving generated Lindenmeyer rules
using something like a state machine
Generating Lindenmeyer fractals
from random data definitions
More Lindenmeyer fractals
for the pretty pictures
Lindenmeyer fractals as data
revisiting old code to turn logic into data
Sunrise, sunset, and latitude
sunrise and sunset at the extremes
Sunrise, sunset, and the winter solstice
in which the earliest sunset and latest sunrise don't happen on the same day
Rotation of the solar terminus
days are longer than we realize