GHDR Reboot 002: Creative Habit Kickstarting

Posted Wednesday, August 10, 2022 by Sri. Tagged GHDR

This morning I had a lot of ideas that I failed to write down. There will be MORE ideas tomorrow so I don't have to be upset about forgetting them, but maybe I should start a habit of opening a journal entry first thing when I get to the computer.

Brain Dumps for Wednesday August 10

  • server admin stuff? - I need to set up a Content Security Policy Header for's web server. A CSP provides instructions from the web server to your browser to tell it what is supposed to be on this page and from where it comes from. The URIports monitoring service in The Netherlands is super nice AND unusually clear and informative.
  • journal entry command? - Would be nice to make a new command like garten new journal that defaults to creating today's journal entry. Let's look into that real quick!
  • look at the 11ty-typescript? - I'd like to add workspace support to it, just to see how that works.
  • what does magazine markup look like? - Would like to work on a parsing solution and markup language design for the kinds of things I'd like in a magazine-style document engine. The document is both the THINKING SHEET and emits the right kind of
  • painting? - I want to paint the rear wall of my living room, and then move the TV onto it, and then move the computer setup back downstairs. Sheesh, that needs painting too.
  • how does TufteCSS do margin notes? - if I study that CSS I can maybe start to make my own cleaner version...

Need-Driven Tasks


I moved my computer cart away from the main patio window, which meant I had to move all this stuff around temporarily. It does seem to help with eyestrain.

Moved computer cart next to KALLAX, split couch, ordered an inexpensive triangle end table which could introduce interesting angles to the living room cafe layout.

Curiosity-Driven Tasks


I know my script already does this, it's in garten-commands.js:

'new': args => {
const cat = args.shift();
const dir = m_RequireCatDir(cat);
const filename = args.shift();
const target = `${dir}/${filename}`;
const exists = m_CatFileExists(target, { openQuit: true });
let filepath = m_GetSourceDirectory(target);
if (!exists) {
WriteFileSync(filepath, m_StarterPage(`${cat} ${filename}`));
ShellCommand('code', filepath);

To create a new journal entry, I usually type garten new journal 2022/ and it creates the thing. This creates the page and titles the page as journal 2022/

Added a new command garten today that works very similarly to garten new. No more typing dates! If there is already an entry, the command opens the existing file. I also fixed a bug where the entire eleventy build process would execute automatically when checking to see if the file exists; I nuked that. Committed everything to source control and pushed it up to the backup repo...yay!


I wanted to make a nice callout that showed the "win" from making the garten today command, and thought a shortcode would be cool like {% DIV %} content {% endDIV %}, which accepts a class argument that can be a class selector string. I then added a rule to my CSS styles, and made the shortcode run the contents through Markdown. Now I have a flexible way of styling specific kinds of content relatively simply. It's hacky, but it will help me prototype the various kinds of magazine block types I may need.

New Paired Shortcode! {% DIV class='ghdr win' %}, which is what I used to make this callout!

End of Day Sanity Checks

Is there anything I should be doing today? It's 748PM. I guess I'm done for the day and will start winding down, do a bit of tidying up and continued furniture moves.


I didn't think this would work, but I took a single "country-style pork rib" (it's just sliced pork butt or shoulder, I think), coated it with a supermarket "Kansas City-style Dry Rub", and 20 minutes at 370F gave me this:

20 minutes at 370F, flipped oncecountry-style rib cooked in air fryercountry-style rib cooked in air fryer (full size image)

Very realistic! The supermarket dry rub wasn't very good tasting, but this is very promising.

New air fryer technique unlocked for individual country-style rib portions AND can now experiment with marinade and rubs in single quantities.

Second Win, because I had to post the picture and it was drawing the wrong size!

Improved the Eleventy Image Plugin so it uses the same format as {% Figure %}. This opens up the media system for the KMS. Also set up Lightroom Classic to export directly into the dated media folder. Streamlined!