Page 20 - Monthly Archives: November 2025
-
Maxim Mironjuk
-
November 04, 2025
Constructor property promotion collapses the classic threefold repetition of property declaration, constructor parameter, and body assignment into a single line per field, without giving up type safety, visibility, or readonly guarantees, and makes value objects and DTOs in particular noticeably more compact and maintainable.
-
Maxim Mironjuk
-
November 04, 2025
The next/image component automatically generates responsive image variants, modern formats, and lazy loading, but it does not solve every performance problem on its own. Configuring sizes correctly, setting priority deliberately on the Largest Contentful Paint element, and maintaining remote patterns cleanly is what actually unlocks the full potential of Next.js image optimization.
-
Maxim Mironjuk
-
November 04, 2025
As soon as multiple processes access the same resource, a local mutex is no longer enough. Redis offers SET NX PX as a simple locking primitive and the Redlock algorithm as an approach for multiple independent instances, but Martin Kleppmann's well known critique clearly shows the limits of this technique and when simpler locks are actually sufficient.
-
Maxim Mironjuk
-
November 04, 2025
Session storage looks trivial until an application scales across multiple servers and the first login vanishes right after a deploy. Redis as a centralized session store solves the scaling problem, but brings its own architecture decisions along with it, from serialization format through TTL strategy to the question of whether sticky sessions are even needed anymore.
-
Maxim Mironjuk
-
November 03, 2025
Wrapping everything in useMemo and useCallback does not make React apps faster, it makes them more complicated. Whoever measures first finds the real bottlenecks: unnecessary re-renders, expensive calculations in the wrong place, and layout thrashing. This article shows the correct workflow with the React Profiler, Chrome DevTools and solid metrics.
-
Maxim Mironjuk
-
November 03, 2025
Approximate aggregation replaces exact calculations like COUNT DISTINCT or percentiles with probabilistic algorithms that deliver a result on billions of rows in a fraction of a second, with a controlled error usually under one percent. This article explains how HyperLogLog and t-digest work, when approximate aggregation pays off, and when exact calculation remains the right choice.
-
Maxim Mironjuk
-
November 03, 2025
CSS Custom Properties are powerful but untyped: the browser treats them as plain strings. CSS @property changes that fundamentally. With a type declaration, inheritance control and an initial value, Custom Properties become full, animatable CSS values. Gradients, colors and numbers can then be interpolated and hooked into transitions.
-
Maxim Mironjuk
-
November 03, 2025
NestJS combines TypeScript decorators, dependency injection and a modular architecture into a backend framework that enforces structure instead of leaving it to chance. Learning TypeScript with NestJS means understanding modules, controllers, providers, DTOs and guards as one connected system, not a loose collection of functions.
-
Maxim Mironjuk
-
November 03, 2025
Anyone planning a new Magento storefront eventually faces the same fundamental question: Hyva or PWA Studio. One approach renders PHP directly inside the Magento monolith, the other fully decouples frontend and backend and communicates exclusively through GraphQL. This article compares architecture, hosting effort, performance, team skillset and extensibility concretely, and shows when each approach actually makes sense.
-
Maxim Mironjuk
-
November 03, 2025
The virtual /proc filesystem exports kernel internals as seemingly ordinary files. Reading /proc/[pid]/status, /proc/meminfo, and /proc/loadavg directly with built-in Bash tools produces lightweight diagnostic scripts that need no external process call and work fine in minimal container images without extra tooling.
-