Page 14 - Monthly Archives: April 2026
-
Maxim Mironjuk
-
April 12, 2026
Filters, sorting, pagination and active tabs end up in useState in many React applications, even though they are really part of the address. Storing that state in the URL instead gives you deep linking, a working browser back button and shareable links for free, without an extra store.
-
Maxim Mironjuk
-
April 12, 2026
A full reindex run is far too slow and too coarse for a test. Extracting the actual indexer logic into a separate class and calling it directly with prepared input data turns testing into a matter of milliseconds instead of minutes.
-
Maxim Mironjuk
-
April 11, 2026
Magento's REST API is built on service contracts declared in webapi.xml, yet nothing in day-to-day work prevents an implementation from silently drifting away from the declared interface over time. Automated contract compliance tests close exactly that gap.
-
Maxim Mironjuk
-
April 11, 2026
A container without a real init process can accumulate zombie processes and mishandle signals, two problems that look harmless at first glance but can destabilize long running production systems over weeks. tini and dumb-init solve both problems with just a few kilobytes of extra code.
-
Maxim Mironjuk
-
April 11, 2026
pnpm workspaces organize multiple TypeScript packages in one repository without the dependency duplication of npm or the generous hoisting of Yarn Classic. Anyone setting up a new monorepo or migrating an existing one benefits from a stricter, more predictable dependency tree.
-
Maxim Mironjuk
-
April 11, 2026
A CLAUDE.md is the central context file that lets Claude Code know project conventions, tech stack, and commands before the first prompt is even written. Maintained well, it saves repeated explanations and prevents rule violations. Maintained poorly, it turns into a stale wall of text that nobody reads and that actively misleads Claude.
-
Maxim Mironjuk
-
April 11, 2026
Implementing logging, CORS headers or request IDs separately in every single Nuxt Server Route produces code duplication in ten places at once. Nuxt Server Middleware in server/middleware runs before every handler and solves exactly these cross cutting concerns centrally, without any route knowing about it.
-
Maxim Mironjuk
-
April 11, 2026
Streaming SSR splits a server response into several chunks instead of waiting for complete HTML before sending anything to the browser at all. React Suspense defines the boundaries where individual parts of a page are delivered later, while quickly available content becomes visible immediately.
-
Maxim Mironjuk
-
April 11, 2026
Props make components configurable. Slots make them extensible. Scoped slots give the consumer control over presentation while the component keeps the logic. Anyone who truly understands slots and scoped slots in Vue.js can build components that fit seamlessly into any context.
-
Maxim Mironjuk
-
April 10, 2026
A test case that fully and explicitly constructs a complex object with twenty fields, even though only a single one of these fields actually matters for the given test, buries the real testing intent behind a wall of irrelevant boilerplate data, making it hard for a later reader to tell which of the twenty values is actually decisive for the test outcome. The test data builder pattern solves this problem by providing sensible, realistic default values for all fields and making only the values actually relevant to a given test explicitly overridable.
-