I'm Not Using the Major macOS Mojave Features

I’ve been running the Mojave beta of macOS since it was released. Two of the most touted features, Dark Mode and Desktop Stacks, are interesting but I’m not using them.

I didn’t expect to love Dark Mode, as I’m not a fan of dark themes in general. At first it was fun, but the novelty wore off and I switched back to Light. I may try it again once more apps are fully compatible with it. It’s a fun, low impact way to shake things up a bit, but not for my everyday use.

I truly dislike the “Stacks” feature for files on the Desktop. I don’t use the desktop as a dumping ground for files. I use it as a temporary landing place for things I need to access quickly. I cluster files visually, and manually. With Stacks enabled, my files are moved automatically into stacks based on file type (by default). I’m not sure how automatically organizing things by file type would ever be useful. I never think, “Hmm, now where did I put that PDF file?” Files can also be organized by dates and also tags. Stacking by tags would be most likely to work for me, but I’m not going to tag files just so they can be swept up into a pile of documents I can’t see without clicking on first.

What’s worse is when clicking a Stack, the stack expands and moves everything around so I have to then try to find the file I’m looking for. I don’t like things being moved around like that. It’s like having the rug pulled out from under me. I find it disconcerting and not useful.

I look forward to hearing what people think of these features once in widespread use. My hunch is that many people will love Dark Mode but fewer will like Stacks.

Linked Out

I deleted my LinkedIn account this morning. I never use it for anything other than to decline connection requests.

My profile is outdated and not representative of anything useful. I don’t find much use for content there posted by other people.

Seems like a perfect candidate for deletion.

Fixing Roon on Mojave beta

Roon would not launch after I installed the Mojave public beta 2 on my iMac. I found this thread on the Roon forums which suggested that I remove and re-add Roon from the list of apps in the Accessibility list in Security preferences

Roon Accessibility

It worked! Phew.

Showing Webmentions here on baty.net

This blog is statically-rendered using Hugo, which means there’s no easy set of plugins (that I know of) for adding Webmentions. There’s nothing like the IndieWeb plugins for WordPress. I’ve been collecting webmentions for a while via webmention.io but needed a way to render them here. I decided to go ahead and roll my own.

Well, to be honest, I just stood over Karl’s shoulder while he wrote the JavaScript for me. He’s so good at this it’s ridiculous. It would have taken me days to cobble something together. Karl did it in less than an hour. I tweaked it just a little, added some CSS, and boom! Webmentions.

Here’s the initial bit of JavaScript.

I’m sure I’ll want to dial things in, but this is a fine start. Thanks Karl!

I Have Two Blogs and It's Fine

Over the years I’ve switched blogging platforms a dozen times or more. I enjoy tinkering, and a personal blog is a great place for doing that.

The problem is that things frequently break in the transition. I have entire swaths of images missing from 2012. Many of the older posts didn’t convert well and are filled with broken HTML.

I’ve been waffling between a statically-rendered blog using Hugo and a blog running on WordPress. The last few years it’s been back and forth, back and forth. Static, WordPress, Static, WordPress.

To prevent further breakage, I’ve been running both. This blog, baty.net runs Hugo and jack.baty.net runs WordPress. I figured at some point I’d get over my indecision and settle on one of them.

A static blog is fast, easy to host, portable, secure, and permanent. A WordPress blog is flexible, full-featured, and so easy to use. Which to choose!?

At some point recently I stopped worrying about it. I just started posting to whichever one I felt like at the moment. The unofficial intention was that baty.net would be for longer, text-heavy posts and jack.baty.net would be for “micro” posts, links, photos, etc. It’s sort of gone that way, but the rules are pretty loose and I haven’t been over-thinking things the way I usually to.

So right now I have two blogs and it’s fine.

Synology Moments First Experience

I now have a nice, big Synology NAS. Synology’s new photo app, Moments, aims to be a replacement for Google Photos, which sounds like a great plan. I’ve been using Google Photos since it launched but it gives me the creeps having so much of my life under Google’s watchful eye.

Jumping right in, I imported all 79,000 photos from Google Photos into Moments. The import didn’t take as long as I expected. The indexing and thumbnail creation process, however, took days. Once everything finished I started poking around the Moments app.

It’s kind of a mess.

