Journaling with photos
I gotta hand it to those journaling apps that I don't want to use... I do like how easy it is to add photos to a journal entry. A picture's worth a thousand words, or so the trope goes, but I feel that when I stumble onto a long-forgotten journal entry with a photo attached. One glance at it, and the sensations come rushing back before I've read a single word of my entry.
I'm tempted to use those apps for this reason, but first, I wanted to try making it easier to use photos in my Obsidian journal. Here are the options I'm playing with.
Just use Obsidian
I can inject an image right into an Obsidian note from the mobile app. This provides a vaguely similar UX to the purpose-built journaling apps. But I find that my brain chemistry doesn't like the idea of clogging up my Obsidian Sync data with photos.
That's probably silly, as I'm currently using only 108mb of my 10gb data cap. I could put thousands of unoptimized iPhone photos in there before I'd start running out of space. This is textbook premature optimization. But still, it makes me uneasy. It's a distraction that I just can't shake.
Optimize images in place
I'm playing with a script to optimize images in place. This will placate my efficiency neurosis when using the just-Obsidian approach. I can snap a photo in Obsidian, write my entry, and later go back and reduce the image size to keep things lean.
To accomplish this, I created a Universal Action in Alfred that triggers a simple script:
sips -Z 1200 "$image_path"
From man sips
:
-Z pixelsWH
--resampleHeightWidthMax pixelsWH
Resample image so height and width aren't greater than specified size.
I learned during this project that sips
is a macOS built-in.
Cool!
This tends to get images down to ~150-200kb, reducing their size on disk by half or more. Not too shabby.
The trick here is to find the Goldilocks size. What's small enough to save meaningful space but still large enough to properly enjoy?
Use cloud image hosting
This was my first idea (which admittedly is a red flag, but I still like it): create an automation that uploads an image to a cloud host like Cloudinary, gets the public URL for the hosted image, and pastes a Markdown image embed link into my active note.
I still like this idea because what I'll often be doing is taking photos while I'm out and about, letting Google Photos slurp them up off my phone, and then later cherry picking the good ones for my journal entry. In that case, what I'll do is download the .HEIC image from Google Photos and then run my automation on it to get a cloud link that will render in Obsidian.
There are a few benefits to this approach. Primarily, I'm free to use high-res photos in Obsidian without adding any more files on disk. Services like Cloudinary can perform non-destructive optimizations on the fly. I can upload the original, heavy image and then ask Cloudinary to serve me a version no larger than 1200px on any side. If I later decide I want 1600px instead, I can just tweak the Cloudinary URL. Since bandwidth is cheap, I'll be accessing these photos at a very slow rate, and free tiers are generous, this feels like a good approach for the long haul.
(Granted, storage is cheap, too. But for some reason this feels better.)
There are some downsides. My images will be publicly accessible if someone can figure out the URL. That doesn't bother me, as I don't intend to upload anything sensitive. (I might be able to use signed URLs to avoid this. I haven't read about that yet.)
Cloudinary could someday disappear, get rid of its free tier, etc. I'm not too worried about this. Cloudinary's been around a while, and it advertises the free tier as "free forever."
Nonetheless, if for some reason I need to move elsewhere, I'll spend a few hours writing a script to automate the migration: scrape my journal for the Cloudinary URLs, download the target images, upload them somewhere else, replace the links in my entries.
Or, if Cloudinary were to suddenly vanish without notice, which seems very unlikely, my original photos will still be in Google Photos.
And so...
Overall, I feel close to success here. Whether I stick with just one of these approaches or continue to use all of them, I believe I can start using photos in my Obsidian journal entries without not too much extra work compared to the first-class journaling apps.
Do you have a solution to this dilemma? Email me!