Blog
Insights into my everyday programming life and other interesting technical tidbits
October 2025
Git Hooks and Husky: Automatically Enforcing Code Quality
Git hooks automatically execute scripts — e.g., before a commit is created. With Husky, lint-staged, and PHP CS Fixer, you can ensure only clean code enters the repository.
Read More →Renovate Bot: Automatic Dependency Updates for PHP and JavaScript
Outdated dependencies are a security risk. Renovate Bot automates updating composer.json, package.json, and more — with configurable auto-merge rules and grouping strategies.
Read More →September 2025
C# LINQ for Database Queries: Comparison with Doctrine DQL and Entity Framework Core
LINQ (Language Integrated Query) enables type-safe database queries directly in C#. Combined with Entity Framework Core, it's the Symfony Doctrine equivalent in the .NET world. This article shows parallels and differences.
Read More →ASP.NET Core Minimal APIs: REST APIs Without Controllers
ASP.NET Core Minimal APIs enable REST APIs with minimal boilerplate — no controllers, no attribute decoration. Ideal for microservices and for PHP developers exploring C#.
Read More →August 2025
Gradle vs. Maven: Which Build Tool for Java Projects?
Maven and Gradle are the two dominant build tools in the Java ecosystem. Maven is declarative and convention-based, Gradle is programmatic and flexible. This article clarifies which tool is better suited for which scenario.
Read More →July 2025
Java Records, Pattern Matching, and Sealed Classes: Modern Java Features
Java Records, Pattern Matching for switch, and Sealed Classes are the key features of recent Java LTS versions. They make Java code more concise and type-safe — similar to PHP 8.x enums and readonly properties.
Read More →