All Posts

Getting SSL working for Traefik Dashboard with k3s and cert-manager

k3s ships with traefik that works out of the box, but for certificate generation while running on Kubernetes you should consider using cert-manager which is apparently a go-to tool for certs management in the k8s world. For the simplicity of this example let’s assume you have a single node k3s cluster running which doesn’t have any external load balance in front of it (otherwise you might need a DNS challenge and here we will use HTTP-01).

Living the ARM life

Almost right after Hetzner announced their ARM offering on 12th April 2023 I started to experiment with new infrastructure approach. Note: get 20EUR for your project via this referral - just in case you want to play around. It’s been over a year since I started to play around with Nomad and Nomad served me well. CSI support become more stable and Nomad itself become more mature in terms of feature set (native service discovery and support for encrypted secrets were nice).

Auto-ticketing flaky rspec tests

tl;dr: you can try this rspec wrapper and here is a working example regarding how to ticket your flaky tests running on CircleCI using GitHub issues. One of the common ways of dealing with flaky tests in your test suite is slapping rspec-retry on top of your test suite. Unfortunately, most of the time that’s the end of a solution. Without any sort of logging around it, you’re completely in the dark. Do you know how often things are failing and why? Are you introducing new flaky tests? Are you solving those?

How to force Telegram to upload MP4 as MP4 and not GIFs

There is no official way of doing so as far as I know. Small MP4 files without audio are automatically converted into GIFs. But you can trick Telegram into doing what you want - this method seems to be working as of January 2023 on both the iOS desktop app and the official API. You might want to do that because you cannot group GIFs in an album. It works fine with JPGs and MP4s, but when you mix GIFs into that - the API suddenly throws 400 errors. You can’t create an album of GIFs alone either. Very annoying.

How to deploy an application from Github Actions to your Synology NAS

Recently I have been refreshing my various Telegram bots - I had 3 tiny go apps lying around and I have decided it’s time to put them into a single app. I was just done with all that boilerplate and it just made more sense. While doing so I thought it would be cool to finally push docker containers I was already building using Github Actions directly to my Synology - without any human interaction. The thing is I didn’t want to expose the whole Synology to the Evil Internet. So I have decided to use Tailscale which is a truly magical product. It’s built on top of WireGuard but removes all the manual fiddling/configuration process. It’s install & forget. Below is a quick-ish recipe I have decided to follow.

How to remove Linkedin connection (kinda in) in bulk

tldr: it’s not so straightforward and can’t be done that quickly, but you can streamline the process, so it’s not a huge PITA. My LinkedIn profile literally become LinkedInLunatics subreddit. How did that happen? Oh, I know how, years ago, I just accepted almost every invite from almost every person. Fast forward 9 years later, I got a linked feed with a bunch of coaching BS, crypto boys fanatics, and people just building their audience. I decided it’s time to revisit some of those old contacts.

Cleaning up side projects

Over the years, I have accumulated various ongoing/past side projects where I tinkered with mostly unstructured stuff. I decided it was time to let them go. My initial learnings were great, but I realized it’s impossible to keep up with everything while having a full-time job. Maintenance cost - domains, servers/storage, and mostly - time - was not worth the return.

Gaming on Apple M1

Is it possible? Yes. Does it make sense? Probably no. Under the Apple M1 chip, you have two options: Crossover or Parallels. The first one is supposed to be more performant. The latter allows you to install Windows 11 ARM (get it via Windows Insider Preview program), which is supposed to cover more software and runs DirectX12.

Problems with inexperienced teams and Ruby

I have been coding in Ruby for over ten years, and I have had a chance to see some real-life codebases created by in-house teams, contracts, and software houses of all skills. Inexperienced folks that don’t have guardrails in the form of mentors can create stuff I have never dreamed of. In my nightmares, that is.

Moddable by default

I have a huge sentiment for Quake 3; that’s no shock, given I’m still keeping running. The significant factor of its popularity was that it was moddable and OSP, CPMA, and many more had their communities of gamers, mappers, and content creators.