Using CI for Fun and Profit
Last weekend I had to redo my CI setup because it decided to not work anymore… Not really sure what happened, but I have been wanting to switch out the drone-ci setup I had with a woodpecker-ci one for a very specific reason that relates directly to the text you’re reading right now. I have been tinkering with CI for a long time, first time I used it for something that wasn’t just play, was back when I used github actions to push my neovim configuration to its own repository using git-subtrees....
A Note on Habits
I’ve never been a bookworm. The last book I read to its full length was Masters of Doom by David Kushner which I borrowed from a colleague in late 2021, started reading about new years and finished during summer break. It was a really good read, no doubt about that, I’ve just never been good at reading which is why it always took a long time to get through even a good book....
CMake Helper Functions
Sometimes I find myself copying a lot of CMake sections, because I need similar functionality in different places. While duplication is not a great way of reuse, CMake was always just one of those languages that I never took the time to properly understand. I know enough to be dangerous and knowing anything more would just lead to a false sense of security that I would be able to do all kinds of nifty things without looking anything up....
Dotfiles Using stow
What’s the deal with dotfiles anyway? I have a collection of configuration files that I use to make devices essentially ephemeral. The names comes from the fact that a lot of them start with a ., which in unix makes it “hidden”. These files are stored in a globally accessible git repository that I can simply pull, run a single command and be right back at home. I use an old unix utility called stow to manage my dotfiles due to its ubiquitous presence in various linux distribution package managers....
Compile-time Object Composition Through Inheritance
In my DSP framework I recently had the need for a generic Interface type, that could have a set of member functions based on the underlying storage type. After much pondering, I remembered a brilliant video by Jason Turner, that showcased how to inherit from lambdas which in turn reminded me of the mixin pattern. What if I could just inherit from a template type Which indeed you can… Behold, the Interface struct....
Initial Commit
In the beginning there was darkness Sometimes a project should resemble a speed run like some of the half-life any% runs seen at GDQ events. This blog is such a project. I now have accumulated enough notes that I need somewhere to write them down. Piggybacking off of my existing infrastructure that I use for development of my DSP software, it seemed obvious to start a blog that will work as both a notebook, but also as a way of knowledge sharing....