I think I need a workflow intervention (aka Stop Leaving Emacs)

As many of you know, I sometimes, inexplicably, try to pry myself away from using Emacs. My fingers become tired of C-c C-x foo or whatever, all the time. I hate typing C-x almost as much as M-x. It hurts my fingers and is too much like C-c. Should I hit the "x" with my middle or index finger? I want integration with macOS services. I want system-level spell checking, not M-x ispell-word. I want to stop thinking about whether I need C-g or q or C-x kill-buffer to close a minibuffer. I hate window/frame management. I want easy, basic mobile access (on my iPhone). You know, I just want to use a normal app that does normal things in a normal way[1].

When the above feels like too much, I fire up Obsidian, because I'm convinced that Obsidian is "The Right Answer" for most people, most of the time.

For a couple of days, using Obsidian is such a relief. Everything's so easy! Linking and backlinking and searching and tagging and visualizing and organizing. Nothing feels like work. I don't get confused about key bindings. I don't lose my place. Markdown feels good and normal and fine. Who needs Org mode, anyway?! Sure, Obsidian is configurable, but why bother? All I need is a folder full of Markdown files, right?

Then it starts. I hate how Obsidian handles attachments and files, so I grab a plugin to make it work more like I want it to (e.g. more like Org mode). I want better file templates so that's another plugin. And of course I need Dataview. Shouldn't I use a nicer theme, while I'm at it? And so on.

Soon, the futzing begins in earnest. What starts out as a clean, simple markdown-based notetaking tool becomes a complex mess in short order. It's basically a shitty version of Emacs at that point. And, admit it, Obsidian feels janky. I left Emacs partly because I didn't want janky. I realize this is happening and resolve to fix it, once and for all.

So I install Bear.

Bear is simple and beautiful and an absolute joy to use. It doesn't have many features, but I don't need features, I just need a nice place to take notes. This is what I tell myself while in the back of my mind I'm wondering how to configure capture templates. And there's no daily notes feature? Really?!

Bear feels so refreshing that I can ignore all the things it doesn't do. Hell, the reason I'm here is because it doesn't do things. Who needs folders when nested tags are so much more flexible? And just look at it!

Of course, while I'm not using Emacs my carefully-curated Org Agenda is not available, so I guess I need a todo app. Normally, I use OmniFocus, but since I'm in simple-and-beautiful mode, I go with Things. Having a system-wide capture key for new tasks is so nice. And, like Bear, just LOOK at it!

Shoot, I almost forgot, I need a journal app now. I launch Day One. Day One is a great journaling app. I love the "On This Day" feature and it's fun printing books from my journals. I like it so much that I'd built a tool to convert my Org Journal entries into Day One entries so I could use both. I write a couple of entries, including some photos, because I can.

Another day goes by and I continue finding other little things that I'd normally do in Emacs. I start to realize how much of my process was working fine in Emacs. Everything I need is already there. Between Denote, Howm, Org Journal, and a handful of Org mode capture templates, I'm covered, workflow-wise. But I've already decided to use other, easier, more convenient tools, right?

Then, it happens. I need something that I'd written in my Denote notes so I fire up Emacs, just for a minute while I grab those notes.

It all comes rushing back: Denote, Magit, Dired, Howm, Elfeed, Mu4e, Org mode, and a dozen other little niceties that make Emacs so great, even though it's "harder" and can seem a little isolated.

I immediately burn down everything I'd cobbled together during "I Should Quit Using Emacs Week". I update my packages, pick a new theme (just so things feel fresh), and go about my business. I mean, I already had a damn good workflow built with and around Emacs for the past 10 years, didn't I?

So what I'm telling you is that I'm back in Emacs. Again.


  1. By "normal" I mean "The way that the rest of macOS works", of course 😁. I'm not really looking for suggestions here. ↩︎

Permalink #
...the dream became reality when she finally completed her perfect note-taking system comprised of Zettelkasten-styled interlinked markdown files stored in Org-mode format with two-way conversion on the fly with syncronization across devices through a p2p network with E2E-encryption and backups stored in IPFS, with both native and PWA apps for all major platforms as well as command-line interface with a rich set of zsh autocompletions and keyboard shortcuts.
Matthew Solenya, The Olognion

Curio 32

Curio screenshot
Welcome To Curio 32

