Page 109 - Mironsoft Blog
-
Maxim Mironjuk
-
December 12, 2025
A correctly configured firewall is the first line of defense for any server on the internet. This article shows in practice how iptables works as the kernel packet filter, how ufw sits on top as a simple frontend, which baseline rules a production web server actually needs for SSH, HTTP, and HTTPS, and how to reliably verify that these rules stay active and survive every reboot intact.
-
Maxim Mironjuk
-
December 12, 2025
GitLab Pages turns static documentation, whether generated from PHPDoc, MkDocs, or another generator, into a fixed part of the CI pipeline and republishes it automatically on every merge, without anyone having to upload files by hand.
-
Maxim Mironjuk
-
December 12, 2025
Newsletter traffic and social media reach appear in no SEO ranking factor model, yet they measurably influence search visibility through detours: rising brand searches, growing direct traffic, and more frequent organic citations from readers who first encountered a piece of content through the newsletter. This SEO halo effect is real, but notoriously hard to attribute directly. This article shows the mechanism, a practical cross-promotion setup, and methods to demonstrate the effect cleanly despite the missing direct attribution.
-
Maxim Mironjuk
-
December 12, 2025
Apollo Client automatically normalizes GraphQL responses into a flat object graph, but without clean type policies and thoughtful cache updates, stale views appear quickly. This article shows how InMemoryCache really works, how custom cache keys are defined with keyFields, and how mutations, pagination and debugging play together in practice.
-
Maxim Mironjuk
-
December 12, 2025
llms.txt is a text file discussed since September 2024 that lets a website curate and summarize its most important content in a format that is easy for language models to process. Unlike robots.txt, it does not govern access but provides content orientation, which represents an entirely new kind of technical file for GEO teams. This article covers its structure, how it differs from robots.txt and sitemap.xml, technical implementation in Magento, and an honest assessment of its current, inconsistent adoption status.
-
Maxim Mironjuk
-
December 12, 2025
An API token stored in plaintext in the database is a ticking time bomb. This guide shows the complete pattern for API token authentication in Symfony, from secure generation through hashed storage to rotation, scopes and a working revocation mechanism.
-
Maxim Mironjuk
-
December 12, 2025
A single GraphQL mutation looks atomic from the outside, but often hides multiple write steps internally, payment capture, inventory reservation, shipment order. Transactional mutations in GraphQL must secure exactly this multi-step nature, using unit of work, idempotency keys and the saga pattern for distributed consistency.
-
Maxim Mironjuk
-
December 12, 2025
Import Attributes let you import JSON files directly as an ES module, with an explicit type hint that became mandatory for security reasons. In many cases it replaces fetch() plus JSON.parse() with a single line.
-
Maxim Mironjuk
-
December 12, 2025
A failed CI/CD run with a thousand lines of log often costs developers more time than the actual bugfix. Claude reads through build output systematically, separates real errors from noise, and quickly narrows down whether a failure stems from code, pipeline configuration, or infrastructure.
-
Maxim Mironjuk
-
December 11, 2025
Maintaining a separate hand-written interface for every variant of a TypeScript type eventually causes drift between the original and its copies. Mapped types systematically transform existing types with the K in keyof T syntax, apply and strip readonly and optional modifiers on demand, and rename keys with as, all without duplicating a single field.
-