Page 2 - Monthly Archives: April 2026
-
Maxim Mironjuk
-
April 29, 2026
Every line of text in a browser carries invisible space above and below the actual letters, a side effect of font metrics reserved for line spacing. With text-box-trim and text-box-edge, that space can be removed precisely, without the fragile negative margin tricks that had to be recalibrated every time a font changed.
-
Maxim Mironjuk
-
April 29, 2026
DateTime objects can be changed after creation, and that is exactly what produces hard-to-find bugs in larger codebases. DateTimeImmutable solves this problem structurally by having every method return a new instance instead of changing the existing object. This article shows, with real PHP 8.4 code, how DateTimeImmutable, DateTimeZone and DateInterval work together, and how existing DateTime code can be migrated.
-
Maxim Mironjuk
-
April 29, 2026
System monitoring starts with correctly interpreting load average, CPU percentages, and memory figures in top and htop, because misreadings lead to wrong diagnoses. This article shows how to sort and filter process lists to find the actual cause of a problem, when modern alternatives like btop and glances are worth the extra install, and what a structured workflow looks like during an acute live incident.
-
Maxim Mironjuk
-
April 29, 2026
Claude Code can be installed in a few minutes, but the real decisions, permission mode, default model, and authentication method, determine how safely and productively you'll actually work with it day to day. This article walks through installation, authentication, initial configuration, and the most common first-run pitfalls, so developers can put the CLI to reliable, controlled use from the start.
-
Maxim Mironjuk
-
April 28, 2026
VueUse bundles more than two hundred ready made composables for storage, sensors, timers and browser APIs. Using this library deliberately instead of ad hoc not only saves time otherwise spent writing your own utility functions, it also reduces bugs around edge cases such as SSR, cleanup and reactivity that hand rolled composables easily miss.
-
Maxim Mironjuk
-
April 28, 2026
TypeScript offers two fundamentally different tools for representing a fixed set of allowed values: enums and union literal types. Both have legitimate use cases, but the choice has real consequences for bundle size, serialization, and interoperability.
-
Maxim Mironjuk
-
April 28, 2026
Testing Magento and Hyvä stores in Chromium alone hides rendering differences that real customers actually hit in Firefox or Safari. Playwright makes it simple to run the same test suite against multiple browser engines, but the real payoff only comes from a deliberate browser matrix built on real analytics data instead of default settings.
-
Maxim Mironjuk
-
April 28, 2026
Distroless images contain neither a shell nor a package manager nor unnecessary system libraries, which drastically reduces the attack surface of a PHP container. With static-php-cli or FrankenPHP as a base, a complete PHP runtime can be compiled into a distroless image without needing the classic PHP-FPM distribution.
-
Maxim Mironjuk
-
April 28, 2026
Anyone who only knows React on the surface knows that the Virtual DOM "makes things fast". Anyone who wants to build performant React apps needs to understand how the diffing algorithm decides what gets updated, and why keys, component identity and the Fiber architecture are the decisive factor.
-
Maxim Mironjuk
-
April 28, 2026
Maintaining a separate test copy for every language and store means losing both overview and runtime at the same time. A single store-context parameter in Cypress or Playwright is enough to check languages, currencies, and catalog differences, catching typical store-scope configuration bugs reliably before they reach production.
-