As I make my way through the ‘Learn Object Oriented Programming’ course on Boot.Dev, the sections on Inheritance and Polymorphism are quite challenging. I am only a few chapters away from completing the final section on polymorphism and have decided to go back to the start of the inheritance section and start this part over. Why? I don’t know it well enough. I’m not interested in going through the motions simply to move to the next course. I need to fully grasp it or else I’m wasting my time.

While I have been taking notes throughout, I’m going to take a more detailed approach to my note-taking going forward. I’m going to write my notes on each topic as though I were explaining things to another person. In this way, I hope to really understand the topic at hand before moving on to the next chapter.

To symlink my dotfiles, I use GNU Stow. Most tutorials I have encountered assume you are placing your dotfiles directory at $HOME/dotfiles and thus, the command in that case would be…

stow .

since by default, the target directory is the parent of stow dir.

In my case, I keep my dotfiles directory at /Users/dw/Repos/ so I need to explicitly define home directory as the target using the -t option.

stow -t /Users/dw .

On my Mac I use Hyperkey to remap some keys. In particular, I remap left control to a hyper key, caps lock to left control, and a quick press of the caps lock key to escape.

This morning, I tried opening Arc via Hyper-A but it didn’t work. That’s odd, I thought. Then I tried creating a split in tmux and that wasn’t working either. WTF! Why is this happening?

Then I remembered… last night Hyperkey had an update and didn’t restart itself afterwards for whatever reason. I’ve can’t function without my custom keys, man.

Hyperkey settings

Finished the Learn Git course on Boot.Dev. That’s Part One. I’ve updated my global git config to keep a linear history:

git config --global pull.rebase true

Perhaps my favorite learning is displaying a tight log with:

git log --oneline

When I want to see a fancy ASCII art representation, I type this:

git log --oneline --graph --all

About 80% complete with the new Git course on Boot.Dev by The Primeagen. I feel like my basic Git chops are pretty strong. This course has already upped my skills ten fold. Looking forward to part two in a month or so when it is released.

I’ve been rocking tmux default key binds for a few weeks now. It’s fine. I had no problem getting used to them and my life is simpler for it.


We would like to inform you that the distribution and support of our driver software “ScanSnap Manager” will be terminated in October 2024, as we have already ceased the provision of its new functions.

But I like ScanSnap Manager. I imagine ScanSnap Home is going to be a pile of crap.

Diving into Prometheus and Grafana this morning. Installed the Helm chart to Rancher Desktop.

Today I learned about K9s to go spelunking around in my Kubernetes cluster. I’m glad I’m learning how to manage the cluster from the command line but I see the power and efficiency of being able to hop around in K9s as well.

When my brain starts to hurt from learning I turn to MST3K on Twitch. Always streaming.

To configure load balancing in Rancher Desktop, I changed ClusterIP to LoadBalancer in my yaml config file. Upon application, Rancher created an external IP to access the service. However, the IP was in a different subnet than the one on my Mac. To solve this, I needed to check the box in Preferences to allow Administrative Access. After checking this box and entering my password, a new IP was generated that was accessible and within my subnet.

Rancher Desktop Preferences

Universal Control on macOS/iPadOS is great. When it works. Often it loses the connection and the only way I’ve found to reliably get it back is to restart both devices. If only it worked universally, all of the time.

I’m looking forward to meeting up with the Rocky Python interest group this Sunday for lightning talks.

Learned Kubernetes deployment fundamentals today. Pretty fun and powerful to be able to know how to make it work, all from the command line.

Full circle… Calendar—> Fantastical —> BusyCal —> Calendar. I think I’ll keep it simpler now that I have few scheduled obligations.

It was ‘move to school’ day for my fifth grader so we walked instead of driving. Why don’t we do that more often? It was so nice.

I now have a profile README on my GitHub page. If you create a public repo that matches your username, then you can edit the file and it’ll show up at the top of your page.

GitHub profile README

Using Raycast to search the Kubernetes site via a hotkey

As I learn Kubernetes by following the Kubernetes Fundamentals course on the Kubernetes, DevOps & Cloud Skool platform, Mischa van den Burg, the founder and course instructor, extolled the virtues of searching and browsing the Kubernetes site. As a matter of fact, when taking the certification exams, one is allowed to use the site as a reference so it’s good to get familiar with it.

As I am learning, I thought it might be helpful to have the Kubernetes site search at my fingertips. As a Raycast user, I went searching and discovered the Universal Website Search extension which allowed me to add the Kubernetes site by adding the site URL and including this in the template:{}

I made it the default search site, then assigned a hotkey (CTRL-OPT-CMD-S) to this action in Raycast.

So now, I don’t even need to visit the site to search. I simply hit the hotkey and start typing my query. Select the response and I’m whisked away to the site to learn more.

Search Kubernetes site from Raycast

Making 'default interactive shell is now zsh' message go away

Now that I switched from zsh to Bash, I’m getting this message, which is annoying…

The default interactive shell is now zsh. To update your account to use zsh, please run chsh -s /bin/zsh. For more details, please visit

According to the help article, I added the following to my .bash_profile and it went away.


While I’ve been unemployed going on two months now, we’ve tightened our belt considerably. I go grocery shopping for our family of four and we’ve gotten our food spending down to about $1k/month.