Shaving a yak, and the yak just keeps getting hairier. :(
Shaving a yak, and the yak just keeps getting hairier. :(
Yesterday, I wanted to quickly post something on my blog when I realized that my blog generating process was broken after upgrading to Debian 13.
So I had to analyze the situation, got lost in my complex shell script hell and decided to merge it into one single script without lots of dated stuff.
Next I realized that one of my own libs has a minor issue with Python 3 strings: had to migrate to raw strings to get rid of very valid warnings.
Well, I could not publish that lib any more so I had to migrate that project to "uv" to do so. Finding out how to do that ...
Lib was working. Next, I rewrote my blog generation script which took me four hours or so with heavy help of Claude AI.
Also moved this to uv.
Some unit tests were failing. Partly because of the pandoc upgrade, partly because of classic bugs.
Debugging one by one and FINALLY, after maybe six hours, I could actually publish that article.
A classic #yakshaving Saturday. π
https://en.wiktionary.org/wiki/yak_shaving
The current levels of #yakshaving:
* I want SDL2
* SDL2 configure needs a gsort that has the -V option
* Coreutils 9 needs a newer gmake
* gmake-4.4.1 doesn't seem to want to build on 2.95.3
Why is it spelled "Yak Shaving" and not "IaC Shaving"?
#Kubernetes #K8s #YakShaving #IACShaving #IaC #InfrastructureAsCode
In an EPIC bout of yak-shaving I have reduced the build time for this static site infrastructure running on a puny VPS by a factor of 5. Come along on this undiagnosed journey.
Anatomy of a yak-shave:
Oof, deep in some #yakshaving here, time to check in, let's see if I can even remember what I was trying to do...
Right! Okay, so we started with...
0β I wanna do some morning guitar-playing!
0β Right, the best tab I found is still pretty subpar
0β But I was doing some Sonic Visualizer to improve it!
0β Let's pick up where I left off at 3am last night
0β Hmm, sure would be nice to have my desktop Projects directory via nfs...
0ββ¬ Let's just ssh into my desktop and make that happen real quick...
+ββ§β [PUSH: Playing Guitar]
1β Oh, it's already in /etc/exports, lovely!
1β Okay, let's mount it
1β Ugh, right mount point doesn't exist...
1β Ya know, I wonder if there's a flag to create the mount point...
1β Let's just try it and see if it creates it first
1β Argh, I wish I could use vi mode in zsh to copy/paste scrollback
1ββ¬ Hmm...could I??
+ββ§β [PUSH: Mounting Projects]
2β (General web searching, with no great success)
2β Looks like there's zsh-vi-mode, does that do it?
2β Hmm...cool stuff, but looks like it still doesn't copy scrollback
2ββ¬ Still might be useful tho...LATER
3ββ Oh, this reddit thread has people a year ago disappointed that zsh-vi-mode doesn't interact with the system clipboard, but the readme now says it does! I should reply and let them know!
2β Hmm, looks like the best way to get what I want is tmux
2β I like tmux well enough, can I just run tmux as my shell?
2β Looks like it, just put this in my .zshrc...
2ββ¬ Oh, I should finish getting my dotfiles repo up to date real quick
+ββ§β [PUSH: Tmux As Shell]
3β Okay, now is this submodule out of date or is it actually newer
3β Okay it's newer, I should commit it
3β Wait...nope, never mind, I was wrong, revert and update
3β Okay, gonna add the other accumulated changes...
3β Merging was easy, what are these other files laying around
3β Oh, my wallpaper changer!
3ββ¬ I should really split my wallpaper tools into their own repo at this point...
+ββ§β [PUSH: Updating dotfiles]
Um. Yak shaving. Here's my story.
I'm up in the middle of the night, and my iced tea glass is empty. I'll just run down to the kitchen and get some more. In the kitchen, I see some pretzels, eat them, and realize I'm kind of hungry. There's some cottage cheese in the fridge, so I'll eat that.
π§΅ 1/N
I just wanted to change a few settings, and now I'm looking at how to send a PR into Homebrew.
Now experimenting with the Zola static site generator. This was originally just to get timing information for my SSG performance comparison blog post.
However, inevitably, I am now impressed and considered Yet Another Blog Migration.
Similar to Hugo (single Rust binary and fast) but the docs are much easier for me to understand.
It's Saturday afternoon; I had an idea for a simple mobile app, so I fired up VS Code w/Flutter.
I haven't done any Android dev since last year or so.
About 3 hours later, I'm still upgrading SDKs, packages, plugins, dependencies.
Now I'm upgrading Android Studio, even though I don't want to use Android Studio...
NEW VIDEO: "Yak Shaving in D&D: Stop Endless Side-quests"
'Yak shaving' in D&D is when endless side-quests derail the main story. In this video, I break down what yak shaving looks like at the D&D table, why it happens, and how you can stop it before your campaign drags down into a state of tedium.
Watch here: https://youtu.be/WueSg1EHlyg
Subscribe for weekly DM and player tips.
#DnD #DungeonMasterTips #TabletopRPG #RPGTips #DMAdvice #RoleplayingGames #TTRPGCommunity #SideQuests #YakShaving
COMING SOON: "Yak Shaving in D&D: Stop Endless Side-quests"
I've got a new video coming out tomorrow (Thu 9/25) that addresses the pitfalls of your D&D game being overrun by side-quest after side-quest. This has great advice whether you're a DM or a player (it's entertaining, too).
Stay tuned!
#DnD #DungeonMasterTips #TabletopRPG #RPGTips #DMAdvice #RoleplayingGames #TTRPGCommunity #SideQuests #YakShaving
Goal: Start organizing some files for our light show. But first... - Move NAS to new physical and network location - Update internal DNS for new NAS IP - TLS cert refresh for NAS' UI - System update for NAS - Fiddle with new features/settings #YakShaving
Anybody need a hairless yak?
Every time i tried to use a longer option in #ag (The Silver Searcher) in Cygwin, it complained about _split_longopt.
So i spent like half an hour hunting down exactly which file defined the #bash completion for ag on cygwin.
It is /etc/bash_completion.d/ag.bashcomp.sh
For some reason bash completion are split between that directory and /usr/share/bash-completion/completions/.
Putting them in one directory would have been too easy.
So far Today in #yakshaving
I want to juice a load of pears to start to make perry.
First I had to go to work
I collected the pears
My trolly broke.
Riped down some scrap plywood to make new trolly sides. That was hardwork.
Fixed the bandsaw so I didn't have to make another manual rip for the other side.
Now to see if i can get home.
The yak is now bald, and I can print the labels that I need to tidy up my tools so I can load my new toolkit!
I am yak shaving the shit out of this one task that I should've finished 6 weeks ago.
SO to recap:
* I was tinkering with a Max patch that essentially implemented something like Audrey II from Synthux
* what I made was nice but I wanted my own implementation of resonator and reverb to give me more control so I could put an interface on it
* I started making a reverb
* after watching Tom Erbe lecture decided I needed a granular delay for making reverb
* I should be working on my product and not this
Anyway - a granular delay patch in #max gen~ !
oh, well, that explains my confusion... was looking at Liquid.js's _API_ docs, not their tags docs. I mean, "api" sure seems like it SHOULD be the interface of how to use it, but... lulz? >.<
me: why does this not tell me how to make a for loop?!?! https://liquidjs.com/api/classes/ForTag.html
my buddy: oh, oh dear...
me: oh. heh. the docs aren't labelled api, are they...
https://liquidjs.com/tags/for.html looks MUCH more like what i was looking for!
#yakShaving #websiteBuilding
I... I think i've stood up a new digital ocean droplet, installed and configured a firewall & webserver, and successfully updated my DNS. #YakShaving #ThankGodIAmNotAProfessionalSysadmin