Obsidian-fu

/images/_e1b23d38-68ca-45eb-bf1b-56bd12ad0ce3.jpeg

Refactoring the shadowmaker has become a bigger headache than I had originally anticipated, but it’s for the long-term health of the system, so I’m sticking to my guns. This weekend added further drama when I finally stopped running away from frontmatter and embraced it for all my metadata. Sure, scattering #ch-command directives throughout the body of the notes was insane, but fixing it is going to mean more than just adding a few metadata fields. I may have to completely change the way I use Obsidian.

◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

Tag Streams

One of the best parts of the new scheme is that I can now keep thematic tags separated from the websmith control tags by putting the two in distinct metadata fields. Thematic tags will be regular tags, and routing tags can live their own lives in the websmith field. That will make the transformation from Obsidian to Hugo much cleaner.

Timestamps

Another weakness of the old system was its dependence on the timestamps.db file to keep track of creation dates for every note. It worked just fine, but it was fragile. If I changed even a single letter in the file title, the note would appear to be new, so old articles were suddenly getting promoted to “hot off the press” status whenever I fixed a typo.

But you know what never changes? The original creation date. Now my entire vault uses YYYY-MM-DD_HHmmss formatted dates for filenames, so changing a title has zero impact on the article’s perceived freshness, and since the filename is also the slug, the URL will remain stable too.

Overall, that’s a big win, but it has taken some time to figure out how to tweak Obsidian so that the changes don’t drive me insane.

Obsidian Note Titles

I’ve been using Obsidian long enough that my habits are pretty deeply rooted. When I create a new note, I automatically type in a provisional title. That quick fragment is enough to remind me why I opened the note in the first place. But naming a note by the timestamp? What kind of reminder is that? (For example, this note was originally titled “Refactoring My Life,” which will almost certainly have changed by the time you read it. But even if it changes five times, I’m betting it will still be at slug 2025-04-27_215245.)

Fortunately, I found a way to wash my fur without getting wet. (Currently my favorite foreign ideom, compliments of Germany.) Thanks to the Templater plug-in, I can still create a note with a helpful provisional title, but then Templater cuts in, copies that title into a title: metadata field, and renames the file with the current date and time info. Not only do I get to preserve my old habit, but I also don’t have to type the date in by hand and then worry about screwing up the format. (See? Sometimes we can have nice things.)

The other awkwardness with using timestamps for filenames was when browsing for notes. Everywhere Obsidian shows a list of notes, it was showing me a meaningless list of date strings. Am I looking for 2025-03-14_153246 or 2025-03-14_153426? Not exactly an insightful clue to what’s inside, is it? But with the FrontMatter Title plug-in, I was able to tell Obsidian to use the metadata title rather than the filename for those lists. And if I’m being honest, this issue might have been a deal breaker for me. Finding notes by memorizing their timestamps just seems like a stupid way to make life more difficult, and this system is supposed to be about making my life easier, not stupider.

Follow-Up: It’s been 2 weeks since I wrote the above note, and I can hardly remember what the fuss was about. The new system is easy peasy.


Read More


/images/_ab144e57-595f-4a1a-981f-c0f93fad5543.jpeg

Modal Frank

I’ve been wading through the refactoring swamp on a couple of other projects lately, and it appears to be contagious. Today I decided to pull Frankie’s CLI reader apart and put it back together again. All in service of the new lesson layout.

/images/_e42c8a8a-b127-431f-b414-425c5d17a2dd.jpeg

Ontology-2.0

While trying to integrate the many episodes of CaveTV into the site, I realized that the ontology was getting cramped. It needs to be revised to better distinguish between internal projects, external brand identities, multiple deliverables within a brand, and distinct showrooms.

What follows is the scheme we devised for what the abstractions are, how they should be tagged in Obsidian, and how the files will be managed within Hugo.

/images/_2ef531ec-bc45-46fe-841b-6864301fa06c.jpeg

Cutting The Monster Into Pieces

Now that I’ve identified a useable hosting candidate, my final test of their service will be to roll out a full implementation of the websmith deployment scheme. But in contemplating how I’m going to do that, I’ve realized that I may not have broken the project into distinct repos properly. So I’m going to figure it out by explaining it to the rubber duck. (Meaning you. :-)