green, red, and white high voltage circuit breaker

Automate code-review chores with a simple Dangerfile

One of the most annoying chores in code-reviewing is having to say: “You forgot to [unwritten rule]”. It feels arcane, it annoys the code-reviewer and the guy doing the work, it builds frustration, sparks useless arguments, some edging on the brink of flame wars. Well, not unless the rules are written, the rules themselves codereviewed and agreed upon in the team. One idea to automate-away some of the most common concerns and focus on the interesting logic is to automate the chores away using the Danger bot.

In one work situation, I had the possibility to implement the first pipelines the team has used and to provide some standardization going forward. Our Git-flow evolved around 3 branches (integration, dev and master) with the direction of code flowing being from left to right, passing through QA as it went from integration to “development” branch (tied to the specific cloud account) and on to “master” from which release branches were triggered, later to be deployed on the production cloud account. The existence of the “integration” branch basically is to check-in the code somewhere until we are ready to “cut the cord” and release a new version for QA and extensive development testing (with custom data and a sample of anonymous production data).

Continue reading →
closeup photography of brown analog scale

Scaleway Kapsule and Rancher-managed Hetzner Kubernetes clusters

I honestly think this is the 3rd time I’m moving things around. First I was on Proxmox managing myself a cluster of bare-metal Hetzner (from the server auction page). Then I was torn between a home server and one on Hetzner. I was using many images from the TurnKey Linux project. Nice, interesting but required immense investments of time.

Then I decided I wanted managed Kubernetes services. Not long ago (half-a-month) did I went over to Digital Ocean’s managed Kubernetes service. For not a small price, got a 3 node cluster with 24GB of RAM and 12 cores. Started installing my stuff and quickly ran out of resources only to be forced to pay more.

Continue reading →

Dear open-source, stop being free

I tried to kind of ignore this problem and not write about it. But it kept appearing and reappearing on my daily Slashdot feed up to the point I’d also want to say something. We seem to have a problem that about defining what it means to be open-source and what is expected of the developers behind these projects.

Let me first start by saying I’m an advocate of open-source. I’ve tried my best to use open-source software in all my architecture designs, respecting the licenses of the products I’ve used, trying to also give feedback where it mattered (eg. Docker/moby on IPVLAN, Grafana’s Elasticsearch support and other tickets). I did this directly or through my fellow peers encouraging them to take action and feedback the community. I’ve always been thankful of the hard-work some people (not me) are putting in. I made myself small contributions, bug reports I could call them, from using the open-source software. I was thrilled to be a part of that and to contribute something that got into the next change-log as a fix (eg. Cassandra).

Continue reading →