Quick Tricks
Cmake, Conan, and GTest Example
A minimal example of a project that uses cmake, conan, and gtest. I make use of the very handy cmake-conan wrapper. This setup also works seamlessly in CLion
Quick Tricks
A minimal example of a project that uses cmake, conan, and gtest. I make use of the very handy cmake-conan wrapper. This setup also works seamlessly in CLion
C++20
In this article I show a way to use Concepts in the member function parameters of other Concepts using function_traits.
C++
In this article I explore a system of using C++20 Concepts for Dependency Injection
C++
In this article I use jthread, stop tokens and latches to coordinate a worker pool
Quick Tricks
Create a broken utf8 CSV for use in your unit tests
Quick Tricks
GitHub provides search functionality, but it returns every mention in code. I just needed the list of repositories. Using the GitHub API we are able to fetch these results.
Terraform
This project was used to quickly create some server-less functions with AWS Lambda and make them accessible via HTTP requests.
Quick Tricks
Use Linux Watch to continually generate passwords for you
Quick Tricks
Explore a combination of tools including pipe, grep, find, xargs, and sed to do some video conversion
Linux
We recently had an issue where one of our servers was getting out of disk space errors when trying to pull new Docker images. This caught us by surprise as none of our disk usage alerts had fired. Once we got on the box to investigate we realised that it
Quick Tricks
It's quite simple to setup multiple Git (in this case GitHub) accounts on the same machine, each using different SSH keys. The scenario that I use this for is to have both a personal account and a work account. Host github-personal HostName github.com IdentityFile ~/.ssh/personal_github_
Kubernetes
I recently setup monitoring on my home MicroK8s cluster (Prometheus, Grafana, InfluxDB) and found out the hard way that by default the Grafana deployment does not have any kind of Persistence (emptyDir volume). If the pod gets restarted all of your custom settings, sources, dashboards, etc will be erased. In