Page 15 - Monthly Archives: December 2025
-
Maxim Mironjuk
-
December 12, 2025
Reproducible Docker builds produce the same image digest from identical source code and identical configuration on every build, no matter when or on which machine the build ran. SOURCE_DATE_EPOCH eliminates the biggest source of noise behind non-determinism, the current timestamp embedded into every layer.
-
Maxim Mironjuk
-
December 12, 2025
Math.random() is unsuitable for IDs, since it relies on a predictable pseudo-random generator. crypto.randomUUID() delivers genuine UUID v4 values from a cryptographically secure random generator, with no external dependencies, equally in the browser and in Node.js.
-
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.
-