felix's blog
Here you'll read stuff related to programming - either me showing off, debating interesting problems, or crying about JavaScript.
System Design
Architecture: Database Sharding When database sharding actually makes sense, and the simpler scaling options worth exhausting first. Sharding keys, horizontal scaling, and the trade-offs. Architecture: Relational Databases A practical look at two foundations of relational databases: how indexes speed up reads at the cost of writes, and how transactions keep your data consistent.
Projects
MCA Benches - Hobby Project A Discord-gated web app for tracking Guild Wars 2 build benchmarks. It ingests dps.report logs, auto-validates submissions against the official bench, and diffs a player's rotation against the reference cast by cast. A Combat Analysis Mod for Guild Wars 2 Reverse-engineering Guild Wars 2 to build a DPS meter and combat overlay: DLL proxying to get code into the client, hooking the network layer through leftover assert strings, and simulating condition damage to within ~0.12% of the real numbers. MCA Hackathon - A Bot Battle Arena A two-day hackathon for my friend group, built around one game: everyone writes a bot that fights in a turn-based arena. A Rust WebSocket server runs the match, a language-agnostic JSON protocol lets you compete in any language, and a React app renders it live. Dinermind - University Project A native Android app built by a team of three in six weeks: it sends you random recipes when you leave a geofence, so you stop eating the same meals every day. IconGenerator.eu - Hobby Project A quick web tool for generating coherent-looking icons: it composes FontAwesome glyphs on a canvas, styles them to your taste, and exports a PNG. PHP and jQuery. TeamSpeak.gg - Hobby Project This Project started back when I was actively using & maintaining a public TeamSpeak-Server.
Tinkering
What I learned for my next Web Summit (2019) Practical tips from my first Web Summit in Lisbon: grab your badge at the airport, plan ruthlessly, time your lunch, and actually use the event app to find people. Measuring LiPo Voltage using an Arduino Building a permanent Arduino monitor for the cells of an FPV drone's LiPo battery, using a voltage divider to bring 16.8 V down into the Arduino's 3.3 V range. How this Blog works with Serverless Workers How a free Cloudflare Worker can rewrite a shared Notion page into a blog on your own domain - the original setup behind this site, since rebuilt.