Seite 3 - Monthly Archives: March 2025
-
Maxim Mironjuk
-
März 28, 2025
Sprachdateien laufen in jedem wachsenden Projekt irgendwann auseinander: Ein neuer Text wird in der Ausgangssprache ergänzt, die Übersetzung in drei weiteren Sprachdateien wird vergessen, und niemand bemerkt es, bis ein Kunde einen englischen Platzhaltertext in der deutschen Oberfläche meldet. Dieser Artikel zeigt, wie Claude beim systematischen Finden fehlender Schlüssel, bei kontextgerechten statt wörtlichen Übersetzungen und bei der korrekten Behandlung von Pluralisierungsregeln unterstützt.
-
Maxim Mironjuk
-
März 28, 2025
Ein Chat-Widget oder eine eingebettete Karte will fast immer eigene Domains kontaktieren, eigene Inline-Skripte ausführen und eigene Cookies setzen, genau das, was eine strikte Content Security Policy standardmaessig verhindert. Wer Drittanbieter-Skripte richtig in csp_whitelist.xml eintraegt und mit einem Alpine-Wrapper kapselt, bekommt beides: funktionierende Widgets und eine intakte CSP.
-
Maxim Mironjuk
-
März 28, 2025
Ein einfaches GROUP BY über eine Datumsspalte reicht bei Zeitreihen-Aggregation selten aus, denn Tage ohne Ereignisse tauchen im Ergebnis einfach nicht auf. Dieser Artikel zeigt, wie Zeitfenster mit DATE_TRUNC gebildet werden, wie Kalendertabellen und generate_series fehlende Perioden zuverlässig auffüllen und wie sich Vergleichszeiträume wie Vorjahr oder Vorwoche direkt in SQL berechnen lassen.
-
Maxim Mironjuk
-
März 28, 2025
Redis eignet sich mit dem LPUSH/BRPOP-Muster gut als einfache Task-Queue, und Streams liefern mit Consumer Groups sogar Zustellgarantien und Nachrichten-Historie. Doch beide Ansaetze stossen an Grenzen bei komplexem Routing, garantierter Reihenfolge ueber viele Consumer hinweg oder sehr hohem Nachrichtendurchsatz, wo dedizierte Systeme wie RabbitMQ oder Kafka die robustere Wahl sind.
-
Maxim Mironjuk
-
März 28, 2025
Eigene PHP-Attribute ersetzen Docblock-Annotationen durch eine vom Compiler geparste, typsichere Syntax: Eine mit #[Attribute] markierte Klasse definiert die Struktur, Attribute::TARGET-Flags schränken das erlaubte Ziel ein, und eine ReflectionClass liest die Daten zur Laufzeit aus, ganz ohne fragilen String-Parser für Kommentare.
-
Maxim Mironjuk
-
März 28, 2025
Allgemeine Elasticsearch-Sizing-Faustregeln gehen selten von einem Magento-Katalog mit Dutzenden Attributen und mehreren Store Views pro Sprache aus, wodurch die Dokumentanzahl und die Indexgröße schneller wachsen als bei einem einfachen Content-Index. Wer Kapazität für einen großen Magento-Katalog plant, braucht deshalb Kennzahlen, die diese Besonderheiten direkt berücksichtigen.
-
Maxim Mironjuk
-
März 28, 2025
Laufende Cron-Jobs und Queue Consumer während eines Deployments sind eine unterschätzte Fehlerquelle. Ein Consumer, der im alten Release-Code läuft während der Symlink auf das neue Release wechselt, kann zu Datenkonsistenz-Problemen führen. Dieser Artikel erklärt, wie Cron und Consumer im GitLab-Deployment-Prozess zuverlässig kontrolliert werden.
-
Maxim Mironjuk
-
März 27, 2025
Wer bei einem Vorfall wahllos durch Logdateien scrollt, verliert wertvolle Zeit. journalctl bündelt alle systemd-Logs an einer Stelle und bietet präzise Filter nach Dienst, Zeitraum und Schweregrad. Dieser Artikel zeigt, wie ihr Filter kombiniert, das Journal persistent konfiguriert, Dienste im Störfall korreliert und Logs sauber für Kollegen exportiert.
-
Maxim Mironjuk
-
März 27, 2025
Der Permissions-Policy-Header gibt einer Webseite die Kontrolle darüber, welche mächtigen Browser-Schnittstellen wie Kamera, Mikrofon oder Standort überhaupt genutzt werden dürfen, sowohl für die eigene Seite als auch für eingebettete iframes. Wir zeigen Syntax, den Unterschied zum Vorgänger Feature-Policy und eine praxisnahe Konfiguration für einen typischen Magento-Shop.
-
Maxim Mironjuk
-
März 27, 2025
Die View Transitions API bringt das, was früher nur SPAs mit aufwendigen Frameworks erreichten, als native Browser-Funktion: nahtlose Animationen beim Seitenwechsel — mit view-transition-name für shared elements, CSS-Pseudoelementen für volle Stilkontrolle und Cross-Document-Unterstützung für Multi-Page-Apps.
-