Will Hopkins

Links and essays


Monolithic services are risky

Obsidian introduced the web clipper recently, adding to their suite of features. With plugins, you can do almost anything in Obsidian now! Want to publish what you write? Easy. Sync with git? Done. Embed a calendar? Faster than you can say "Google". Collecting research and citations? Boom.

Oftentimes, when searching for a new application or service to meet a need, I find myself searching for a monolith. One app that can do everything. The serious emacs-heads I've met use it that way: it's not a text editor, it's a way of life. When I used iOS, Drafts was the same way.

It's pretty appealing to use a monolith. If you have one app to do everything, it's all integrated. Any problem can be solved the same way.

I was thinking about using the web clipper as my read-later service, when I realized that I was going to centralize too many of my apps. While I do like the convenience, I have found there's too much risk.

  1. No app is perfect. It won't do everything, and I might use a worse service in the name of integration.
  2. If the monolith goes away or changes significantly, I have to replace a whole bunch of services instead of just one.

I settled on self-hosting as much as I can, and using single-purpose applications, similar to the Unix philosophy. No system is perfect, including this one, but it's the best balance for now.