Quarterly Inventory 2024 – Q2

Dear FutureMe,

Today would be a good day to do a quarterly inventory.

Question: How is your personal life going?

Question: How is your work life going?

Question: How is your volunteer service life going?

Personal Life

There hasn’t really been much change this quarter in my personal life.

One event that was noteworthy was that my 86-year-old mom was in the hospital for three days, (well, four, if waiting in the emergency room waiting room counts as “in”), with a C-diff gut biome infection. Apparently, an antibiotic she was taking for an eye infection allowed Clostridioides difficile to run amok.

I’ve been a little sad and depressed about how much WordPress work I need to do. This blog needs to be moved to a new server, but I really don’t want to take all the crap along, that the various plugins have added to the database, never to leave. That is a more complicated migration than just shipping all the junk over. “Complicated” is proving disheartening to document and plan. I have another couple WordPress sites to migrate in the volunteer service life category, too.

I had a need to edit a PDF; I get to submit an application to our local Sheriff’s office to meet with people about to leave incarceration. The good news is that Firefox (my favorite browser) has PDF editing capabilities now. Alas, the PDF application form wants signature and initials. The bad news is that Firefox ESR is version 115, and adding graphics to PDFs doesn’t show up until version 119. So I need to upgrade. I tried to upgrade from OpenSuSE Leap 15.6 to OpenSuSE Tumbleweed Slowroll, but the ISO image is broken and spontaneously reboots almost immediately after booting. Now my main machine is broken, big time. I installed Debian with KDE. That worked fine, except guess what else uses Firefox ESR version 115? At least I was back up and functional, but now I need to find a rolling release with KDE. I tried PCLinuxOS. It was quite amusing to me that they call themselves The Boomer Distribution. Technically, I’m a Boomer, although when the real Boomers were off doing drugs sex and rock-and-roll at Woodstock, I was 8 years old and discovering that I liked reading / wasn’t great at sports.

Anyway, I gave up on PCLinuxOS after a week. I couldn’t get Steam to work, and the PCLinuxOS forums don’t let me just sign up: I’d have to email some guy at a Google email address my preferred User ID and password. Yeah, no – I’m out.

I have installed Manjaro. I like it pretty well. I have become a part of the Oh by the way, I use Arch club.

There are still things I want to tweak, to make using it smoother. But it does run Steam, and it does run KDE with Kröhnkite. I’m happy with this.

Work Life

If $39,000 dropped into my lap today, I would retire tomorrow.

One fun thing sprung out of taking on printers and the print server. It had a problem because old printers would be deleted from the print server, but not from the client workstations that used to print to them. Some portion of 5,000+ workstations printing to 830+ printers were configured for more printers that are no longer there. I’m guessing that about 5% of the workstations are configured for printers which no longer exist. Microsoft Windows apparently just pounds on the print server, asking if the (deleted) printer is back online yet. I’d be curious if they abuse their own print server that way. They probably don’t have a print server because network printing is hard.

Anyway, I get to bring in a print server log file, parse it for missing (deleted) printers, and generate a service ticket to have the desktops group visit the user and remove the missing (deleted) printer. Of course, one user can have multiple deleted printers, and I don’t want to generate six tickets for six printers for one user. I’ve been getting to keep track of these in a Maria DB database, and doing all sorts of Perl scripting to help me with this mini-project. It has been fun.

The other aspect is that I got print server reboots to work in about a minute; where before it was problematic. If there were more dead printers than Apache threads, the server would get into a deadlock, waiting for the dead printer threads to time out – but the polling cycle was faster than all of them could time out. Oof.

Volunteer Service Life

I still have too many volunteer service commitments. One dropped off on May 19. The event was successful, with 178 people attending from all over northern California. Another dropped off on June 8, when the Founder’s Day Picnic was over. We were hoping to feed 300 people, but only 83 showed up. I had been flying pretty blind on this one. We came out in the black, but only barely.

Migrated from OpenSuSE to Debian on my main machine today

This morning, I hadn’t planned on that, but….

I had a need to edit a PDF. I know that Firefox has the ability to do so; and I filled in information. But then it asked for a signature and initials – I have those in .jpeg form, but Firefox didn’t have the buttons for inserting images. Whoops: Firefox ESR version 115 doesn’t have that, because that showed up in Firefox 119.

