Rutger de Knijf

Terraform | Python | Kubernetes | GCP | AWS

Backward compatibility is a curse

I recently had a colleague who suggested it might be a good idea to test our Python software against older versions of Python. And at first I was like: Yeah, good idea! It’s good practice, right? Support a whole range of versions! We see that all the time in the packages we fetch from Pypi. Supporting more versions is just good stewardship, right? But we were walking into a trap. We were discussing our own software, that we run, ourselves, in Kubernetes....

September 16, 2022 · 2 min · Rutger de Knijf

On formatting in Google Spreadsheets

TLDR; Colors aren’t values. Yes, as a human you can quickly see what’s up, and that’s great if it’s automatically formatted, I’m all for that. But colorizing a line or cell by hand is possibly the slowest action you can do in a spreadsheet. And yet I see people doing it all the time! Do me a favor, and look at your keyboard. Take one finger and color a cell. Nope, you can’t....

September 12, 2022 · 2 min · Rutger de Knijf

"No, I just use vim"

“No, I don’t use tool X. I do it manually with tool Y, because then I’ll have more grip on what’s happening.” Examples of this are: using git on the command line instead of a GUI using vim instead of an extensive IDE like IntelliJ or VSCode Yes, you’ll understand the lower level part of the problem you’re solving better. But logically this must cost brainpower, otherwise there wouldn’t be more understanding....

September 8, 2022 · 2 min · Rutger de Knijf

I made an online Github Actions upgrader!

TL;DR: gaup.deknijf.com Github Actions is absolutely great. It’s fast, clean, clear, and I’ve yet to encounter a task I can’t accomplish. The main advantage of Github Actions over something like BitBucket Pipelines is the sheer number of modules (called “actions”) that you can just use. Need a docker image built? - name: Set up Docker Buildx uses: docker/[email protected] - name: Login to GCR uses: docker/[email protected] with: registry: eu.gcr.io username: _json_key password: ${{ secrets....

January 31, 2022 · 2 min · Rutger de Knijf

CICD trick to keep your dependencies up to date

Most developers know they should pin their 3rd party dependencies. I usually write Python, but this goes for any language. You don’t want to send your commit into CICD and have it be deployed with packages that are different from what you’ve tested it with locally. On the other hand, every day you lag behind with updating those dependencies you’re making doing that very thing in the future more dangerous. Up to the point that it becomes a “project” in itself, or even until it’s just frozen in place because nobody will touch it....

January 9, 2022 · 3 min · Rutger de Knijf