Migrating decades of personal archived email from Thunderbird mbox format into Proton Mail via the Bridge IMAP interface. On Linux. From the command line. Because GUI add-ons kept crashing. The Context I’ve been online since the BBS days on a Commodore 64. Watched email evolve from FidoNet netmail through SMTP, POP3, IMAP, webmail, and now end-to-end encrypted providers. My personal archive…
What if your electricity provider could tell you’re not home without ever looking out the window? They can. Your smart meter has already done it. Every 15 minutes—sometimes every few seconds—it reports when you wake up, cook dinner, leave for work, and go to bed. That’s not just kilowatt-hours. That’s a Pattern of Life (PoL) map of your household, transmitted without your…
The USAF’s Collaborative Combat Aircraft recent updates got me thinking about AI in software engineering. I spent my Air Force career securing information systems. Not flying them. But after decades in aviation, the Loyal Wingman concept hits different when you are building software. Grew up a military brat near air bases, hearing afterburners crack overhead. I joined the Air Force for…
I bought a Nordic Track treadmill back in 2024. What I expected was exercise equipment. What I got was a $2,000 Android tablet bolted to a motorised belt, running a walled garden so restrictive you couldn’t sideload a calculator without corporate permission. Six months in, the deck snapped under normal use. Warranty claim processed, no hassle—they replaced it with the newer 2026 model. I…
When I started out, I told anyone who’d listen that cloud storage was trivial. “How hard could it be? Just rsync the diffs and call it a day.” Here’s what I didn’t understand: Dropbox isn’t rsync . It’s a distributed consensus algorithm wrapped in delta encoding, layered atop conflict resolution heuristics, with background sync threads that don’t die…
When I was a kid in Sicily, my mom and I would bike across the flight line at Comiso AB so I could play Frogger on a Commodore 64 at the BX. That C64 became the genesis of everything for me: games, programming, running a school newspaper, and eventually discovering BBSes. But there was one thing I wanted desperately and could never have. Mario. Yes, the original Mario Bros. (the one with the pipes…
BLUF: If we keep burning junior talent today, we will have nobody to inherit tomorrow. The industry’s loss of patience with entry-level devs is creating a 20-year problem we are refusing to see. The Vanishing Entry Level Had a good conversation with fellow geeks Fernando Covatti and Dávid Kőszeghy about AI and junior programmers as we think about talent. Everybody is losing patience with…
Mobile power generation in the field. BLUF: The new fuel for the field is electrons, not diesel. Having spent my career building military and ISR systems, I know firsthand that power generation is a massive bottleneck. Diesel is a logistical vulnerability—fuel convoys are targets, and traditional generators ruin noise discipline while lighting up thermal sensors. The Army developing the ISV-Heavy…
Spain’s new mandate requiring telecom operators to maintain 4 hours of backup battery power at their transmission masts is a major victory for clean distributed energy assets at the edge of the grid. My buddy Jesse Gary was well ahead of the curve on this. Long before the current energy transition, he wasn’t advocating for deploying new diesel gensets, but rather utilising our existing ones…
The year was 1997. A younger, spikey-haired version of myself was running a shiny AMD K6 processor on Debian 1.3 “Bo.” At the time, I was working at a German ISP doing UNIX System Administration. It was a trial by fire where I learned how practical networking functioned whilst supporting customers in two languages. Flipping through an issue of Computer Shopper , I came across a DEC…
Token counts, cloud subscriptions, and API rate limits are a constant drain. Beyond the monthly line items and the continuous cost optimisation of running infrastructure, the primary driver for me is data containment. Ensuring that not a single packet of proprietary code or infrastructure configuration leaks into an outbound telemetry stream to an external corporate LLM provider is a massive win.…
“We Shouldn’t Use Probabilistic Models to Solve Deterministic Problems”: Why AI “Browsing Agents” Cost $281/Month to Do What a $5 VPS Can Do 📊📉 I recently ran some analytics on my self-hosted Postgres database for Miniflux , and the raw metrics tell a fascinating story about the real-world economics of data retrieval. Across my 300 RSS feeds , I am averaging exactly…
An honest, data-driven look at living with the first-generation Ford F-150 Lightning after nearly four years, 65,000 kilometres, and heavy real-world utility use.
I just finished watching CultRepo’s brilliant new documentary, The Story of C++: The World’s Most Consequential Programming Language , and it sparked a lot of nostalgia. Looking back, I sometimes wish I had dove deeper into the C/C++ ecosystem early on. My own journey started with BASIC on the Commodore 64, but my career path ultimately deployed me straight into the infosec and sysadmin…
Aaron Brethorst’s recent piece argues that domain expertise is the ultimate moat in an AI-driven world. He is spot on. AI has commoditised code generation, shifting the bottleneck from “can you build it” to “do you actually understand the problem well enough to know if the output is right.” But a deep domain moat introduces a brutal operational reality: it drastically…
The tech industry loves a treadmill. It wants us to keep running toward the next high resolution, battery hungry slab of glass. But sometimes, the most progressive move is a tactical retreat. My journey with the Samsung Galaxy series began in 2018 with the original Galaxy Watch, but long before that, my first smartwatch was a Pebble. When Eric Migicovsky announced the rebirth of the platform with…
A no-nonsense comparison of the new Pebble smartwatch against my daily driver, the Samsung Galaxy Watch 8 Classic. Weight, sensors, battery, and the tactile interface.
I’ve deployed numerous iRobot and Neato units over the years. My previous iRobot fleet served faithfully for five years; they are easy to repair, but their performance has fallen behind, and the mandatory cloud tethering is a strategic disadvantage for any privacy-conscious home. The Dreame X40 Ultra is a superior piece of hardware, but to truly own it, I had to strip away the cloud requirement.…
The Digital Archaeological Dig I recently assisted a friend with a codebase that felt like a digital archaeological dig—a chaotic mixture of Python versions and conflicting modules. The modern instinct was to upload the lot to an LLM to “fix” everything. The result was absolute carnage. No version control or history meant “editing on master” in real-time. More time spent…
Don’t confuse “work ethic” with “work volume.” Bryan Cantrill’s latest post is a precision strike on the “37k lines of code a day” crowd. In engineering, “virtuous laziness” is about spending hours in a hammock to find the one abstraction that saves weeks of toil. It’s about minimising cognitive load because human time is finite. LLMs have no such…
Your daily commute: dirt cheap in an EV. The average American drives ~64 km per day. Charging overnight at home costs roughly $0.80 per day, or about $24 a month. Compare that to your current expenditure at the pump. No early morning petrol station detours. No price spikes. Just plug in, sleep, and wake up with a “full tank” every single morning. The maths isn’t complicated. The…
My dad was a ham radio operator, so I spent a good chunk of my childhood tearing down rigs and building antennas with him. By the time I was old enough to break things on my own, I was compiling Linux kernels with AX.25 support just to mess around with packet radio. Truth is, RF is more magic than science. You can do the math all day, but physics always gets a vote in the end.
Whether it’s the cadence of a score, the logic of a codebase, or the spoken word, language is the ultimate “human” terrain. I’ve been fortunate to work across the globe. Outside of local food and drink, language remains the primary metric for how a culture operates. It is their conceptual framework and their historical documentation. I initially feared AI would sanitise this beauty. I…
The Dance Between Eros and Agape I’ve spent much of the past few years contemplating the meaning of love and life given my personal cirumstances. I’ve always appreciated how Pope John Paul II explored it in his seminal Theology of the Body lectures, particularly the distinction he draws between eros and agape . Those early reflections conveyed a kind of purity and balance I’ve rarely encountered…
After revisiting SailfishOS earlier this autumn, I spent a week living with its open-source cousin, Ubuntu Touch. With Google tightening the Android ecosystem, it felt like the right moment to explore what a true Linux mobile OS offers today. My first attempt was with a OnePlus Nord N100 on MetroPCS. It fought me at every step. Flashing, fastboot flags, and ADB coaxing were all unsuccessful. In…
Not my proudest work, but I needed a quick shell script. I’ve been diving deeper into Matrix bridges lately — those connectors that let Matrix users communicate with other platforms like WhatsApp, Telegram, Discord, Slack, and more. In doing so, I’ve learned a lot about how these bridges are built, deployed, and maintained. The twist? I’m running everything on OpenBSD . Running -current on OpenBSD…
Living out in the boonies has its charms: quiet nights, open skies, and an estate that keeps me busy, but internet choices aren’t one of them. Options are slim, and Carrier-Grade NAT (CGNAT) makes life rough if you want to self-host. Static, routable IPs are what you really need, but out here that’s a luxury. I didn’t want to rely on Cloudflare tunnels, ngrok, or similar…
Thanks to Anirudh for getting me started on the right path! Running Signal Desktop in a Debian VM on OpenBSD I wanted to get Signal Desktop running in a way that integrates smoothly with my OpenBSD host. Since Signal doesn’t have a native OpenBSD port, I spun up a Debian VM using vmm(4) and vmctl . Below are my notes for setting this up, including a few gotchas. Step 1: Download Debian ISO Start…
OpenBSD and Me OpenBSD holds a place near and dear to my heart. Back in the Air Force, I deployed some of the first Snort sensors in 2003/2004 to detect network traffic. I quickly became engrossed with the elegance and simplicity of OpenBSD’s build system and ongoing maintenance. I wish I could dig back through my early eBay purchases and find the little Compaq machine that powered my first home…
There’s something delightfully analog about growing up before smartphones. We don’t have TikTok timelines or Instagram reels of high school. Our memories live on dusty Hi8 and DV tapes, glitchy, lo-fi fragments from a time before social media ruled our lives. Back in Latimer, Mississippi, our English teacher Vadis Perkins, a true visionary, gave us the green light to launch a morning news show at…
I’ve been a loyal follower of Nokia’s mobile innovation journey for years, starting with the Nokia N800 and every subsequent device. Before Android fully established itself, Nokia’s Linux-based devices offered a genuinely geek-friendly alternative. I fondly recall a time in Tel Aviv when I used my N900 to SSH into a server and fix a config file while riding in a taxi—those were…
In my teens, close family friends gave me a [Sega Nomad](https://en.wikipedia.org/wiki/Genesis_Nomad) along with several Genesis/Mega Drive games. Up until then, I was only allowed a computer and a GameBoy, so the Nomad—with its colour screen and vast game library—became an instant favourite as I travelled around Europe. It was a fantastic but little-known device; its biggest flaw was its battery…
I’m the kind of guy who buys a car and keeps it forever. When we got our Model 3 over five years ago, I thought I’d be handing the virtual keys to our daughter in a decade. Well, it’s totalled. That started our search for another electric vehicle. We left the ICE world behind and didn’t consider hybrids—we’re firmly in the EV camp. After a week of driving ICE cars in…
Sitting in a coffee shop in Vienna feels like stepping into a timeless tradition. The air is filled with the rich aroma of freshly brewed coffee and the subtle sweetness of pastries. The décor blends classic and modern—high ceilings, chandeliers, and plush seating paired with sleek, minimalist touches. It's the kind of space that invites lingering, whether reading, writing, or simply watching the…
After travelling most of my life, I have been on a crusade to reduce my tech baggage. There was a time when I would have multiple laptops, games, and a litany of cables. International converters further complicated this during times of 110/220, requiring separate blocks. Like clothing, I overpacked what was actually used and needed. This trip, I decided to attempt just a tablet with a keyboard. I…
At times, I've felt a twinge of disappointment that I don't read as much or as often as I'd like. The giants of philosophy, history, and technology had devoured volumes by this stage in their lives, a feat that seems beyond my reach. But then, I realised that my approach to media consumption is unique and satisfying in its own way. For the past seven days, I have made it a point to note when I am…
After a decade of loyal service, my Sole Treadmill finally threw in the towel. Not one to contribute to e-waste, I tried replacing capacitors and control boards until I exhausted every part I could find online. Realising that my time was worth more than my patience, I decided it was time for a new one. My wishlist was pretty straightforward: Incline/Decline capabilities Speeds over 10 mph No…
It has been two years since we picked up the Lightning, and I wanted to discuss what has changed. Many of my first posts focused on the present rather than the future. Well, here we are in the future. I planned a trip from Standish to Duck Creek RV Park in Muskegon. I followed the same process I outlined two years ago: Plug the destination into the FordPass App and chuckle at the recommendations.…