My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
Scott Colby
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
Activating Python virtual environments can be surprisingly cumbersome, making a small but persistent annoyance in daily development. When a friend shared his frustrations about this—and about some limitations in existing tools like uv and VirtualFish—I saw an opportunity to simplify things.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I have a Systemd oneshot unit that runs a backup on a timer. Recently, I performed an update on that machine while the backup was running, and I wanted to reboot after the backup finished. In the past, I might have started a shell loop in a tmux session like …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
Sometimes, I start my electric kettle with the intention of making tea, but get distracted by some other activity and forget about it until long after it has boiled and cooled down again. Taking my cue from the creators of the first webcam, I decided to solve this problem with …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I’ve had a scrap of paper on my desk for about 6 months now that lists the approximate changes I made to the default settings in my motherboard’s firmware. Today, I updated the firmware to version 2.20 and followed these steps again. I decided it’s time …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I have been using Docker Swarm to run services on my home server in order to nicely have containers start at boot. My Swarms all only contain one node, and, early on, I had difficulty getting the Swarm ingress routing mesh working, so I have been using mode: 'host' for …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
The last time I updated this blog, I noticed that the last updated time on the about page had changed to the last build time. My site generator, Pelican, uses the source file’s modified time for this value, and this was being set by the operating system of the …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I recently received a Starbucks gift card via e-mail. I don’t have a Starbucks account, nor do I use their mobile app. However, the online gift card page shows a bar code, which I decided to print at wallet size so I don’t have to keep the email …
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I use pyenv to build, install, and manage multiple versions of Python on my system at once. At some point recently, I needed to link my compiled Python against a newer version of SQLite than was shipped with the version of macOS that I was using at the time.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I have a few backup jobs that are run periodically by systemd timers. Because these are backups, I would like to be notified somehow if they fail. systemd has a configuration option for this, OnFailure=.
My name is Scott Colby. I am a software developer and chemist. I work in Python, Go, Rust, Kotlin, and Java, and deploy with Kubernetes, Ansible, and on bare Linux machines.
I use this site to post interesting things that I've worked on and as a personal notebook to document things that I've figured out so I won't forget them.
I took a machine learning course in graduate school. As part of the coursework, we were taught about the fundamental algorithms of machine learning and were asked to implement some of them. My implementation of the k-nearest-neighbors classification algorithm (k-NN) remains some of my code that I’m most …