commit 16d70ecd47f5ca811cbf6a8deedd86e79b853b74
parent a47caac4afaea461aa89ba92b23c8b63d8792804
Author: Eamon Caddigan <eamon.caddigan@gmail.com>
Date: Thu, 9 Jan 2025 09:45:47 -0800
Add weeknote for 2025-W03
Diffstat:
1 file changed, 62 insertions(+), 0 deletions(-)
diff --git a/content/posts/weeknotes/2025-w03/index.md b/content/posts/weeknotes/2025-w03/index.md
@@ -0,0 +1,62 @@
+---
+title: "Weeknote for 2025-W03"
+description:
+ "1001 albums, easy asyhcronous mesh netowrking, and a Bash scripting tip"
+date: 2025-01-13T07:59:00-08:00
+draft: false
+categories:
+- Weeknotes
+---
+
+[1001 Album Generator](https://1001albumsgenerator.com/)
+
+In 2005, a panel of music critics published the first edition of _1001
+Albums You Must Hear Before You Die_. Recently a web forum friend introduced
+me to 1001 Album Generator, which selects one random album (without
+replacement) each weekday for you to listen to and rate. As I write this,
+I’ve listened to 12 records, and while the list has all the problems you
+might expect[^problems], I’ve already revisited favorites and discovered new
+stuff. This whole effort won’t finish for me until October 2028, and
+I welcome the distraction for the next four years.
+
+[Filespooler](https://www.complete.org/filespooler/)
+
+[Last week]({{< relref "/posts/weeknotes/2025-w02/" >}}) I mentioned
+YunoHost, a project that makes it easy to set up a home server. I’ve had fun
+tweaking my configuration an installing a few apps, but now that I have
+a nice media server set up, I’m ready to start doing more interesting things
+with a (low power) computer that’s always on and accessible from the
+internet. I’ve found [John Goerzen’s writing about
+networks](https://www.complete.org/recovering-our-lost-free-will-online-tools-and-techniques-that-are-available-now/)
+inspirational, so I’m experimenting with his Filespooler tool for
+asynchronous command execution. Before bringing my RPi online with YunoHost,
+my “network” basically consisted of my employer’s laptop and my personal
+laptop, which were rarely powered on at the same time. Now[^now], using
+[Syncthing](https://syncthing.net/) and Filespooler, I can initiate a task
+for one computer when I’m sitting at the other (even when the computer I’m
+using is offline or the other is shut down), and the task will execute when
+it gets the chance. Being able to schedule tasks as soon as they come to
+mind in this manner is useful for “Getting Things Done”.
+
+[Bash FAQ: Changing directories and setting variables in Bash
+scripts](http://mywiki.wooledge.org/BashFAQ/060)
+
+Between Filespooler and last month’s [December Adventure]({{< relref
+"/december-adventure/2024-32/" >}}) experiments, I’ve been writing a lot of
+Bash scripts. Bash is a klunky scripting language, but it’s well suited for
+manipulating files and programs on a computer. I adopted the habit of trying
+to “clean up” after myself in my scripts; if my script changed the working
+directory, I made effort to return to where it started, and I was careful
+about manipulating any variables inherited from the environment. This FAQ
+entry reminded me that these efforts are unnecessary; here it’s presented as
+a problem, but the important thing to remember is that it’s _hard_ to change
+the calling shell’s environment from a Bash script. This makes sense in
+hindsight---a Bash script isn’t really different than a Python script,
+you’re just using Bash as an interpreter instead of Python’s---but this
+wasn’t obvious to me when I started writing scripts and adopted these quirky
+habits.
+
+[^problems]: Rock, English music, English _language_ music, etc. are all
+ _seriously_ overrepresented. But that’s hegemony for you.
+
+[^now]: Well, not _literally_ now. I still have some configuration to do.