Page 4 - Monthly Archives: October 2025
-
Maxim Mironjuk
-
October 28, 2025
Nested aggregation computes a metric from values that are already aggregated, such as average daily revenue from daily sums, instead of directly from individual rows. Since SQL forbids nesting aggregate functions like AVG(SUM(column)) directly at the same SELECT level, this article shows how subqueries and CTEs implement nested aggregation cleanly and correctly.
-
Maxim Mironjuk
-
October 28, 2025
Tailwind v4 drops the central tailwind.config.js in favor of the @theme directive right inside CSS. For plain utility classes little changes in an Alpine template, but wherever an Alpine component used to read configuration values from JavaScript, breakpoints or color values for dynamic calculations, the source of truth shifts to CSS custom properties. Understanding that shift saves a lot of debugging when moving a v3 setup to v4.
-
Maxim Mironjuk
-
October 28, 2025
React Native widgets are not rendered by the JavaScript engine, they are rendered by each platform's own native widget framework. This article shows how an iOS Widget Extension target built with SwiftUI and an Android App Widget built with Jetpack Glance connect cleanly to an existing React Native app, including data exchange and deep linking.
-
Maxim Mironjuk
-
October 28, 2025
setup:di:compile is one of the most time consuming steps in the Magento build process, and one of the most frequently misplaced. Run it too early and the full Composer base is missing; run it too late and it delays the deploy. This article shows when and how di:compile should run in a GitLab pipeline.
-
Maxim Mironjuk
-
October 27, 2025
nice and ionice only lower the priority of background jobs, but do not prevent them from briefly occupying entire cores. CPU pinning goes a step further: it reserves specific cores exclusively for PHP-FPM workers, while reindexing and cron are only allowed to run on other cores.
-
Maxim Mironjuk
-
October 27, 2025
A runbook read during an incident at two in the morning has to be understandable within seconds, not after five minutes of reading. Claude helps extract recurring patterns from existing incident postmortems, design a structure for the first five minutes under stress, and systematically keep runbooks current after every new incident instead of writing them once and forgetting about them.
-
Maxim Mironjuk
-
October 27, 2025
Eventual consistency is not a compromise for poorly built systems but a deliberate consequence of the CAP theorem in every distributed system, including read replicas in relational databases. Whoever concretely understands consistency models, conflict resolution, and replication lag makes better decisions about where a short delay is acceptable and where it is not.
-
Maxim Mironjuk
-
October 27, 2025
Most Magento stores waste link equity because internal links are placed by chance instead of by design. Directing PageRank deliberately to category and product pages, choosing anchor text with intent, and consistently hunting down orphan pages improves rankings without a single external backlink. This article shows concrete methods, tools and Magento-specific implementations for a resilient internal linking strategy.
-
Maxim Mironjuk
-
October 27, 2025
Fibers give PHP code the ability to pause execution at almost any point in the call stack and resume exactly there later, without restructuring the calling logic into callbacks or generators. This article walks through the Fiber class step by step, from start and resume through error handling with throw to a custom cooperative scheduler and the real costs in memory and stack usage.
-
Maxim Mironjuk
-
October 26, 2025
Sending a date as a plain string looks harmless until two clients expect different formats and the backend ends up duplicating validation. Custom scalars move format and validation into a single, reusable type in the schema, with clear rules for serialization, input parsing, and error cases.
-