Seite 8 - Monthly Archives: March 2025
-
Maxim Mironjuk
-
März 21, 2025
Eine .gitlab-ci.yml, die nur drei Jobs hat und keine Stages definiert, ist kein Deployment-Prozess – sie ist ein Skript, das irgendwann bricht. Wer Magento sauber deployt, braucht eine vollständige Pipeline-Struktur: reproduzierbare Build-Artefakte, definierte Freigaben, serverseitige Release-Verzeichnisse, kontrollierte Magento-Schritte und einen fachlich abgeschlossenen Verify-Job.
-
Maxim Mironjuk
-
März 20, 2025
Wer für jede Eingabevariante eine eigene Testmethode schreibt, vervielfacht Wartungsaufwand statt Testabdeckung. Der Data Provider von PHPUnit trennt Testlogik von Testdaten und macht aus zehn fast identischen Methoden eine einzige, klar lesbare Testmethode mit einem Dutzend Datensätzen.
-
Maxim Mironjuk
-
März 20, 2025
PHP-Entwickler kennen die meisten Konzepte von TypeScript bereits, nur unter anderen Namen und mit anderen Garantien. Dieser Artikel ordnet Union Types, Interfaces, Immutability, Enums und Generics aus der PHP-Welt ihren TypeScript-Entsprechungen zu, zeigt konkret, wo nominale und strukturelle Typisierung auseinanderlaufen, und vergleicht ein typisches Value Object Zeile für Zeile in beiden Sprachen.
-
Maxim Mironjuk
-
März 20, 2025
Sobald eine Symfony-Anwendung mehr als eine Sprache bedient, stellt sich die Frage, wie sich das in der URL-Struktur widerspiegeln soll. Der eingebaute {_locale}-Routing-Parameter deckt den Grundfall ab, reicht aber nicht aus, sobald auch die Pfade selbst übersetzt werden sollen, etwa /de/produkte gegenüber /en/products. Wer diese Struktur von Anfang an sauber plant, spart sich später aufwendige Refactorings und vermeidet SEO-Probleme durch fehlende oder falsche Hreflang-Angaben.
-
Maxim Mironjuk
-
März 20, 2025
Jede Animation durchläuft im Browser die Rendering-Pipeline aus Layout, Paint und Composite, und wer width, top oder margin animiert, zwingt den Browser bei jedem einzelnen Frame zu teuren Neuberechnungen. Dieser Artikel zeigt, warum transform und opacity fast kostenlos auf dem Compositor-Thread laufen, wie will-change korrekt eingesetzt wird und wie sich bestehende Animationen gezielt refactoren lassen.
-
Maxim Mironjuk
-
März 20, 2025
Ein Skript mit #!/bin/sh laeuft auf dem eigenen Rechner problemlos und scheitert auf dem Debian Server mit einer kryptischen Fehlermeldung. Der Grund ist der Unterschied zwischen Dash und Bash: zwei Shells mit gemeinsamer POSIX Basis, aber sehr unterschiedlichem Funktionsumfang.
-
Maxim Mironjuk
-
März 20, 2025
Wer free -h zum ersten Mal sieht, hält den Arbeitsspeicher oft fälschlich für knapp, weil buff/cache als belegt erscheint. Dieser Artikel erklärt, wie der Page Cache brachliegenden RAM für Performance nutzt, warum Swap ein Overflow-Mechanismus statt primärer Speicher ist, und wie sich der tatsächliche Speicherzustand über proc meminfo präzise beurteilen lässt.
-
Maxim Mironjuk
-
März 20, 2025
Self-Healing-Tests versprechen, dass ein durch eine harmlose Layoutänderung gebrochener Selector automatisch erkannt und durch eine passende Alternative ersetzt wird, ohne dass ein Mensch den Testcode manüll anpassen muss. Dieses Versprechen klingt verlockend angesichts der bekannten Wartungslast brüchiger E2E-Tests, verdeckt aber ein grundlegendes Missverständnis darüber, was ein Selector eigentlich tut und wo automatische Heuristiken an ihre fachlichen Grenzen stoßen, sobald sich nicht nur die Struktur, sondern die tatsächliche Bedeutung eines Elements verändert.
-
Maxim Mironjuk
-
März 20, 2025
Claude Code laeuft grundsaetzlich im Terminal, doch die offiziellen Erweiterungen fuer VS Code und JetBrains-IDEs wie PhpStorm holen Diff-Ansichten, Kontextmenues und Debugger-Integration direkt in den gewohnten Editor. Wer Claude Code nur ueber die reine Kommandozeile kennt, verschenkt damit spuerbaren Komfort im taeglichen Entwickleralltag.
-
Maxim Mironjuk
-
März 20, 2025
Progressive Web Apps bringen Service Worker, Offline Fallbacks und Install Prompts mit, die klassische E2E Tests nicht abdecken. Wer Cypress oder Playwright ohne eigene Strategie für Netzwerksimulation, Cache Invalidierung und Manifest Validierung einsetzt, übersieht genau die Fehler, die Kunden offline oder nach einem Deploy mit veralteten Preisen konfrontieren. Dieser Artikel zeigt, wie PWA Testing in der Praxis zuverlässig funktioniert.
-