Every year I renew my subscription to Curio, even though I haven't used it much recently. I renew mostly to support development of one of the nicest, most thoughtful apps on macOS, but another reason is that George continues to add truly useful and interesting features year after year. I don't know how he does it.

Check out the Curio 32 Release Notes for details.

Standouts for me are multiple project windows and improvements to Journal sections. I don't need another journaling tool, of course, but I often consider it.

Permalink #

Wednesday, August 20, 2025

Black and white photo of book with dog in background
Alice hanging out while I read. Ricoh GR1.

I see Zed just received $32 million from Sequoai because "this investment lets us pursue our vision for bringing a new kind of collaboration directly into the IDE." Well, never mind, then. I want nothing to do with "collaborative editing", nor the inevitable decline of anything touched by VC money. Thank goodness there's BBEdit.


I'm running immich on the Mac Mini via Docker and it's been working great. It's fast and simple to use. Hosting has (knock on wood) been a breeze so far, too. I like it.

Roll 046 (2025) / Ricoh GR1

Black and white self portrait
Testing the self-timer.

The Ricoh GR1 looked sad in the "broken camera" drawer, so I loaded it up with a roll of HP5 and gave it a shot. It worked just fine. This time. Sometimes the LCD stops working. Sometimes the viewfinder gets blocked by something loose inside the camera. Usually it's both those things, but this time I got through the roll without issue. It's a great camera when it works.

Permalink #

Tuesday, August 19, 2025

5 cases of Diet Coke in my car
This should get me through the week.

Suddenly, two copies of the weather were showing on journal posts here. I have no idea how that happened. I've cobbled together a fix, but sheesh. This is another thing with Hugo...I don't get how most of it actually works. There's magic going on and I just piggyback off it with a lot of copy and paste and guesses. This is no way to run a website, is it?


Cool, there's now a Lightroom Classic plugin for Glass.photo


The reason we give for "Why I switched from System A to System B" is usually a derivative of "I was bored and wanted something new to play with.", but this doesn't stop us from writing 5,000-word explainer posts in which we invent all sorts of other reasons.
Jack Baty, Rudimentary Lathe, Aug. 19, 2021

Monday, August 18, 2025

Black and white film photo of cameras and notebooks
Shelf (2025) / Nikon F100

What goes here in daily notes and what goes into separate /notes? No idea. Maybe I should kill the idea of /notes and just make everything a regular post. Messy for readers, but cleaner for my brain? Dunno.


I spent hours today making sense of my wiki content using Claude Code and it was a frustrating blast. Sorry, I brought up AI, again. I'm not supposed to do that.


’Cause the technology is just gonna get better and better and it’s gonna get easier and easier and more and more convenient and more and more pleasurable to sit alone with images on a screen given to us by people who do not love us but want our money and that’s fine in low doses but if it’s the basic main staple of your diet you’re gonna die.
David Foster Wallace

People seem to compare the hype around AI/LLM use to that of Blockchain/NFT from a couple of years ago. The difference for me is that I don't personally know anyone who cared at all about blockchain, whereas everyone I know is using and is amazed by AI tools. Including me. Sure it's still over-hyped, but at least it deserves some of it.


This kind of thing drives me bonkers. Is it really not possible to make packaging both secure and openable?

Sunday, August 17, 2025

Black and white photo of a Dish Network dish
Satellite TV (2017) / Nikon F3

All I wanted to do this morning was to add a class to an image in Hugo. At first I thought I needed to override my theme's image-render hook, but then I learned that could use the built-in Markdown attributes. It required a new setting or two[1], but worked great for adding a style to images in a single post. In lists, however, the styles are applied to the paragraph above the image, even with wrapStandAloneImageWithinParagraph set to false. I couldn't figure it out, so I just put the paragraph after the images. Not a solution, but solved the problem in this case. This will happen again, I'm sure. Normally, I'd just use raw HTML for this, but the image pipeline in Hugo "bundles" wouldn't work, and I need that.


Speaking of raw HTML. Have you noticed how we're too willing to jump through all sorts of hoops in Markdown just to avoid writing a little HTML.


A dream of competence, too closely confronted.
Verner Vinge, A Fire Upon the Deep

I spent hours today working on better blockquotes and other tweaks to my theme. Then, suddenly, I couldn't find half of my changes. Some combination of git branches and bad hugo module updates and the whole thing was hosed. Then I noticed my theme's default branch was "master", which shouldn't be the case. No clue how that happened. Also, some of the experimental features I was tinkering with (using claude) leaked into the main branch. Took me more than an hour to fix things. At this moment I'm feeling like I should've stuck with Ghost. 😒

