Page 25 - Web Performance
-
Maxim Mironjuk
-
March 15, 2025
Page changes in classic multi-page applications usually feel abrupt: the old page disappears and the new one appears with no transition at all. Cross-Document View Transitions close that gap directly in the browser, with a few lines of CSS, no single-page framework and no extra JavaScript for the basic case.
-
Maxim Mironjuk
-
March 14, 2025
JavaScript is single-threaded, but that is not a law of nature for browser applications. Web Workers bring real multithreading to the browser: CPU-intensive calculations, file processing, encryption and AI inference run in background threads while the UI thread stays responsive and processes user interactions smoothly.
-
Maxim Mironjuk
-
March 06, 2025
A single list query followed by one query per item inside a loop looks harmless during development, yet turns into hundreds or thousands of database calls per page request under production load. This article shows how to spot the N+1 query problem in ORM and collection code, fix it with eager loading and batch queries, and keep it from returning with profiling tools.
-
Maxim Mironjuk
-
March 06, 2025
Once a Magento store works with microservices, external APIs, and asynchronous queues, classic logging loses sight of every request the moment it crosses a system boundary. Distributed tracing with OpenTelemetry connects every sub step into one continuous chain and shows exactly where latency comes from.
-
Maxim Mironjuk
-
March 04, 2025
Loading the entire Tailwind CSS file as a render blocking resource wastes valuable milliseconds before the first visible pixel. This article shows how extraction tools automatically capture the rule set a page actually needs, how inlined critical CSS and deliberately deferred loading of the rest work together, and when the effort truly pays off for a Magento or Hyva store.
-
Maxim Mironjuk
-
March 03, 2025
Images account for more than half of the page weight in most Magento stores and directly determine load time, rankings in Google Images, and conversion rate. This article shows how modern formats like WebP and AVIF, responsive srcset delivery, targeted lazy loading, CDN strategy, and clean alt text work together to optimize images both technically and for search engines.
-
Maxim Mironjuk
-
March 01, 2025
Hand maintained critical CSS goes stale the moment any layout changes, becoming a silent source of frontend bugs. Whoever integrates critical CSS extraction into the build pipeline gets automatically current, correct CSS for the visible area with every deployment, with no developer intervention required.
-
Maxim Mironjuk
-
March 01, 2025
A monitoring alert reports a Load Average of 12 on a server with four cores, yet CPU utilization barely reaches 20 percent. Anyone who reflexively buys more cores here often fixes the wrong problem. This workflow shows how to trace Load Average layer by layer back to its actual cause using uptime, vmstat, pidstat and iostat.
-
Maxim Mironjuk
-
February 28, 2025
In JavaScript, the original error gets lost on re-throw: an Error is replaced by another one, and the context disappears. The error.cause feature from ES2022 solves exactly this problem. It allows structured error chains where each layer keeps its own context while the root error is passed through.
-
Maxim Mironjuk
-
February 23, 2025
Xdebug can do far more than pause execution on a line. With the modes trace, profile, coverage and gcstats, Xdebug opens an analysis window into the real runtime state of a PHP request: call hierarchies with timestamps, cachegrind profiles for self time and inclusive time, a coverage API for custom analysis tools, and garbage collection statistics that normally stay completely hidden.
-