Death to PowerPoint - Building a Markdown Presentation System

I Hate PowerPoint Let me get this out of the way: I haven’t touched PowerPoint since middle school. I forgot how it works. I don’t want to remember. When I worked at BitNinja, I had to give presentations all the time. Technical talks, demos, explanations. Every time someone said “can you prepare some slides?” I died a little inside. Not because I hate presenting - I actually enjoy it. I hate the tools. ...

October 22, 2025 · 5 min · Zoltan Toma

Refactoring My Blog: From Generic List to Portfolio-First Home Page

The Setup I’m on vacation. I opened Claude Code with a simple question: “What small blog tasks can I knock out today?” The answer: way more than I expected. What We Actually Did 1. Reorganized Blog Posts by Year The Problem: 45 blog posts in a single flat directory (content/posts/). Hard to navigate, messy structure. The Fix: content/posts/ ├── 2021/ ├── 2022/ ├── 2023/ ├── 2024/ └── 2025/ Simple bash commands: ...

October 21, 2025 · 4 min · Zoltan Toma

Sometimes You Should Just Fuck Off and Reset

The Setup I’m on vacation. First real time off in months. And instead of relaxing, I immediately opened Claude Code with a question: “What should I work on during my 3 days off?” Because that’s what I do. That’s what we all do, right? Time off = time to finally work on side projects without the day job getting in the way. Except this time, Claude called me out. The Brain Dump I started listing everything on my mind: ...

October 20, 2025 · 7 min · Zoltan Toma

Buy a Better Router, Not Windows 11

The Broken Promise Remember 2015? Microsoft told us Windows 10 would be “the last Windows ever.” They promised a continuous update model, no more forced migrations, no more leaving hardware behind. Fast forward to 2021: Windows 11 appears. Suddenly, millions of perfectly capable machines are “obsolete” because they lack TPM 2.0. The “last Windows” promise? Quietly forgotten. Now it’s late 2025, and Microsoft is pushing the narrative hard: “Windows 10 support ends soon. Upgrade to Windows 11 or your computer will be unsafe!” ...

October 16, 2025 · 8 min · Zoltan Toma

Welcome to My AI Slop

The Portfolio Paradox “Which graphic designer has the best portfolio? The one who doesn’t have work.” My old graphic designer colleague said this, and holy shit, it’s true for all of us in tech. When do I have time to work on my personal blog? When I’m not shipping releases, fixing production bugs, or juggling 20 side projects. Wait, did I say 20? Yeah. Twenty. Maybe more. I lost count. ...

October 13, 2025 · 8 min · Zoltan Toma

Managing Multiple Git Identities on a Single Machine

Setting up path-based Git identity switching for managing personal and organization accounts on the same machine, with lessons learned from macOS and Linux pain points.

October 12, 2025 · 11 min · Zoltan Toma

Setting Up My Hugo Blog: From Tilt.dev to... Just Hugo

How I went from an overengineered Docker + Tilt.dev setup to just running Hugo directly, and why sometimes simpler is better.

October 12, 2025 · 6 min · Zoltan Toma

Building Docker Support for Vagrant WSL2 Provider - A Development Journey

Introduction Over the past few days, I’ve been working on adding Docker support to the vagrant-wsl2-provider plugin. This turned out to be more challenging than expected, but the journey taught me a lot about WSL2’s internals, systemd initialization, and multi-distribution package management. In this post, I’ll walk through the development process, the challenges we faced, and how we solved them to get Docker running on 8 different Linux distributions in WSL2 through Vagrant. ...

October 5, 2025 · 6 min · Zoltan Toma

Snapshots and Testing: Building Real Tests for a Vagrant Provider

The Testing Problem Nobody Talks About After getting Docker support working, I wanted to add snapshot functionality to the vagrant-wsl2-provider. But there was a nagging problem I’d been avoiding: how do you actually test a Vagrant provider plugin? The “proper” way would be to write Ruby unit tests with RSpec, mock all of Vagrant’s internals, and test each component in isolation. But here’s the thing - Vagrant is a massive gem with heavy dependencies. Just getting the test environment set up requires pulling in the entire Vagrant gem, which then requires native extensions, specific Ruby versions, and a whole dependency chain that’s… painful. ...

October 5, 2025 · 6 min · Zoltan Toma

Building a Vagrant WSL2 Provider: Testing Journey and Unexpected Discoveries

The Final Push to v0.1.0 After testing the provider on my corporate machine, I discovered a bug related to the missing Windows HOME environment variable. The provider was trying to cache files on a NAS drive (mapped as U:) instead of the local user directory. After fixing this by switching to Vagrant.user_data_path, I felt confident that v0.1.0 was nearly ready. All that remained was a comprehensive test run across all available WSL distributions. ...

September 29, 2025 · 4 min · Zoltan Toma