Archive: 2025-09 | Page 2
Archive: September 2025
-
Sep 29, 2025
A project that has grown for years without strictNullChecks will very likely have hundreds or thousands of spots where null or undefined are not handled. Flipping strictNullChecks on in such a project usually breaks the build immediately with an overwhelming list of errors, which is why a gradual, folder-by-folder migration is almost always the only realistic path.
-
Sep 29, 2025
PHP was originally invented as a templating language, long before it became the general purpose programming language it is today. That very origin makes plain PHP templating dangerously uncontrolled, since neither sandboxing nor automatic escaping are built in. We build a minimal engine with variable interpolation and auto-escaping, and show what mechanism actually powers Twig under the surface.
-
-
Sep 28, 2025
A message text alone is not enough for a client to translate an error or drive retry logic. Anyone standardizing GraphQL error codes needs a central catalog of consistent extensions.code values that maps domain exceptions unambiguously onto stable, documented error codes.
-
Sep 28, 2025
Classic text search finds documents that contain the same words as the query. It does not recognize that a search for waterproof jacket should also match a product called weatherproof outdoor coat, even though not a single word overlaps. Vector search solves exactly this problem: text is represented as embeddings, points in a high dimensional space, and similar meaning translates into spatial closeness. The real challenge starts afterward, because finding the nearest neighbor across millions of vectors is expensive. Approximate kNN with the HNSW algorithm solves this scaling problem by trading a small accuracy loss for enormous speed gains. This article explains how HNSW works technically, where exact kNN still has its place, and how the two central levers, num_candidates and the similarity metric, are configured in practice.
-
Sep 28, 2025
used_memory does not always drop as much as expected after deleting thousands of keys, because the underlying memory allocator becomes fragmented. Active defrag is the mechanism Redis uses to incrementally reduce that fragmentation during live operation, without causing noticeable latency spikes.
-
Sep 28, 2025
An AI reviewer can run as an automated CI step that checks every pull request for consistency, obvious issues, and style violations, and comments on it before a human even opens the diff. Configured well, it noticeably reduces the load on development teams; configured poorly, it just creates comment noise and review fatigue instead of real value.
-
Sep 28, 2025
Unstable APIs fail in different ways: a short timeout, a 503, or sometimes no response at all. curl ships with built-in retry behavior through --retry, --retry-delay and --retry-connrefused that covers many of these cases, but understanding idempotency is what actually decides whether a retry is safe at all, without processing data twice.
-
Sep 28, 2025
The Adaptive Hash Index watches access patterns on B-tree pages inside the buffer pool and automatically builds an in-memory hash structure meant to speed up equality lookups. It works well as long as access patterns are genuinely repetitive and uniform, but under heavy write load it can become a bottleneck in its own right.
-
Sep 27, 2025
Magento 2 needs a precisely tuned service stack. PHP-FPM, Nginx, MariaDB, Redis, Elasticsearch or OpenSearch, and a Node container for frontend builds: each of these services has specific configuration requirements that differ in Docker from a classic server installation. Knowing these differences is what lets you build a stable and performant Magento Docker stack.