So many of the dates are wrong on the imported photos that the word “moments” doesn’t really apply. I get that some of the source files are film scans, so the exif data can get wonky, but they’re not wonky in Google Photos. In Moments they appear to be almost entirely random. It’s kind of useless.

The iOS app for Moments only sort of works. I continually get “Operation failed” messages, and the timeline isn’t even the same as the web version. Not sure how that’s even possible. I am running the iOS 12 beta so I’ll give it the benefit of the doubt.

Browsing Moments is slow. Even on the LAN, it’s laggy.

Facial recognition is fair, but not as good as Google’s. There were 10 or 12 different groupings of some people that I had to merge manually.

Moments’ search index doesn’t seem to include file names. I carefully name every file for the very purpose of helping find things. Not being able to search the file name makes some sense, since most people probably just automatically back up iPhone photos, but it’s a significant drawback for me. I don’t want to search for “Dog”, I want to search for “Josie in the car”. I can’t do that in Moments.

As it stands, I’m not going to fullfill my dream of ditching Google Photos for Moments.

I Failed at Using Elfeed as My RSS Reader

Since I’m in Emacs most of the time anyway, I thought it would be useful to use Elfeed for reading RSS feeds.

It didn’t work out.

I couldn’t make heads or tails out of what Elfeed was doing with windows. I felt even more helpless with window management than usual. I often have an Emacs frame in full-screen, split into two or three columns. With Elfeed’s feed list in the left of three columns, new entries would open in the far right column. Weird and unexpected. Starting with two columns, the right window is so wide that it makes reading text difficult. I couldn’t figure out how to manage any of this.

I couldn’t get the article date to display in the feed list. All of the screenshots I’ve seen of Elfeed show the date. There’s a bunch of settings for the date format but I couldn’t find anything about including it.

The feed list format goes all kittywampus seemingly at random. Sometimes it looks like a plain text list of titles. As I read each article, its entry reformats itself with the proper columns and faces. I cannot figure out how to fix it.

I couldn’t get the Elfeed database to sync consistently. Putting the database in a synced folder didn’t seem to work. I’m sure I’m doing something wrong or missing a step. I can’t seem to figure out when Elfeed updated the database, and I don’t want to include a bunch of config hacks to force the issue.

Beyond my technical failings, I’ve learned that reading feeds is, for me, a “lean back in the chair and click things” activity. With Elfeed, I need to be sitting upright with my hands on the keyboard and I guess I’m too lazy for that.

I’m once again using Feedbin for managing and reading RSS feeds. I started using Feedbin as a way to manage and sync my subscriptions, but planned to actually read things in Reeder but never got to the second part. I just use the web UI for now and it’s not bad at all.

Forklift as a Finder replacement

forklift

The Finder in macOS has always been very simple. Too simple, really. I’ve tried just about every replacement app I could find and all of them have come up short in one way or another. If they’re too simple, then why bother? If they’re too complicated they tend to be slow or cumbersome to use. Either way, they introduce friction and just get in the way.

I’ve used Cocoatech’s Pathfinder on and off for years and it’s a well-done and powerful app. Version 8 was recently released, adding a ton of cool flexibility around “modules”. Too much flexibility for me, I’ve found.

I started testing Forklift by BinaryNights and I think I may have found a Finder replacement with a usable level of complexity that doesn’t get in the way.

Here’s why I like it:

  • Remote connections. I use Transmit for heavy-duty remote file management but having a few frequently used servers right in Forklift’s sidebar is handy
  • Integration with command line tools. I can access command line scripts that act on selected files in Forklift.
  • Editing files in preview pane. I can select a text file and not only see the file’s contents, but I can edit it right in place.
  • Multi Rename. I rename files with consistent patterns all the time. With Forklift I can save them as presets and they’re always right at hand.
  • Creating files. I just want to create a new text file in whatever folder I’m viewing. There’s a button in Forklift’s toolbar for this.
  • Viewing hidden files. I can easily toggle display of hidden files.
  • Open in Terminal. There’s a button that opens the current directory in iTerm.

All of these features are available in one form or another with other apps or scripts, but Forklift puts them together in a nice, usable way that doesn’t also overcomplicate things when all I want to do is manage a few files.

I Hate Peter Merholz - Glassdog

Glassdog in 2004:

Ito, however, in his quote, uses the word “weblog,” a term I’m not familiar with. I think it’s a derivation of ‘blog,’ which means “to vomit with vehemence and much noise.”

