How a Timeout Can Charge Your Customer Twice (And How to Stop It in Laravel)
A customer attempts a payment. The request safely reaches your server, and the transaction is performed successfully. Then, while the response is be…
Tech news from the best sources
A customer attempts a payment. The request safely reaches your server, and the transaction is performed successfully. Then, while the response is be…
Welcome back. This is the next article in our practical use of patterns in Laravel, and in this guide, we are going to talk about one of the most po…
Fifteen real Laravel applications, every one of them a codebase you can go and read. 811 tables. One pinned MySQL 8.0 database, migrations only, no…
У моего генератора QR-кодов листами появился публичный API: POST с JSON, в ответ сразу готовый PDF, до 1500 кодов за запрос, без регистрации и ключе…
Database migrations are one of those things that often look harmless during code review. A migration may contain only a few lines of SQL, the applic…
Hello world, it's Wednesday, August 26, 2026, and here's what happened This Week in PHP Internals. 10 stories this week, so let's get into it. But f…
Creating a call to an AI model is the easy part. A request, a JSON body, a content field on the way back. If that were the work, nobody would need a…
If you are testing AI agents in Laravel, there are now two packages with "evals" in the description, and the obvious question is whether you need bo…
Когда речь заходит о разработке PHP-расширений, многие сразу представляют C, Zend API и сложную систему сборки. Но сегодня есть более удобный путь.…
Why do developers compare PHP and Node.js? (Spoiler: One is a language, the other is a magician’s hat) And why most people don’t actually know what…
If you are building API-driven applications, nothing clutters up your controllers faster than manually typing out response()->json(...) arrays ev…
I Started Building a Discord Server Directory I’ve spent a lot of time around Discord communities, and one thing has always bothered me. Finding a g…
OpenLiteSpeed is a free, open-source, high-performance web server with HTTP/2 and HTTP/3 support, native PHP handling, and a graphical admin console…
In the space of a month I was asked three questions that looked completely unrelated: Can search work on a site translated with TranslatePress, wher…
You followed the step-by-step WP-CLI procedure from W4 , the terminal printed "Success: Core updated successfully," and the session is over. Stoppin…
У виджета было 92 теста и 100% построчного покрытия. Потом я открыл его в маленьком окне терминала, и шапка таблицы уехала за верхнюю границу экрана…
I recently ran into a weird issue while working on a Laravel project on Windows using Laragon . Everything was working fine until I tried to import…
Привет, Хабр! Меня зовут Михаил Емельянов, я ведущий разработчик в НЛМК ИТ. Команда, в которой я состою, занимается разработкой и поддержкой различн…
I am building a small chat feature for an HR system. Shared hosting, PHP, no WebSocket, polling every few seconds. Nothing exotic. Then a bug report…
CakeDC/Users gives you TOTP two-factor authentication almost for free: flip one config key and every login grows a "enter your 6-digit code" step. T…
A module hook that returns an empty string looks exactly like a module hook that was never called. PrestaShop gives you nothing to tell them apart:…
Этой весной мне понадобился лист QR‑кодов с подписями: по коду на каждую позицию, чтобы скачать PDF, распечатать и разрезать. Он…
I maintain a small library of standalone components: no npm, no bundler, no framework. Each one is a single file that encapsulates its own CSS (and…
If your app sells an allowance, a number of credits a month, or a number of documents, or a number of anything. Whatever it is, you end up writing a…
Bring-your-own-key, not another subscription Every few months another "all AI models in one place" product shows up, and almost all of them work the…
A personal blog sounds like a simple Laravel project. Create posts, show them on the homepage, and you are done. But once you start adding search, c…
Two canonical tags on the same page. WordPress settings look correct. So why is the live HTML different? If you manage WordPress sites for clients,…
A WhatsApp button on a shop was dialling the wrong number. Not a formatting problem — a genuinely different number, three digits short of the one in…
WordPress is often treated as a traditional CMS, but its REST API makes it possible to use WordPress as the backend for applications, dashboards, mo…
There is a concurrency problem in APIs that is easy to miss. Two clients read the same resource: Client A -> GET /documents/42 Client B -> GET…