Seite 11 - Monthly Archives: March 2026
-
Maxim Mironjuk
-
März 16, 2026
Ein Dependency Update Checker sammelt regelmäßig den Stand veralteter Pakete über mehrere Repositories hinweg und macht Sicherheitslücken sichtbar, bevor sie in einem Audit unangenehm auffallen. Dieser Artikel zeigt, wie ein solcher Dependency Update Checker composer outdated und npm outdated per jq auswertet, Versionssprünge klassifiziert und die Ergebnisse automatisch als Report verschickt.
-
Maxim Mironjuk
-
März 16, 2026
Ein Rollback, der erst im Störfall geschrieben wird, ist keiner. Wer das Rollback-Skript nicht vor dem ersten Deployment fertig hat, testet es zum ersten Mal unter Zeitdruck und Stress — genau dann, wenn alles schnell gehen muss.
-
Maxim Mironjuk
-
März 15, 2026
GraphQL kennt keinen eingebauten Datei-Upload, und Magentos /graphql-Endpunkt verarbeitet ausschließlich JSON-Bodies, ein direkter Multipart-Upload scheitert also schon am Controller. Dieser Artikel zeigt am Beispiel individualisierter Produkte einen praxistauglichen Zwei-Schritt-Fluss aus dediziertem Upload-Controller und referenzierender Mutation, inklusive Validierung, sicherer Speicherung und Anbindung an Quote und Order.
-
Maxim Mironjuk
-
März 15, 2026
Props-Drilling und globale Variablen sind Zeichen enger Kopplung. Custom Events bieten eine native DOM-Lösung: Komponenten senden Events, andere hören zu – ohne direkte Referenz aufeinander, ohne Framework, mit vollem TypeScript-Support.
-
Maxim Mironjuk
-
März 15, 2026
Vue liefert mit v-if, v-for und v-model bereits die wichtigsten eingebauten Direktiven, aber manche Anforderungen lassen sich damit nicht abdecken, weil sie direkten, wiederverwendbaren Zugriff auf das rohe DOM-Element brauchen. Ein Klick außerhalb eines Elements erkennen, ein Input automatisch fokussieren, oder ein Element per Tooltip-Bibliothek initialisieren, das sind klassische Fälle für eine eigene Custom Directive. Mit der app.directive() API lässt sich eine solche Direktive global registrieren und danach in jeder Komponente per v-Präfix wie eine eingebaute Direktive verwenden, inklusive eigenem Lifecycle und typisiertem binding-Objekt.
-
Maxim Mironjuk
-
März 15, 2026
Das Decorator Pattern löst ein Problem, das reine Vererbung nicht sauber lösen kann: mehrere unabhängige Zusatzverhalten, etwa Logging, Caching und Validierung, flexibel und in beliebiger Reihenfolge kombinieren, ohne für jede Kombination eine eigene Unterklasse zu bauen. Dieser Artikel zeigt, wie das Decorator Pattern in PHP Interface-Konformität wahrt und wann es dem Aufblähen von Vererbungshierarchien vorzuziehen ist.
-
Maxim Mironjuk
-
März 15, 2026
Signals sind ein Reaktivitäts-Muster, das in Vue, Solid, Preact und Angular unabhängig voneinander implementiert wurde, aber auf denselben wenigen Grundbausteinen beruht. Wer versteht, wie ein minimales Signals-System aus Getter, Setter und automatischem Dependency-Tracking aufgebaut ist, kann Reaktivität in jedem Vanilla-JavaScript-Projekt einsetzen, ganz ohne Framework-Abhängigkeit.
-
Maxim Mironjuk
-
März 15, 2026
Wenn der Linux-Kernel unter Speicherdruck gerät, entscheidet der OOM-Killer in Sekundenbruchteilen, welcher Prozess sterben muss, oft die Datenbank oder der PHP-FPM-Pool statt des eigentlichen Speicherfressers. Dieser Artikel erklärt die oom_score-Berechnung, zeigt wie man OOM-Kills in dmesg und journalctl aufspürt und wie man kritische Dienste durch oom_score_adj und cgroup-Limits gezielt schützt.
-
Maxim Mironjuk
-
März 15, 2026
MySQL Temp Tables sind mächtiger als die meisten Entwickler vermuten. Wann MySQL intern Disk-Tabellen erzeugt, wie tmp_table_size und max_heap_table_size zusammenspielen, was CTE-Materialisierung in MySQL 8 bedeutet — und wie explizite Temp Tables komplexe Reports dramatisch beschleunigen.
-
Maxim Mironjuk
-
März 14, 2026
White-Label-Produkte, Multi-Tenant-SaaS und Agenturen mit vielen Kunden stehen vor derselben Herausforderung: Wie bedient man mehrere Marken aus einem einzigen Codebase, ohne Klassennamen zu duplizieren und ohne den Build-Prozess zu verkomplizieren? Tailwind CSS Multi-Brand-Theming mit @theme und CSS Custom Properties ist die Antwort.
-