Never gets old.

Fun With Server Apps This Week

I’ve been having fun with a few new, and new to me, servers and apps this week. Here’s a quick summary.

Fathom

Fathom

Brett Terpstra mentioned the release of Fathom web analytics. I’ve been keeping my eye open for a simple replacement to the no-longer-supported Mint and Fathom looked close. It’s a single (Go) binary and was super easy to install. I’m testing it with baty.net and so far so good. It’s a lightweight alternative to Matomo for simple web stats.

I see people claim to have no interest in analytics on their blogs and good for them. While I’m in no way obsessed with analytics or “engagement,” it’s nice to know what and how often people are reading. Feel free to block the tracker.

GoAccess

GoAccess

GoAccess is an open source real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems or through your browser.

When all I need is to quickly get a nice view of web server activity logs, GoAccess is very nice. It’s easy to install and use via either a terminal or web browser.

Gitea

Gitea

I often wish we all used Mercurial or Fossil for source code management, but we don’t. We use Git. That’s where all the tooling is, and it’s where Magit is, so I’m stuck with Git.

I don’t want to store my private projects in someone else’s app but I want a wiki an issue tracking so I’ve installed Gitea. Gitea is a single-binary app written in Go and runs against an SQLite database. It’s like the opposite of running a self-hosted Gitlab instance. Works great.

Caddy

Caddy is a clever, easy to use web server that automatically handles HTTPS. It’s also my favorite thing, a single binary, so installation was basically just copying a file to the server.

My needs are simple, so Caddy has fit the bill quite nicely. I’m running all of the above apps using Caddy as a proxy and it’s all handled by a 20-line config file. Nice.

Using Caddy for serving static content

I have a bunch of static files/websites laying around so I stood up an Amazon Lightsail instance and installed the Caddy web server.

static.baty.net

A cool thing about Caddy is that it handles provisioning and installing SSL certificates automatically from Let’s Encrypt without me doing anything. It also automatically redirects from http to https.

Here’s the entire config file (Caddyfile)

1
2
3
4
5
6
static.baty.net {
  root /home/jbaty/apps/static
  log /home/jbaty/logs/static.baty.net.log
  gzip
  browse
}

The browse directive enables directory browsing, and it even looks decent.

Caddy can do all sorts of neat tricks, like serving up Markdown files as HTML pages. Just drop Markdown files in a folder and add a markdown directive. I’m sure I’ll find a use for that. It would be neat if it could do the same with Org-mode files.

I’m sure I’ll explore the various plugins available. I see there’s one for Hugo sites, which looks interesting.

Having super-simple HTTPS automatically should be compelling for people looking to get on the HTTPS-everywhere train.

The Frictionless Joy of Using a Single Platform

I’ve had so much fun these past few months learning my way around (Arch) Linux on the desktop. Using a ThinkPad while mobile instead of a MacBook Pro or iPad has been a pleasant change of pace.

I settled on the i3 Window Manager and found it to be a totally new and mostly pleasant way of working with windows. I tried all sorts of cool software that I’d only read about before. I spent lots of time editing configuration files, tweaking the dickens out of every possible feature. This has provided countless hours of entertainment and I learned a lot.

However, I’m putting my Linux experiment on hold.

It’s the idea of Linux that I love. Wall to wall freely distributed, open source software is such a cool thing. Being free from reliance upon any one particular vendor is a great feeling. Having endless choices for how the operating system and software behave is liberating. I like having a variety of hardware options and not being stuck with a brand new laptop with the shittiest keyboard in the world. And I must admit, I don’t mind the nerd creds that using something like Arch provides. It makes me feel like I’m zagging, and I like zagging. Everyone (well, not everyone) I know uses a MacBook Pro and it’s fun being the guy using something totally different.

But I run into problems. The trouble starts when constantly switching between macOS and Linux. Keyboard shortcuts are close-but-not-quite the same. My shared dotfile configuration needs exceptions so that paths and apps work correctly on both systems. It’s death by a thousand cuts.

Were I to switch completely to Linux I’d have none of these issues. Someday I may go all Richard Stallman about software and that will be that. Until then, I’ll have to remain content being a “Mac Guy”.

I’m not yet ready to give up the wonderful software I’ve used and loved for a decade or more on my Mac. I’m not ready to find reliable substitutes for all the little tweaks and scripts I’ve collected over the years. Mostly, I’m not ready to put up with the constant friction of living in two similar-but-different environments.