It was so much fun yesterday working on a BBEdit-based workflow with Hugo. Then, today it was ruined by the theme mess I made.


  1. Namely, wrapStandAloneImageWithinParagraph: false and some block settings. ↩︎

Roll 044 (2025) / Olympus Stylus Epic

Black and white film photo of woman in dress in pier

A roll of HP5 through the Stylus Epic. I love that little camera, but taping up the seam to avoid light leaks is no longer working. It'll be sad if I have to retire the camera.

The cover photo here is the kind of photo I love. It's just slightly off, somehow. It causes the viewer to stop and think, "Wait, what's going on here?" for just a moment. That's what it does for me, anyway.

{{ < gallery match="images/*" sortOrder="asc" rowHeight="150" margins="5" thumbnailResizeOptions="600x600 q90 Lanczos" showExif=true previewType="blur" embedPreview=true loadJQuery=true > }}

Permalink #

If you're reading this, my new shell script for creating notes here in Hugo is working. (See post).

Rewriting my emacs new-post function as a shell script

Spoiler and Content Warning: Claude did it for me

I normally use a custom function in Emacs to create new posts here, but I'm in the mood for BBEdit today, so I wanted something more generic. I asked Claude to rewrite the function as a shell script (bash). It worked perfectly, first try. Scoff at this LLM stuff all you want, there's no denying that it can be incredibly useful. In this case, it was 10 minutes from idea to working code. Maybe I'll find bugs later, but Claude will fix them for me ;).

A gist of the script is here

Here are Claude's comments:


Here's the bash script equivalent of your Emacs Lisp function! This script recreates all the key functionality:

Key features:

  1. Title input: Can be provided as argument or prompted interactively
  2. Slug conversion: Converts title to dashed-words format (lowercase, special chars become dashes)
  3. Bundle vs Single file: Prompts whether to create a bundle (directory with index.md) or single .md file
  4. Directory structure: Creates posts in ./content/posts/YYYY/MM/
  5. File naming: Uses YYYY-MM-DD-slug format
  6. Force overwrite: Same safety features as the journal script
  7. Command line options: Flags to skip prompts and force behavior

Usage examples:

# Interactive mode (prompts for title and bundle choice)
./hugo-post.sh

# Provide title, prompt for bundle choice
./hugo-post.sh "My Amazing Post"

# Force bundle creation
./hugo-post.sh -b "My Amazing Post"

# Force single file creation
./hugo-post.sh -s "My Amazing Post"

# Overwrite existing file
./hugo-post.sh -f "My Amazing Post"

# Combine flags
./hugo-post.sh -f -b "My Amazing Post"

Command line options:

  • -f, --force: Overwrite existing files
  • -b, --bundle: Create as bundle (directory + index.md)
  • -s, --single: Create as single .md file
  • -h, --help: Show usage help

The script handles the same logic as your Emacs function: it asks whether to make a bundle, creates the appropriate file structure, and generates the same frontmatter format.

Permalink #

Saturday, August 16, 2025

Black and white film photo of child running on beach
Beach day / Nikon FE2

It's all just bunnies on a trampoline, now.


I woke up and started a new Eleventy-based version of this blog. The mood didn't last long this time.


My brain switches from "I'm done using Emacs" to "I'm doing everything forever in Emacs" about once an hour. (I'm typing this in BBEdit.)


Alice has the right idea.

Alice resting

Thursday, August 14, 2025

Black and white photo of woman in hat in profile
Carol (2025) / Olympus Stylus Epic. HP5.

I would like to quit social media completely, but I'm addicted to validation. I tell myself that I actually suffer from FOMO, but the reality is that I'm looking for "likes" and comments and, well, validation. Maybe it isn't validation so much as it is feeling like I'm being seen. I mean, how else can one know they exist in the world?


So many people that I like are starting to share opinions that I don't like.


Wednesday, August 13, 2025

Black and white photo of woman waving on a pier with wave crashing behind her
My wife risking life and limb on the pier in Grand Haven

I sat down this morning, looking to journal a bit about the past few days with extended family, but Emacs threw an error on launch. I fixed that. Then, I couldn't find a note I'd written earlier. Sometimes I would just like to write stuff, take a few notes, and find things later when I need them, but without all the fuss. I don't know how to get there.