I Just Wanted to Find That Git Config Post: Adding Search to My Hugo Blog

The Setup: A Simple Task Before Work Tomorrow I have to go to the office. Early. Way too early. So tonight, I thought I’d do something simple and “quick” with my blog. You know, easy stuff: Write a few blog posts Update the projects list Maybe organize something Wait… there was that blog post I wrote about setting up multiple git users in different directories. And something about global gitignore. Which machine did I write that on? Let me search for it. ...

October 28, 2025 · 6 min · Zoltan Toma

Turning Blog Posts into Videos with TTS: A Proof of Concept

The Random Idea So I was working with Claude on something completely unrelated, and somehow we ended up talking about voice cloning with Kokoro TTS. And then I had this thought: “What if I could turn my blog posts into videos?” Not for any good reason. Just… what if? Claude: This is how most of our sessions start. “What if…” followed by 3 hours of building something we didn’t plan to build. ...

October 27, 2025 · 5 min · Zoltan Toma

One-Click Editing: Adding a VSCode Link to Hugo Posts

Not Today I wasn’t planning to do any development today. I’m visiting family, but of course I brought my laptop - it’s like my keys at this point. A key to the digital world, if you want to be poetic about it. I wanted to show my sibling what AI tools I’ve been using. Started with Claude Code (naturally), but also installed Ollama and LM Studio to demonstrate what’s possible with local models, especially with RooCode. ...

October 25, 2025 · 5 min · Zoltan Toma

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

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