Ricky Reusser
banner
rreusser.bsky.social
Ricky Reusser
@rreusser.bsky.social
Math, graphics, maps, trail running. he/him
https://rreusser.github.io/
November 4, 2025 at 2:39 AM
OMG hummingbirds
November 4, 2025 at 2:39 AM
Use the platform! A partial dependency graph…
October 7, 2025 at 5:24 PM
I'm somewhat keen on figuring out bottom-up parsers, but I'm also relatively happy with the relative simplicity of the recursive-descent logic, e.g. the code to parse attribute @align(32) or @size(4):
July 21, 2025 at 5:17 AM
I'm in the phase of my programming career where I've figured out how to write a simple-enough recursive descent parser, and suddenly everything looks like a parsing problem.
July 21, 2025 at 4:55 AM
The sequence of effects, btw. First, relief shading using the normal vector. Then ambient occlusion using a line-sweep horizon visibility algorithm. Finally shadows using the same line-sweep algorithm just at one particular angle, and with a hard cutoff.
July 7, 2025 at 3:28 AM
The phase of a project where fixing bugs grinds to halt because it's way more fun to squeeze results out of a half-baked prototype.
July 7, 2025 at 2:09 AM
Farms cling to the Colorado River as it snakes along the border of California and Arizona.
July 5, 2025 at 11:33 AM
Expanded it to work across an array of satellite tiles and added soft shadows. Softening shadows around the azimuth is easy because you just average samples (here, 16), and along the altitude is even easier because the horizon algorithm gives enough information to simply do a smooth fade.
July 5, 2025 at 6:15 AM
My favorite part is that it lends itself to a really nice implementation. Each sweep shades as it goes, touching each pixel exactly once (twice, with antialiasing), and you can pack it all into a single texture: red/blue=normal vectors for relief shading, green=ambient occlusion, alpha=shadow.
July 3, 2025 at 7:37 PM
A 24-hour loop of summer solstice sun rising over Mount Adams, Washington, USA. Not terribly user-friendly, but you can select a region and encode a loop here: observablehq.com/@rreusser/li...
July 3, 2025 at 7:15 AM
Last time I was just surprised I got the harness on at all, but this time it’s on correctly and he seems a little more comfortable.
June 24, 2025 at 9:25 PM
Relatively pleased with this development.
June 21, 2025 at 11:30 PM
I think I solved it in about five minutes with two tricks: first, it's easier to move three *sheep* and look for where wolves *can't* be than to move five wolves, though the result is equivalent. Second, after the initial setup, it took about one minute of trial and error dragging layers in Gimp. 🤷‍♂️
June 18, 2025 at 11:27 PM
I feel your pain. HOT today and then next week will be all cloudy.

Trolling aside though, severe weather: not cool; weather of any sort: gosh, I miss it. Stay safe!
June 18, 2025 at 4:53 PM
Pretty good turnout! #nokings
June 14, 2025 at 8:00 PM
June 13, 2025 at 8:17 PM
Went to a spa a bit ago and was pretty excited about the artwork. Tried to confirm the artist, but they had no idea what I was talking about. Sat for a real long time, at least. As one should in the presence of such sculptures.
June 9, 2025 at 9:28 PM
@vtcraghead.bsky.social 2*arcsin(1/3). Nice.
May 5, 2025 at 12:10 AM
Happened to stay up late and catch Sam Watson (spoiler alert) setting two speed climbing world records last night! Made a quick plot of the world record progression, and if we can simply extrapolate this, then it looks reasonable to expect more. So fast. #climbing observablehq.com/@rreusser/sp...
May 4, 2025 at 6:01 AM
I mean I sure thought so, but……
April 11, 2025 at 7:08 AM
A photo from a recent trip to Wadi Rum, Jordan. Still in absolute awe of the place. Absolutely excellent climbing, plenty of interesting fauna, and the people were extremely friendly (and confused about what's going on in the US). (full disclosure: photo has been slightly edited.)
April 11, 2025 at 4:59 AM
Alright, fixed the ad hoc lighting computation for my terrain shading, I think. Always tricky to balance good appearance and good controllability. Try it live here: observablehq.com/@rreusser/li...
April 9, 2025 at 6:04 PM
The sun rising over Thor Peak, Auyuittuq National Park, Canada. It's using line sweep horizon tracking to compute ambient occlusion and physically accurate shadows together with relief shading, all packed into an RGBA texture. Pretty happy with the scanline algorithm, but the shading needs work.
April 9, 2025 at 8:48 AM
Nice! And the antialiasing is a good idea which had been bugging me. I'd be curious to know how you approached it. My approach was to use quasirandom noise to jitter the points (because it's fast, very easy to implement in a shader, and good enough).
March 15, 2025 at 6:45 AM