Browse category Blog

Neovim PHP Development Setup

by · June 23, 2026

0
 

If you’ve ever watched a colleague fly through code in NeoVim and thought “that looks fast but I’d never figure out the config,” the barrier to entry has dropped significantly. LazyVim — a NeoVim distribution that ships with sensible defaults and a plugin manager — gives you a fully functional IDE experience within minutes, with […]

 

PHP 8.5 Pipe Operator

by · June 22, 2026

0
 

PHP 8.5 shipped with a feature that functional programming enthusiasts have been requesting for years: the pipe operator (|>). If you’ve used pipes in Unix shells, Elixir, F#, or even JavaScript proposals, the concept will feel immediately familiar. If you haven’t, you’re about to discover one of the cleanest ways to express data transformations in […]

 

Why skipping Eloquent doesn’t mean skipping SQL injection protection

by · June 17, 2026

0
 

Video version at: https://youtu.be/gAVfQhPw8Do A few weeks ago, I posted something on LinkedIn that ruffled some feathers. Here’s what I said: “Defaulting to the ORM for everything isn’t a best practice. It’s just the path of least resistance.” The replies came in fast, and a good chunk of them said the same thing: “That’s unsafe! […]

 

How to use git rebase without breaking your team’s history

by · June 10, 2026

0
 

Video version: https://youtu.be/5n2VZS_YPv0 Let’s say you’re working on a feature branch called add-discount-codes. You’ve been at it for a couple of days, and you’ve got five commits with all of your work done. A team member mentions that git rebase can make sure you have the most recent changes from the “main” branch. So you […]

 

Token-Oriented Object Notation (TOON) For PHP Developers

by · May 6, 2026

0
 

See the video version at https://youtu.be/Nk9ayWxkJ1M It’s an unfortunate piece of our current developer reality that a lot of our day is spent worrying about how many tokens we’re spending. Every time you send structured data to an LLM API, you’re paying for tokens. And if you’re sending arrays of similar objects as JSON, you’re […]

 

Ubuntu Firewall Setup in Less Than 5 Minutes (Plus One Step That Will Lock You Out)

by · April 21, 2026

0
 

   Setting up a Virtual Private Server (VPS) without a firewall is asking for trouble. Ideally, you’d have a dedicated security person to handle all of this, but that’s rarely the case. One thing I always do on a fresh Linux server is configure a firewall. It used to be a real headache, but […]

 

Advanced Unique Index Patterns for Soft Deletes (MySQL and PostgreSQL)

by · February 27, 2026

0
 

   Tell me if this has ever happened to you: a user contacts support because they’re randomly seeing different order histories every time they log in. Sometimes they see their recent purchases, sometimes they see orders from years ago, and sometimes they see nothing at all. After several hours of debugging, you discover that […]

 

Here’s Why FrankenPHP Worker Mode Saves Your Sanity

by · January 30, 2026

0
 

 A lot of developers spend little to no time thinking about how our code gets from being code to something that can be interacted with by the consumers of our code. There are several large components that we can affect to improve the performance of this interaction. One of them that doesn’t get much […]

 

Database Views: The PHP Feature Nobody Uses (But SHOULD)

by · January 19, 2026

0
 

 One of the more challenging pieces of maintaining applications that uses an SQL database is the fact that queries only every get more complex as the application grows. It never ever gets simpler so you start having to copy and past the same complex join into multiple places and good luck if you have […]

 

Why Your PHP Dates Keep Breaking (And How to Fix It)

by · December 18, 2025

0
 

 If you’ve ever spent hours debugging a date-related bug only to discover that some code somewhere modified a DateTime object you thought was safe, you know the pain. DateTime in PHP is mutable, which means any code that touches your date object can silently change it, leading to bugs that are incredibly challenging to […]