Page 100 - Mironsoft Blog
-
Maxim Mironjuk
-
December 25, 2025
CPU usage and free memory alone say almost nothing about the actual health of a MySQL database. Only buffer pool hit ratio, connection saturation, replication lag and lock waits together show whether a system is running stable or is about to hit an incident that classic server monitoring never sees.
-
Maxim Mironjuk
-
December 25, 2025
Anyone who writes React props without clear types relies on convention instead of the compiler. TypeScript turns silent assumptions about props into explicit contracts: which values are required, which are optional, what shape children may take, and which extra HTML attributes a component should pass through. This article shows how to type React props from the first interface definition all the way to extended, reusable components.
-
Maxim Mironjuk
-
December 25, 2025
Manually maintained release notes almost always go stale faster than they get written, because nobody finds time to properly fill them in after a hectic deploy. With a Conventional Commits convention, clear merge request labels, and the GitLab Releases API, release notes can instead be generated automatically from exactly the information that already accrues with every merge request anyway. This article walks through the full path, from the commit convention to integration as the final step of the deploy pipeline.
-
Maxim Mironjuk
-
December 25, 2025
A type-ahead field that fires a new query at Elasticsearch on every keystroke can put a cluster under real load long before the actual result index is even large. search_as_you_type provides the data structure for performant prefix matching, but only the right combination of query design, shard distribution and frontend debouncing turns it into a search that stays stable under load.
-
Maxim Mironjuk
-
December 25, 2025
Scattering preload, prefetch, and preconnect across the head without a plan wastes exactly the bandwidth and priority class the truly critical resource needs. This article explains how the browser's preload scanner works, when each resource hint actually helps, and how to reliably detect, measure, and avoid overuse with Chrome DevTools.
-
Maxim Mironjuk
-
December 25, 2025
Calling a script POSIX compliant is quick to claim and rarely verified. This checklist provides concrete steps, tools and a test matrix to systematically secure an existing script against Dash, BusyBox ash and other lean shells.
-
Maxim Mironjuk
-
December 24, 2025
A single import from a poorly structured TypeScript library can pull several hundred kilobytes of unused code into the consumer bundle, despite modern bundlers. Tree shaking is not automatic bundler magic, it depends decisively on how the library itself was built, exported and declared in the sideEffects field.
-
Maxim Mironjuk
-
December 24, 2025
Magento databases rarely grow because of product data, they grow because of logs, abandoned carts, and URL rewrites that nobody actively deletes. Once you know the usual suspects, measure table sizes regularly, and establish a repeatable cleanup routine, you prevent backups, deployments, and reindex runs from suffering under database growth.
-
Maxim Mironjuk
-
December 24, 2025
A REST API that loads the same data from the database on every request and sends it back in full wastes bandwidth and server resources. ETag, Last-Modified and Cache-Control are the HTTP standard tools that prevent exactly that, with 304 Not Modified for unchanged resources and proxy caching for public data.
-
Maxim Mironjuk
-
December 24, 2025
Short-lived toast messages like "Added to cart" often vanish before a screen reader has even finished reading them, regularly violating WCAG 2.2.1's requirement for adjustable display duration.
-