Well, it has been a while since Tumbleweed was disappointing because of a lack of KWin tiling script support. I had downgraded from Tumbleweed to Leap 15.6. Maybe I should try Tumbleweed again.

Also, I’d been listening to the FLOSS Weekly podcast over on Hackaday, and their guest Brodie Robertson had mentioned Tumbleweed Slowroll as something new. I kind of liked the idea, so I tried a few steps.

These are list here, at the official page:

 zypper ar https://download.opensuse.org/slowroll/repo/oss/ temp
zypper in openSUSE-repos-Slowroll -openSUSE-repos-Tumbleweed
rm /etc/zypp/repos.d/*.repo # or backup
zypper dup

This got me an empty screen with a blinking cursor. Yay. Not.

I downloaded the Slowroll ISO and put it on a USB stick.

I used the BIOS to choose the USB stick to boot off of, and got the “Install” option. Sure, that can be a little drastic, but I’ve done this many times before. Mostly, it is a little annoying to find that I don’t have an application installed that I’d like to use at the moment. But because my /home is physically on a different drive, I’m safe to not lose any data (reasonable precautions taken).

I go to install Slowroll, and it reboots before starting the installation. The motherboard logo briefly shows, and then I’m back at the “Install” menu item again.

I’ve got a boot loop.

Great. Just great.

Did I mention that I dearly love systemd and journalctl (not). Back in the good old days, something would append to /var/log/messages, and I’d have a chance to figure out what went wrong. But with systemd, the journal is new every boot, and although I can successfully boot to a previous read-only snapshot, there’s nothing there from an aborted installation. Nothing at all. There’s only the current boot messages (which being from a successful snapshot tell me nothing).

Okay, maybe there’s something wrong on my boot drive. Physically disconnect the /home disk drive, boot off of a gparted ISO, and delete every partition on the boot / OS drive.

Try the Slowroll ISO USB again.

I’ve still got a boot loop.

Just great.

I’ve been building some Debian machines, as servers, so I can practice WordPress migrations. I pop in that USB stick, and Debian installs fine.

I still have to wrangle bringing in my /home disk drive and mounting it as /home, but at least it will work.

And here we are, a few hours later, on Debian with KDE. Thunderbird looks pretty different.

It was a little disconcerting that KDE > System Settings > Display and Monitor > Display Configuration > Scale works on each display independently of each other. OpenSuSE applied the scale to both screens simultaneously. I can see why it could make sense that one monitor (say a 4K monitor) might have a different scale factor than another way smaller one. But it was unexpected, so disconcerting. It can be really hard for me to read the screen when the screen is at 100% scale on both large monitors.

It is mildly amusing to me that I get to do How to make Ubuntu have a nice bash shell like OpenSuSE all over again, but for my main machine this time.

Dell Inspiron 16 5630 laptop: mostly good, one flaw

So, I needed a laptop with a USB-C connector because I bought the Tilt Five Augmented Reality system. I hope they work with the publisher to finish the Settlers of Catan game. But I digress.

I needed a laptop with a USB-C connector, and I also wanted something with reasonably good hardware specs. So I went shopping at my favorite shopping site: Techbargains.com > Categories > Computers. This was a while ago.

When they mark an item as an Editor’s Choice, I have found it to be good, and a good deal. They had applied that Editor’s Choice logo to the Dell Inspiron 16 5630 laptop deal they had found, and indeed, it was pretty good. $700 for a 13th Generation Intel Core i7 that can hit 5 GHz, 16 GB RAM, 1TB M.2 PCIe NVMe solid-state drive, and a 16″ screen.

Of course, today they have a similar machine for $520, which shows you what seven months can do with Moore’s Law. But I digress.

Anyway, I’ve been pretty happy with this laptop. It has an interesting feature, where the lid hinge has feet that stick out. When I lift the lid, the feet rotate down, and lift the body of the laptop up off the table.

Also, lifting the lid powers the device on, which is a nice touch. We used to get features like this in the early days of computing. I’m still a little sad that every computer doesn’t get powered on by hitting the space bar. Apple started that, and then some PC makers copied it. But today, I don’t know of any PCs that support it. My main home machine goes from boot to login screen in about 20 seconds. This makes it convenient to power off when I don’t need it: man, electricity bills will be bad in the future. But I’d really prefer to just hit the space bar to power on.

There is a problem with using the lid hinge to rotate feet into lifting the body up for airflow / cooling. You see, the air vents are on the underside of the laptop body. The lifting is needed because otherwise the cooling fans are sucking on a (poor) vacuum: the body, flat on the table, sits flat on the table. There’s maybe a 1/16 inch or 2 mm of space provided by the little rubber feet underneath.

I got the bright idea to hook this laptop up to my TV as an external monitor. It’s a great TV, and what could be better than running Civilization 6 on a large screen with a fast computer in my easy chair? Add in a Logitech M570 Wireless Trackball, and I’ve got a great gaming setup.

Well, I don’t want to look at both screens: so I configured Windows to keep running with the lid closed.

But closing the lid raises the little feet and cuts off the airflow. Whoops.

I’m a little sad that I need to find a way to prop up the backend of the laptop so that it doesn’t go into thermal shutdown when operating in lid-closed mode.

But other than that, I like this laptop.

WordPress Gutenberg is getting worse

A lot of this blog are my entries to help myself with some task. I like to copy / paste commands that I don’t want to memorize. If those commands help someone else trying to do the same task, that’s wonderful.

Copy / past has been a bit of a chore on WordPress, however. I’ve tried three different plugins. The first one worked for a while, but then broke. It was based on WordPress shortcodes. I don’t recall if it was WordPress that upgraded and broke the plugin, or if it was the plugin that upgraded and broke. Whatever: the shortcode stopped working.

The second plugin worked at least once, but then broke after an update of some sort. It was supposed to work either by specifying a shortcode or text formatting. I’m pretty sure the text formatting was supposed to be for “inline code”. When the plugin saw that the text was marked up that way, it added the copy-to-clipboard function. It was pretty frustrating to go back and edit some old posts and less than a month later, those posts are trashed up without providing copy-to-clipboard access.

This third plugin, Copy Code To Clipboard works well, and it is based on the /preformatted text attribute.

I don’t recall if this is the way it always was, but: it appears that this only works with whole blocks now. You can have inline code or keyboard input within a paragraph, but you cannot have /preformatted within your paragraph.

But, the /preformatted block type is just implementing the HTML tags <pre> and </pre>

So, I can edit in HTML mode and insert it that way, right?

Where WordPress has made things worse, is that now, <pre> and </pre> implement a forced <br></br> immediately before <pre> and immediately following </pre>

And it doesn’t put those codes in the HTML. It just sneaks them in there and taunts me with the extra lines before and after every piece of text I want copy-to-clipboard for.

Thanks, WordPress developers: I hate it. You’ve made the world a worse place.

And another thing ….

This showed up many months ago, shortly after Gutenberg became official: Ctrl-K for creating an anchor (link) used to be great. On another web site I maintain, we have an old kludgy events calendar plugin, and it still works great there. That events calendar plugin does not use Gutenberg.

All I want for Ctrl-K is to highlight the text to form a link, hit Ctrl-K to start the anchor creation, hit Ctrl-V to paste in the URL, and hit <Enter> to finish the anchor.

Guess what no longer works in Gutenberg? Hitting <Enter> to finish the anchor.

I am always so very overjoyed when I have to finish an operation by grabbing my mouse and finding the stupid little button to click to indicate that I want to finish creating the anchor. I’m editing an anchor: there’s really not that much more that I can do here.

Like what the heck was the <Enter> key supposed to otherwise signal?

In the current Gutenberg, it is simply a no-op. Useless. A waste of a keystroke. Until I find the stupid mouse cursor and click on the stupid little submit button, the anchor is incomplete. All editing has come to a stop, until I do some freaking mouse work.

Thanks, WordPress developers: I hate it. You’ve made the world a worse place, again.

Nextcloud has far too many bugs

I like Nextcloud: it is probably my favorite piece of software that I run. But man it has a ton of bugs. Their support forums are full of people reporting problems, and there is no solution.

Sometimes, the support forums do report that “Yes, this bug is listed in the Github bug tracker.”

There are more than 2,300 open bugs.

It is ridiculous. I saw a changelog that said the update would fix a bug I was seeing. I installed the update. The bug was still there. Quality control in this project is deplorable. I have another bug that I experience daily that has been open for almost two years.

What is dismaying to me is that the main developers have a Microsoft mentality: let’s add new features! No, we’re not going to work on bug fixes: debugging is boring.

In a couple of years, after I retire, I may decide to learn PHP programming. I haven’t really been fond of PHP.

Way back when, I read (well, got through the first few chapters) of a programming book that pointed out that software can be written to be mathematically provably correct. For every memory allocation, the math can add to the sum of debt. Memory should be specifically de-allocated, which subtracts from the sum of debt. When at the end of your source code, the sum is zero, you’ve handled all cases of allocating and de-allocating.

Nothing about PHP makes me think this is true for that language. Maybe I just don’t know the language well enough.

But, PHP does run a ton of super successful projects. So there must be something there which is valuable.

But yeah, I’m not going to be competent at writing PHP for years. Hopefully, someone at Nextcloud will get tasked with fixing bugs before then.

Kaweah Delta care (in general) has been good

Yes, my mom’s experience in the Kaweah Delta emergency waiting room was deplorable. But I recognize that if the only thing you, dear reader, had ever heard about Kaweah Delta District Hospital was that post – you might get the idea that Kaweah Delta was (in general) not good. I want to dispel that idea.

Once my mom did get into a hospital room, the care there has been good. Very good, I would say.

Her nurses and physicians and other staff have been attentive, timely, and professional.

Myself, I’ve had two experiences with KDDH in the last five years: both were of high quality.

I didn’t need emergency care in those situations, so I didn’t have to go through the emergency room waiting room process.

One mild snark though, about the emergency room waiting room. One has a lot of time to be observant over the course of sitting in the waiting room for seven hours (my experience, not my mom’s).

They have digital signage (big television sets) mounted on the wall, playing a loop of various public announcements, advertising of new clinics that have started up, a new doctor accepting patients, etc.

There’s a video interview of two of the hospital bigwigs by Stefani Booroojian1. Anyway, the video is captioned, but the transcriber missed a word. The doctor is talking about keeping healthy, and says it is very important to do smoking cessation. The transcriber wrote that it is very important to do smoking sensation. Not the same thing. 😉

Somebody probably ought to have caught that in the first week, so that the original content creator still had the file around and could re-do that little bit of the caption.

  1. Oh my goodness, she’s been with Channel 24 news for 40 years! She still looks great. Good on her. ↩︎

Terrible experience at Kaweah Health hospital

My mom went to Urgent Care, and they put her into an ambulance and sent her to Kaweah Health hospital. My mom spent 25.5 hours in the emergency room waiting room before getting a room / bed.

This is disgraceful.

Mom showed up at KDDH1 at 2024-04-19 1400

The urgent care people had told the ambulance people to give her some saline because of severe dehydration (because of three days of vomiting and diarrhea). That was the last liquid she got until 2024-04-20 1700.

The doctor who saw her during the initial contact said they needed to do a CAT scan to find out what was the source of intense pain in her abdomen. She finally got that CAT scan at 2024-04-20 0540.

My mom was concerned that she would need emergency surgery for gall bladder removal because her mom had had to go through that. I should probably mention that my mom is 86 years old, and although her mind is clear with no signs of dementia, her body is getting frail, and in the dehydrated state, she is pretty wobbly. The idea of being 86 years old and having to go under the knife scares her.

The night shift doctor finally did get to interview her at 2024-04-20 0715; the CAT scan revealed that it was an inflamed colon – not gall bladder. Thank goodness. Apparently, an antibiotic my mom took a month ago also affected her biome in her colon, and something in there took hold and created an infection.

The doctor was a nice young man, but he did mention that he was at the end of his shift. He said they would admit her, but there weren’t any rooms available: it might be a couple of hours. My mom then sat in the emergency room waiting room for another seven hours. Eventually, my mom got worried that they had lost track of her (she was on the third shift of administrative and nursing staff in the waiting room), so she hobbled up to the front, and when the nurse asked her what was wrong, she burst into tears. She’d been there more than 24 hours, and she was afraid they’d lost track of her. That was shortly after 3:15 PM. The nurse did promptly get her a room.

When I visited her a little before 1700 (5 PM), she still hadn’t slept since the morning of the day before, but finally a nurse did cover her feet with a blanket. My mom has poor blood circulation, so her feet felt cold, and it stressed her out so she couldn’t sleep. The other problem is that the diarrhea continues, so every few hours she needs to get help to climb out of bed to get to the toilet.

I had shown up a little before midnight on the 19th, and relieved Frank from sitting with my mom. About 2 AM, it dawned on me that the CAT scan wasn’t going to happen until the morning shift showed up to work. I don’t know why the CAT scan wasn’t done between 2 PM and end-of-shift on the 19th.

I also don’t know why, when the overnight doctor went off shift, that the emergency room staff don’t seem to have a process for hand-off or review of who needs care. When my mom screwed up enough courage to ask the nurse at 3:15 PM, they immediately found her a room. The room was available. Why isn’t there a process for informing the emergency room when rooms become available? Instead, little old ladies have to tell the nurse that there’s a problem, and then they act. That’s the opposite of the way I would expect medical care to work.

I know that doctors hate it when their patients try to self-diagnose and then direct the doctor on how to provide care. Yet, here was a situation where a little old lady had to force the situation, twenty-five and a half hours after being delivered in an ambulance.

It’s just terrible.

  1. KDDH was the original name: Kaweah Delta District Hospital. Everyone around here still calls it that. They even had that coveted four character domain name: kddh.org – I will rant about the idiocy of changing the company name later ↩︎

Bulk change MP3 file genre

I reset my playlists in Nextcloud. During the rescan, as it imported them, the Music app sorted them into their genre. This might be useful. But one author’s genre was Folk, and really, I’d prefer if it were Instrumental.

I tried changing them from the command line, but id3tools trashed the tags. Really, it was a problem with UTF-8 versus something else. All I really know is that when Nextcloud scanned the files, it got Chinese characters instead of anything useful.

Turns out, I used kid3 and EasyTAG to solve the bulk search and replace problem. Why both? Because kid3 let me see what I wanted to change, but EasyTAG would let me (bulk) change them.

kid3 let me change tags just fine. The problem is: only one file at a time.

The kid3 interface is rather nice, otherwise. If I hit Ctrl-A, it selects all and reads all the files and all the tags. I had added Genre to this list of columns at the top, so then I could sort on that.

EasyTAG wouldn’t let me change the main page displayed columns, so that was less-than-ideal. But, it does have a Find feature, and everything I selected in the Find window remained selected in the main window.

What EasyTAG has (which is great) is in the genre field for any song, there are two buttons: a drop-down to select which genre, and an Apply All button for everything selected. Excellent! Apply All is precisely what I wanted.

Also, it turns out that if the predefined list of genres doesn’t match what I want, I can just type in my choice. The Apply All button still works for something I typed. EasyTAG didn’t have a Flamenco genre, but I have 85 Flamenco guitar files. That I can type my own genre makes this a trivial problem.

So after doing an Apply All in EasyTAG, I’d go back to kid3 and do a reload, followed by another Ctrl-A. Then I sorted by (whatever). I’d find something that matched all the songs I wanted to alter, and copy that to the clipboard. Then I’d switch to EasyTAG, unselect all, and go into the Find screen, and paste in the identifier and search I’d select all in the find window, and close the find window. Then I changed the genre and hit Apply All in the EasyTAG main window.

I think I re-tagged close to 800 songs in about fifteen minutes. Woo! Now, the bulk of my music files are in eleven genres, which becomes a playlist without the manual playlist editing. There are 331 songs in the Instrumental genre list. I would have so hated having to manually make a change 331 times.

Quarterly Inventory 2024 – Q1

Dear FutureMe,

Today would be a good day to do a quarterly inventory.

Question: How is your personal life going?

Question: How is your work life going?

Question: How is your volunteer service life going?

Personal Life

There hasn’t really been much change this quarter in my personal life.

I went to the Southern California Linux Expo (SCaLE 21X), but regret it because it was so much money. Previous SCaLE events were at the LAX Hilton, which is half the price of the Pasadena Hilton. The trade-off is that the LAX Hilton has only about five restaurants nearby, so if 400 people break for lunch, those five restaurants are absolutely swamped. If 400 people break for lunch at the convention center in Pasadena, there are probably 30 restaurants within a ten-minute walk nearby. But $400 per night for this show really isn’t worth it to me. If I had stayed three nights for the full four-day show, that would have been $1,200. ACK! For that kind of money, I could pay down my mortgage one month and retire a whole month early. Really, SCaLE is a wonderful show if you already live in Los Angeles and don’t have to spend money at the Pasadena Hilton.

Had my ten-year colonoscopy. Zero polyps found; I get to come back in five years because of my age.

I went to a Jack-In-The-Box restaurant a couple of months ago. Lunch was $20. I suspect this was my last visit to a fast food restaurant ever 1 (well, in California, at least). Sacramento decreed that fast-food workers should get, beginning today, a minimum wage of $20 per hour (as if fast-food workers would make it a career). The result is that Sacramento has completely priced these stores out of business due to inflation (unless they replace the workers with robots).

2024 New Year’s Resolution: go to the gym more often. Resolution failed: I suspended my gym membership. $60 a month is too much (yes, inflation).

One really fun thing for me is that I bought another Tiny PC and put 32 GB of RAM in it, and I am running Proxmox on it. This lets duplicate all the steps I will go through to migrate the website (item (5) in the volunteer service list below) from Amazon to Linode. If I bungle a step, I revert the snapshot and try again. Even better, I can document about how I did the migration to my blog. I did have DNS pointing to this home device, which (via pfSense) did actually route the public Internet to this little host. I’ve since turned this off, but will turn it on again when it comes time to demo the new website.

Work Life

If $44,000 dropped into my lap today, I would retire tomorrow.

I have little to do except e-discovery and email retention policy work. We had a good system where clients would work through legal counsel before opening an email investigation; but, our new(er) management wants to bend over backwards to be helpful. That is a nice sentiment, but the previous practice protected us from liability – only the people with legal training made judgement calls. Now, I have people asking me to find “inappropriate” email, as if I know what the hell that means in a legal context. Sometimes I hate my job.

I did take on printers and the print server. I did build the replacement server and migrated over; that went really well.

The other big project is to check 5 million email that are about to be deleted: are they supposed to be deleted? There’s no way that my direct report and I can read all five million email and verify them all. So, we’re spot-checking. I probably will read about 12,000 email before we can confidently pull the trigger on the deletion process.

Volunteer Service Life

I counted up all the current service commitments I have, and it numbers sixteen at the moment.

  1. Sundays: treasurer of a weekly meeting.
  2. Sundays: Technology captain of a weekly meeting (I run the Zoom camera, speakerphone, and laptop).
  3. Second Sunday: audio recording and posting the recording to our .org website of the second Sunday speaker breakfast monthly meeting.
  4. Tuesdays: Secretary of a weekly meeting.
  5. Second Tuesday: web servant for our little 501(c)(3) central office.
  6. Second Tuesday: liaison to our district (complement of item (10) below).
  7. Second Tuesday: president of the board of our little 501(c)(3) central office.
  8. Last Tuesday: member of a monthly technology sharing session (I presented last month). Nicely enough, this is on Zoom, and happens from 16:00–17:30 which allows me enough time to be secretary at 19:00 (item (4) above).
  9. First Wednesday: Recording secretary, monthly district meeting.
  10. First Wednesday: liaison to our little central office monthly meeting (complement of item (6) above).
  11. Every other Wednesday: co-chair of the Founder’s Day Picnic; as such, I am on the planning committee. I set up the laptop, camera, and speakerphone for Zoom participants. Created two documents, but have a third pending. The other chair has been in Europe, so as far as I can tell, I’m the only one who has done anything.
  12. Thursdays: meet with my sponsee weekly.
  13. Thursdays: treasurer of a weekly meeting. Also, supplies.
  14. Fridays: literature captain of a weekly meeting.
  15. First Saturday: member of a temporary contact committee (meets monthly), and have begun outreach to a local institution.
  16. First Wednesdays (until this weekend): stage manager for our twice yearly dinner and a speaker event.

  1. Edit: this is almost certainly an overstatement. I still like Panda Express, and it hasn’t raised prices ridiculously, but it does qualify as a fast food restaurant. ↩︎