Setback
Mistakes were made.
Recent content on The Grimoire
Mistakes were made.
It’s time to tackle logs and tree farming.
Tar: the renewable energy source of tomorrow.
Welcome to the Mushroom Kingdom.
“A land where the rocks are iron and you can dig copper out of the hills.”
“You have crashed on a planet almost completely covered in water.”
Welcome to PyBlock Hard Mode.
I’ve been a professional software developer since the early 2000s and an enthusiastic amateur even longer. I was also, for a while, a manager of developers. I’m deeply interested in organizational dynamics and group consensus: software, like ourselves, lives in a society, and both serves the needs of and serves to help shape that society. 
 I’m always interested in hearing…
Entity and record types make a handy way to express “this has to exist before I can use it” in data access code.
Sometimes the defaults get in your way.
A by-no-means-exhaustive list of direnv configuration techniques I’ve found helpful.
If T implements Future , then &mut T also implements Future . You can use this fact to add cancellation safety to a non-cancel-safe future.
I am, increasingly, of the perspective that when a business pays programmers to automate some part of its business process, they do so because it will be cheaper to do that than to pay someone to remember that process. Sometimes, this process happens by intent, but much more often in my experience, it happens as a confluence of other incentives.
A series of observations on choices that make small systems more successful. Largely a restatement of how complex systems fail , through the lens of success rather than the lens of failure.
Shut down your PagerDuty account, unless someone will die if you don’t answer it.
Cass: “So does Susano temper people?” 
 Me: “Hmm, actually that’s an interesting point. I think it’s just the primals summoned under Ascian auspices that do that.” 
 Cass: “Huh, yeah. Shiva didn’t temper people either.” 
 Spoilers for Endwalker .
I put way too much effort into this dumb joke.
Musings on the differences between what characters “know” and what their authors know, and the gap created by FFXIV’s evolving relationship with its own narrative. 
 Spoilers for Endwalker . 

Computer science and development-adjacent papers and academic works I encourage people to read.
In 2020, Aphyr wrote A Satisfactory Way of Building , exploring the the idea of pattern languages through the forces and consequences imposed by Satisfactory. In the intervening two years, the developers have released two major updates to the game, adding entirely new systems, adding new ways of responding to the forces and tensions in the game, and tweaking (or in some cases, completely…
A general and less tooling-intensive approach to automating routine project tasks.
I’ve found myself in the unexpected situation of having to write a lot of
browser apps/single page apps this year. I have some thoughts on configuration.
A style guide.
An SQL schema and associated queries for handling permissions when roles can nest arbitrarily.