The ThinkPad will remain at hand, though. I like using it as a single-purpose writing device. A screen split between Emacs, a Terminal, and a Browser makes for a pretty tight, if not completely distraction-free, writing environment. Plus, the keyboard is way better than the one on my MacBook Pro.

I’m also using the iPad more.

“But wait a minute,” you protest. “That’s two different platforms, right? Doesn’t that cause the same problems?”

Good question, but no, it doesn’t. The Mac and the iPad are entirely different devices. Switching between them doesn’t cause me to suffer from the “uncanny valley” problem. They are so different that I don’t try using them for the same things in the same way like I’ve been doing with macOS and Linux. Seems weird, maybe, but it makes sense to me.

I’m sure that I’ll hear about all sorts of ways to fix everything I’ve mentioned and that “It’s just a matter of editing foo.conf and memorizing 75 new key bindings.” Thanks, but no thanks. Not right now.

All this to say that I’m having fun tinkering with Linux but I’ll be sticking with my Macs and not worrying about whether every app I want to use is cross-platform. I won’t be worrying about /home vs /Users. I won’t have to give up any of my beloved tools. I won’t suffer the mental friction caused by subtle differences in how everything works.

The Intel NUC and Roon as My Music System

Figure 1: Intel NUC running Roon Core

Figure 1: Intel NUC running Roon Core

I have been using Roon to manage and play my music collection and it’s wonderful.

I wrote a little about my first impressions here. In fact, I like it so much that I paid the $499 fee for a lifetime subscription. This seems steep only until you consider it as a critical component of an audio system. (See how I rationalize?).

Figure 2: Roon Player running on my iMac

Figure 2: Roon Player running on my iMac

For the first couple of weeks I ran Roon “Core”, the brains of the system, on my iMac. This worked fine, but I wanted to offload the processing and storage to a dedicated device.

Enter Roon Optimized Core Kit, which is a custom Linux build (RoonServer) created specifically to run Roon Core on your own hardware. In my case, that hardware is the Intel NUC7i3BNH. The NUC is a tiny, headless, silent server perfect for running ROCK.

All of my music is stored on the NUC’s internal SSD drive. I don’t have a large library, but if I run out of room, I can easily plug one or more larger USB drives into the NUC and tell Roon Core where the music is stored on them. Roon manages all of my music regardless of where it’s stored. When I buy new music I only need to copy the files to the shared Roon drive and it’s automatically sorted, indexed, and fed into Roon’s music database.

The Roon Core software running on the NUC is managed via a web control panel. Once the initial installation is done, everything can be done headlessly. Updates to ROCK are done right within the Player app. Considering several moving parts, some rather technical, this has all worked flawlessly so far.

Figure 3: Roon's web control panel

Figure 3: Roon's web control panel

Using Roon, I can easily control all of my music, stored anywhere, using any device, and play it on any combination of HomePod, Sonos, and dedicated amplifier. If I get bored with my own music collection, Roon’s integration with the Tidal streaming music service gives me access to any music I could ever want, using the same system.

It’s pretty great.

Hugo Page Bundles

I haven’t paid much attention to Hugo’s Page Bundles since they were introduced, but I should have. Page Bundles let me put a blog post’s images and other assets in the same folder as the original Markdown file. This means the images for a post ride along right next to the post rather than way over there in the /static/img/2018 folder. Over the long term that should be handy.

Also, thanks to Kaushal Modi for pointing out that his ox-hugo package already supports Page Bundles.

1
2
3
:EXPORT_FILE_NAME: index
:EXPORT_HUGO_SLUG: hugo-bundles
:EXPORT_HUGO_BUNDLE: 2018/2018-05-24_hugo-bundles

Nice.

Packed The First of Many Boxes

I’m getting married next year. This means I’ll be selling my house and moving. I’ve been in this house since 2001, so I’m rather well entrenched.

I’m excited about the change, but I’m not looking forward to going through everything I own and deciding what to do with it. I may need a little Marie Kondō magic.

There’s no great rush, but I’ve just packed the first box of books. Of course I’m keeping all the books.

It’s begun!

Posting with ox-hugo so far

I’m a few days into using ox-hugo for publishing blog posts and so far it’s been great. There’s a bit of a learning curve, but I’m finding it to be worth it.

