Page 22 - Monthly Archives: January 2026
-
Maxim Mironjuk
-
January 05, 2026
A good code review workflow in GitLab does not rely on good intentions but on the right tools: applicable suggestions, cleanly resolved discussion threads, and strategies to review even large diffs in a reasonable amount of time.
-
Maxim Mironjuk
-
January 04, 2026
Bash loads a different combination of configuration files on every start, depending on whether it runs as a login shell, an interactive non-login shell, or a non-interactive script execution. Anyone who writes PATH extensions or environment variables into the wrong file gets a locally working setup and later wonders why that exact same variable is suddenly missing in a cron job or deployment script.
-
Maxim Mironjuk
-
January 03, 2026
As soon as a product has multiple variants with their own size, color and price, classic aggregation fails silently and miscounts. The nested aggregation operates on a separate, isolated Lucene index inside the parent document, which yields correct facets at variant level. With reverse_nested you can additionally jump back into the parent context to build facets that correctly connect both variant and product level.
-
Maxim Mironjuk
-
January 03, 2026
Anyone who packs directories into GitLab artifacts without a plan ends up with bloated packages, non reproducible deployments, and unnecessary server risk. Clean separation between build output, shared data, and server state is the core of a resilient release process for Magento.
-
Maxim Mironjuk
-
January 03, 2026
The PHPStorm plugin marketplace lists dozens of plugins that promise to simplify Magento development. In practice, many of them add little value, noticeably slow down the IDE, or are simply irrelevant for Hyva projects. This article separates the real productivity boosters from the resource hogs.
-
Maxim Mironjuk
-
January 03, 2026
Exceptions in TypeScript are invisible to the compiler: a function that throws looks exactly the same in its signature as one that never fails. The Result type pattern makes failure paths explicit by returning success and failure as a typed value that the caller must actively handle.
-
Maxim Mironjuk
-
January 03, 2026
The kernel writes every important message, from hardware detection at boot to the OOM killer during live operation, into an internal ring buffer that dmesg makes readable. Anyone who masters kernel log analysis with dmesg finds driver failures, memory problems and hardware defects often minutes before they show up as an application outage, instead of searching for the cause only afterward.
-
Maxim Mironjuk
-
January 02, 2026
Trigger-based tools like pt-online-schema-change solve many problems but add synchronous overhead to every single write. gh-ost, built at GitHub, takes a fundamentally different approach: it reads changes asynchronously from the MySQL binary log, exactly like a regular replica, and applies them to a ghost table. On tables with very high, constant write load, that difference is what separates a migration nobody notices from one that visibly slows down production.
-
Maxim Mironjuk
-
January 02, 2026
Loading jQuery for a simple star widget is like renting a truck to deliver a letter. Alpine.js provides everything a complete, accessible rating widget needs with x-data, x-on and x-bind, in under 50 lines, without npm, without a build step, directly in the template.
-
Maxim Mironjuk
-
January 02, 2026
Custom Magento 2 GraphQL resolvers connect the schema, query logic and service layer. What matters most is clear types, clean resolver classes and an architecture that does not push business logic directly into the resolver.
-