Archive: 2025-08 | Page 16
Archive: August 2025
-
Aug 9, 2025
TypeScript 5.2 introduced using and await using, based on the TC39 proposal for Explicit Resource Management. Resources such as file handles, database connections, or locks are now released automatically and deterministically as soon as their scope is left.
-
Aug 9, 2025
react-native-camera is unmaintained, and expo-camera is solid but limited for real frame processing. VisionCamera solves camera integration in React Native through JSI, running directly on a native thread and giving synchronous access to every single camera frame, not just to finished photos. This article walks through how the camera, frame processors, QR code scanning, and native plugins fit together.
-
Aug 9, 2025
Once a form needs to manage a variable number of similar sub-forms, for example line items on an order or tags on an article, a single field is no longer enough. CollectionType solves exactly this problem, but it requires allow_add/allow_delete, correct entity mapping, prototype-based JavaScript, and targeted PRE_SET_DATA and PRE_SUBMIT event listeners working together to be robust and secure.
-
Aug 9, 2025
A wishlist toggle button has to feel instant, regardless of how long the server takes to respond. With Alpine state, optimistic UI and a global store, a heart icon can be built that stays in sync across any number of product cards and offers a working wishlist even to visitors who are not logged in.
-
Aug 9, 2025
Google Discover can bring more traffic to some sites than classic organic search, yet it follows a completely different set of rules. Instead of reacting to keywords, Discover surfaces content that matches a user's recognized interests, with no active search query involved at all. This article explains how Discover visibility actually comes about, what role image quality and E-E-A-T signals play, and where the realistic limits of direct optimization lie.
-
Aug 8, 2025
An E2E test that only checks the default resolution misses most of the layout bugs real users actually run into. This article shows how to configure Cypress and Playwright so the same test suite automatically runs across mobile, tablet, and desktop breakpoints, reliably catches broken navigation, overlapping elements, and text truncation, and maintains screenshot baselines per screen size, without duplicating a single test.
-
Aug 8, 2025
The hexagonal architecture, also known as Ports and Adapters, frees the domain logic from coupling to frameworks, databases, and external services. In Symfony it can be implemented precisely with PHP interfaces as Ports and Symfony services as Adapters: fully testable domain code without a single framework import in the core logic.
-
Aug 8, 2025
An execution plan shows how a database actually runs a query, which indexes it uses, in what order it joins tables and how expensive each step is estimated to be. Anyone who can read this execution plan finds performance problems in minutes instead of guessing, regardless of whether the query runs against MySQL, PostgreSQL or SQL Server.
-
Aug 8, 2025
NULL values in aggregate functions are treated differently by COUNT, SUM and AVG, and these exact differences regularly lead to wrong average values and misleading reports. This article explains why COUNT(*) and COUNT(column) return different results, how AVG can be skewed by NULL, and how COALESCE, NULLIF and deliberate GROUP BY control this NULL behavior on purpose.
-
Aug 8, 2025
Breakpoints that never hit, Xdebug connecting but failing to find the files, deployments that land in the wrong path: almost all of these problems share the same cause, misconfigured or missing Path Mappings. Once you understand the concept, you solve these problems in minutes.