Mastering the Home Lab: Gitea & Jellyfin on Synology via Cloudflare Tunnel

Introduction Self-hosting a private Git instance and a high-performance media server on a Synology NAS is the ultimate “power user” move. By leveraging Cloudflare Tunnels, we can expose these services to the internet without opening firewall ports, while keeping our internal traffic secure and locked down. This approach provides enterprise-grade security with zero-trust architecture, all while maintaining the convenience of remote access from anywhere in the world. In this guide, we’ll walk through setting up:

Solving Let's Encrypt Challenges with SCP for Limited Web Hosting

The Problem: Limited Domain Hosting Without API Access If you’ve ever tried to set up SSL certificates with Let’s Encrypt on a domain hosting provider that doesn’t offer API access, you know the struggle. My situation was particularly challenging: My domain is hosted with a provider that doesn’t offer any API for automated certificate management My web space is limited, making it difficult to run a full ACME client directly on the server I needed to automate the certificate renewal process to avoid manual intervention every 90 days The standard approach for Let’s Encrypt validation is to place a specific challenge file in the .

From Button Chaos to Python Calm: Designing My Garden House with CadQuery

I’ve always had a complicated relationship with CAD software. It’s not that I don’t appreciate the power of digital design tools—it’s just that they never seem to work with me. If you’ve ever opened a CAD program and been confronted with a swarm of buttons, tabs, and menus—only to watch them rearrange completely after a version update—you know what I’m talking about. Most CAD tutorials aren’t much help either. They typically go something like: “Click here, then here, now switch to this tab, drag this, click this tiny icon that has moved since last version…” You get the idea.

How I Demonstrated the Real Cost of Playing Eurojackpot to My Father (Using Python)

Introduction My father is an avid lottery player. Like many others, he dreams of winning the Eurojackpot and transforming his life overnight. As a programmer, I wanted to show him—using real data—how much money is actually lost over time by playing the lottery. To do this, I developed a Python script to analyze his Eurojackpot tickets and calculate the true cost of his hobby. Motivation Playing the lottery can be entertaining, but the odds are not in your favor.

Enhancing My Daughter's Mupibox Media Server with Cover Art

Enhancing My Daughter’s MuPiBox Media Server with Cover Art My daughter loves her MuPiBox media server, which is packed with her favorite audiobooks and music. Recently, I decided to enhance her experience by adding cover art to each album. It’s a small touch, but seeing the album covers makes her browsing more enjoyable and visually appealing. Here’s how I added cover.jpg files to her MuPiBox media server. Tools and Libraries Used To achieve this, I used Python along with some handy libraries: