Page 18 - Monthly Archives: July 2025
-
Maxim Mironjuk
-
July 11, 2025
A phone layout that is simply scaled up on an iPad wastes screen space, and it looks broken on any foldable. With useWindowDimensions, proper safe area handling and master-detail patterns, you can build responsive layouts that work equally well on phone, tablet and unfolded foldable screens.
-
Maxim Mironjuk
-
July 11, 2025
A single user or service consuming storage without limits can bring down an entire server. Filesystem quotas limit storage and file count per user or group, with soft limits as an early warning and hard limits as a hard stop.
-
Maxim Mironjuk
-
July 11, 2025
MySQL and MariaDB are often treated as interchangeable because MariaDB started as a fork of MySQL. For years now, window functions, the JSON implementation, replication mechanisms and optimizer behavior have been visibly drifting apart, and anyone who makes the wrong assumptions during deployment ends up facing incompatible SQL syntax or unexpected replication behavior in production.
-
Maxim Mironjuk
-
July 11, 2025
A PhpStorm that struggles through hundreds of modules with default configuration is not a productivity tool. Indexing excludes, heap configuration, sensible scopes, and inspection profiles tuned to the project type make the difference between an IDE that helps and one that slows you down.
-
Maxim Mironjuk
-
July 10, 2025
Magento Open Source ships without a native RMA module, that only exists in Adobe Commerce. Anyone who still wants clean returns management builds a custom RMA module with declarative schema, Service Contracts, a real state machine and automatic creditmemo creation, instead of improvising returns management with custom attributes and emails.
-
Maxim Mironjuk
-
July 10, 2025
Feature flags in React apps decouple the question of when code gets deployed from the question of when a feature actually becomes visible. Instead of risky big bang releases, new functionality can be rolled out step by step, to specific user groups, or switched off instantly with a kill switch, all without a new build.
-
Maxim Mironjuk
-
July 10, 2025
A test that checks whether a message landed on a bus says nothing about whether the associated handler does the right thing. With InMemoryTransport and TraceableMessageBus, Symfony Messenger handlers can be tested synchronously, deterministically, and without RabbitMQ or Redis in the pipeline.
-
Maxim Mironjuk
-
July 10, 2025
A CLI tool that feels intuitive almost always follows the same conventions established over decades that experienced users unconsciously expect: consistent flag names, predictable exit codes, helpful error messages instead of cryptic stack traces. Claude works well for systematically thinking through exactly these conventions before the first line of code exists, instead of bolting them on after user complaints arrive. This article shows how to deliberately think through command structure, error handling, and distribution strategy for a custom CLI tool with Claude.
-
Maxim Mironjuk
-
July 10, 2025
Introspection is one of the most elegant properties of GraphQL, letting you query the entire schema through a request. That exact feature is what makes it risky in production: anyone who knows the API can read internal field names, mutations with access to sensitive data, and even deprecation comments, without guessing a single endpoint. Anyone who does not deliberately secure introspection hands attackers the full map of their own API.
-
Maxim Mironjuk
-
July 09, 2025
PHP security is more than a single function or a framework feature, it encompasses input validation, output encoding, session hardening, secrets management, CSRF protection, security headers, clean error handling and dependency security as one coherent system. This article gives the complete overview of the security best practices that every production PHP application needs, regardless of the framework in use.
-