$ cat /var/blog/*

Getting Started with Claude Code Agents

May 14, 2026

Claude Code agents (called subagents) let you delegate specific tasks to specialized AI assistants with their own context, tools, and permissions. Here is how to create and use them.

Read more

Multi-step Forms with Symfony 8 FormFlow

February 25, 2026

Symfony 7.4/8.0 added native support for multi-step forms through FormFlow. Here's how to split a large form into steps with per-step validation and conditional navigation.

Read more

Invokable Console Commands in Symfony 8

February 22, 2026

Since Symfony 7.3, you can write console commands as plain invokable classes with attribute-driven arguments and options, no configure or execute boilerplate required.

Read more

Docker Compose Cheat Sheet

February 21, 2026

A practical reference for Docker Compose. All the commands, configuration options, and patterns you'll use in your day-to-day work.

Read more

Writing Your First MCP Server in Symfony

February 13, 2026

MCP (Model Context Protocol) lets AI tools like Claude Code interact with your application. Symfony now has a bundle for it. Let's build a simple MCP server step by step.

Read more

Writing a GNOME Shell Extension from Scratch

January 20, 2026

A step-by-step guide to writing your first GNOME Shell extension. We'll build a custom search provider that fetches random excuses from an API, right from the GNOME overview.

Read more

jq for beginners

November 20, 2025

jq is a command-line tool for parsing, filtering, and transforming JSON. In this post I'll walk you through the basics. From simple key lookups to filtering arrays and building new objects.

Read more

OWASP Top 10 for PHP Developers

March 4, 2025

Learn how to secure your PHP applications against the most critical web security risks with practical code examples. This guide walks through the OWASP Top 10 vulnerabilities and shows you exactly how to fix them in your PHP projects.

Read more

Simplified CQRS with Symfony 7.2 Messenger

February 27, 2025

Learn how to implement the Command Query Responsibility Segregation pattern in your Symfony 7.2 projects using the Messenger component - a practical guide with code examples.

Read more

Automating Docker builds with Gitea Actions

February 25, 2025

No more manual Docker builds! This guide shows you how to use Gitea Actions to automatically build and push Docker images every time you push code. Perfect for developers wanting to automate their workflow with a self-hosted Git solution.

Read more