Yak Shaving - Maybe Something Bad? Maybe Something Good?

Yak Shaving - Maybe Something Bad? Maybe Something Good?
Photo by Lieve Ransijn / Unsplash

Yak shaving is something I deal with every single day, without fail. I have clear goals in the morning, but by the afternoon I can be working on something far afield from intended. But this is not always a bad thing, especially if you can recognize it while it's happening and objectively assess its impact.

My most recent example is I recently received an invite to start using the Arc browser beta for Windows. It's built on top of Chromium, and I really like it, but bookmarks are an antigoal. So in order to switch to Arc as my main browser, I needed to figure out how to manage bookmarks. I've looked at services like Raindrop.io and I really want direct control over my data. Enter Linkwarden.

Linkwarden is a service much like Raindrop, and includes features like preserving added links to screenshots, PDFs or even automatically requesting the Wayback Machine archive it. I've only been using it for literally only a few hours and I've fallen in love. Besides supporting its own users, it has support for SSO systems. Of course I want to make sure that I'm utilizing the same login across all of my self-hosted services. You can see where this is going, right? Enter Authentik.

Authentik is an enterprise-grade SSO with an insane amount of flexibility. I've been using Authelia up until now, and it's quite good as well, especially for self-hosted situations. I have both services up and running so I'll be able to migrate my existing services without disruption. (Note to self: actually do those migrations) With that level of flexibility, however, there's an similar increase in complexity. Without recipes for common configurations, it can be quite daunting.

All of these changes encouraged me to install Dockge on my primary Docker server and start migrating from a monolithic compose file to individual stacks managed by Dockge. All this from a simple decision to change my main browser. This might lead you to ask, "Was it worth it?" Honestly I think it was. I've learned a lot in the past 24 hours about managing Docker installations, organizing services and considering philosophical questions like "Do I run a separate database container for each service, or run a single one and have everyone talk to it?" I did manage to head off one particular shave for the moment, using pam_ssh_agent_auth to allow me to sudo and have completely passwordless root access to my machines.

Yak shaving, at its worst, can eat up an entire day and leave you feeling like you haven't accomplished anything at all. But it can also expose you to new things you've haven't even thought about and create new learning opportunities. Just don't let it distract you from what you need to get done!