Zoom M3 MicTrak file recoveryHow a series of inconspicuous events lead to a journey deep into the binary encoding of RIFF files and this data recovery toolFeb 25Feb 25
Permanently delete unwanted emails from Gmail. Out of sight, out of mind!Getting unwanted emails from a specific sender and can’t resist checking the trash? This guide will help you remove them for good.Feb 21Feb 21
Stop 404 prying bots with HAProxyYour logs are filled with 404 hits on /.DS_Store, /backup.sql, /.vscode/sftp.json and a multitude of other URLs. While these requests are…Feb 17Feb 17
How to mitigate attacks on WordPress when running under a full CDN like CloudflareThe most effective way to prevent bots from spamming your server is to drop them at the firewall. This is generally achieved using tools…Sep 19, 2024Sep 19, 2024
Premature optimization, where software thrives unless you kill it first — a tale of Java GCWill a LinkedList be faster? Should I swap the `for each` with an `iterator`? Should this `ArrayList` be an `Array`? This article came to…Mar 30, 2024Mar 30, 2024
How to calculate P&LCalculating profits and losses from a mathematical perspective is trivial, just subtract all things sold to all things bought. The…Mar 7, 2024Mar 7, 2024
Interactive Brokers TWS API — and yet it works!If you glance over the forums, it looks like this software was forged in the fires of hell. Follow me in a journey to the depths.Feb 23, 20241Feb 23, 20241
SSH, Mosh and tmuxIf you’re using secure shell to remote, Mosh and tmux should be part of your arsenal.Oct 30, 2023Oct 30, 2023
Pepsi broke the contractSome APIs change because the world evolves, some because they are fundamentally broken from the start; looking at you Thread.stop!Mar 20, 2023Mar 20, 2023
Run bash commands from JavaAs one of Java paradigms is “write once, run anywhere”, and calling external software makes that much more complicated, you’ll want to…Mar 1, 2023Mar 1, 2023