Here’s what the source Org-mode file looks like right now.

I like it!

Things I Write With

As someone who loves writing with analog tools, I have always switched willy nilly between pens, pencils, notebooks, types of paper, etc. I never seemed to find any consistent patterns. The past year has, finally, found me settling on a pretty stable set of writing tools.

It goes like this:

For day-to-day note taking, I use a pencil. Go figure, right? I tried using the Blackwings, which are wildly popular with the fancy pencil set. They write well enough, but they’re too long and no one talks about the elephant in the room; that big, clumsy, eraser with the sharp metal bits. They look funny and feel icky, so I switched to something I have grown to love - the Mitsu-bishi Hi-uni and 9850 pencils. They write at least as well as the Blackwings, cost less, and hold a point better.

For my daily updates in the Hobonichi Techo, I’m still in love with the Staedtler Pigment Liners. The fine, black, crisp line works great on the small pages of Tomoe River paper.

And for anything “fancy” like letters, postcards, or long-form journaling, I have settled on two fountain pens; The TWSBI Diamond 580 and the Pelikan M400.

I’m pretty happy with these choices. It’s been months since I’ve struggled with deciding what to write with.

Don MacAskill's AMA Reinforces My Optimism About Flickr

Don MacAskill, Reddit:

But Flickr isn’t Instagram and, under my watch, it won’t ever be. Flickr is all about a long-lasting, deep, abiding photographer community. It’s not about showing a photo to quickly gather some likes & comments today, only to never have that photo be seen again. It’s about engaging in visual storytelling that lasts forever.

I’m not interested in competing with Instagram and Snapchat, so if that’s your definition of “social” then my answer is no.

The possibilities around SmugMug’s purchase of Flickr has me so very excited. This Reddit AMA with MacAskill makes me feel even better about it.

Blue Apron after Five Years

I started receiving meals from Blue Apron five years ago today. For someone who’s been living alone, meal delivery services are wonderful. I hate shopping, I never know what to shop for anyway, and I’m not a great cook. When I do shop I’m forced to buy more than I need and things get thrown away. Or I just buy hot dogs and stuff to make nachos and desserts.

Blue Apron meals are always interesting, colorful, and delicious. They take some work to prepare, though. It seemed like I was always small-dicing what felt like 35 ingredients at every meal. So, I started looking for alternatives.

My sister had been using HomeChef and claimed the meals were super simple. I switched, and she was right. They also offered a two-meal/week plan. Blue Apron was limited to three meals. HomeChef also allowed me to choose between a nice variety of dishes each week. With Blue Apron I just took whatever they sent.

After nearly a year, I checked in on Blue Apron and found that they had made things simpler, now offer a two-meal plan, and have a decent selection of meals to choose from. I switched back and couldn’t be happier.

The photo above is of tonight’s dish, “Tokyo Beef & Rice Bowls with Soft-Boiled Eggs and Roasted Brocolli.” I used their photo here because mine didn’t turn out looking nearly that good, but it was delicious! So good in fact that it prompted me to write this post.

I’m happy to be back with Blue Apron. If you’re looking for a meal delivery service, I’d give the nod to Blue Apron, but you wouldn’t be disappointed with HomeChef either.

Org-Journal May Replace My Daybook.org File

The more I use Bastian Bechtold’s Org-journal the more I like it.

For the past few years I’ve kept a sort of “Daybook” using a datetree in a single Org-mode file. This works pretty well, but it’s always felt more suitable for shorter entries. I wanted something that would work with longer entries, so I tried Org-journal.

Org-journal uses one file per day. I first thought that this would make browsing my journal difficult, but it doesn’t. I find the built-in search to be easier to manage than using sparse trees or other search methods in an ordinary Org file.

I have found myself creating a journal entry using Org-journal for everything, including the things I’d normally put into my Daybook.

Org-journal even handles TODOs, and carries forward any unfinished TODOs from the previous day. It’s kind of like an automated Bullet Journal.

I export things I write each month to PDF files and print them out. (Yes, I’m that guy). With separate files for each day, I can do this by running something like cat 2018-05*.org > 2018-05-Journal.org and export the resulting file to a nicely-typeset PDF easily enough.

I’m not quite ready to completely let go of my habit of logging things into my Daybook, but the writing is on the wall.