Testing 3d printed TPU pad

Recently I printed a few of the sanders and they are nice to hold and the screw works as it should. This was my first ever screw print so I was a bit skeptical about that, but for large enough screws, 3D printing appears to work. However, the design also recommended a squishy pad…

Fix Laravel Herd SSL error

After migrating from Laravel Sail to Herd on Mac I needed to also find a way to make websockets work, as this app used them. Previously I was relying on soketi and it was running under its own docker compose, but with Sail gone, this went too. Sure I could just run soketi from np…

Fixing phpstan errors with aider

Some time ago, I decided to improve the codebase of one of my large actively developed Laravel projects to conform to strict larastan level 9 rule. At the first run, the analysis reported over 1200 errors, an absolutely massive undertaking for a single person. I started over a ye…

Programming Nordics nRF52840 dongle

Buying a Nordic Semiconductor nRF52840 Dongle made me very disappointed. I falsely thought it is a nice little USB2.0 pluggable board to get into low power Bluetooth enabled development but the more I dug into it, the more I found it is almost impossible to get any useful value o…

Fixing missing zola styles on Cloudflare Pages

I recently encountered a frustrating issue where syntax highlighting worked perfectly when running zola serve locally, but completely disappeared when deployed to Cloudflare Pages. Here's how I diagnosed and fixed the problem. The Symptoms The issue manifested in two ways: Visu…

Setup Mikrotik for Orange PartnerNet

This is the bare minimum configuration to make Orange PartnerNet fiber connection work on Mikrotik on LAN1 port: /interface bridge add name=bridge1 /interface pppoe-client add add-default-route=yes disabled=no interface=ether1 name=pppoe-out1 password=****** use-peer-dns=yes user…

Restic backup via systemd timer

I am putting this here because it worked for me for a long long time, unattended and now I am replacing it with a docker version I crafted in a meantime. This makes me think that I did not post anything about it and I should. But in case I will need it in the future it won't get …