The Hidden Blog

As it turns out, I do have a hostname.

2022 Convert video for Twitter

If you want to post a video on Twitter there’s a few rules that are important for the video to be accepted.

Unfortunately the interface will only show “The video file is not compatible” while only the actual API request in the background will tell you exactly what is wrong. If you...

Read the post

2022 Push notifications from AppSignal with Pushover

I’m using AppSignal to monitor Birdfeeder. Birdfeeder’s job is to send your Twitter bookmarks to your email inbox so you don’t forget about them.

On the technical side it’s a Rails app which relies on Sidekiq to process background jobs. Bookmarks have to be fetched, accounts...

Read the post

2022 Building container images in Kubernetes with kaniko

A few weeks ago I rebuilt a GitLab CI pipeline at JustWatch. One part of that was to move the step building the container images in the Kubernetes cluster from artificer to kaniko.

I wrote up a short guide on the JustWatch blog in case you are curious.

2022 Listening to a movie as an audiobook

Today I was reading a comment on HN that piqued my interest.

I used to rip the audio of my favourite movies and listen to them like audiobooks. Because I was usually familiar with the visual parts, I could enjoy the dialogue and the music in a different way.

This sounded like a simple enough task...

Read the post

2022 Migrating from self-hosted Postgres to DigitalOcean

Until now Birdfeeder was powered by a self-hosted Postgres instance which is used by various other side projects. It was running out of space and decided to migrate to a managed Postgres instance on DigitalOcean (Affiliate link, giving you $100 in credits).

The reason for going managed was that I...

Read the post

2022 Check Postgres table dependencies for cascade

Currently I’m working on a better staging setup for Birdfeeder. A big part of that is syncing the production database to the staging database while cleaning out user specific information. An easy way to do that is to use SQL to truncate the users table.

When I tried to truncate my users table...

Read the post

2022 Birdfeeder Tech Stack

After sharing some information about how Birdfeeder collects your Twitter bookmarks and sends them to your inbox we are going to take a look at the technical foundation of the project in this blog post.

Spoiler: It’s a boring Rails app and it’s good that way.

Collecting the bookmarks...

Read the post

2022 Birdfeeder: Twitter bookmarks in your email inbox

I’m a heavy user of Twitter bookmarks but I always forget checking them when I would actually have time to do so. I use them to bookmark tweets I later want to share with someone or tweets that point to longer articles when I’m in a hurry.

To change that I decided to work on a new...

Read the post

2022 Building Web Extensions for Chrome, Firefox and Safari

For my new side project I needed to build a browser extension. I was hesitant to build one as the development experience of doing everything in the browser seemed annoying to debug.

After hearing more and more about Web Extensions and even Safari adding support recently I assumed that now is the...

Read the post

2021 Review: GL-iNet Beryl MT1300 Travel Router (Apple TV on a VPN)

This is a short review of a new gadget I recently purchased. I sometimes have the need to route my Apple TV’s traffic through a VPN. This can be for simple geolocation issues but also to prevent ISPs throttling IPTV traffic.

The Apple TV currently doesn’t support running a VPN directly...

Read the post