Seite 54 - Mironsoft Blog
-
Maxim Mironjuk
-
Februar 25, 2026
Accordion und Tabs zählen zu den am häufigsten falsch umgesetzten Interface-Mustern im Web, weil sie visuell einfach wirken, aber unter der Oberfläche eine präzise definierte Tastatur-Interaktion und eine eigene ARIA-Rollenstruktur erfordern. Ein Accordion, das nur per Klick auf ein div reagiert, oder Tabs, die keine Pfeiltasten-Navigation kennen, funktionieren für Maus-Nutzer scheinbar einwandfrei und bleiben für Tastatur- und Screenreader-Nutzer trotzdem unbenutzbar oder zumindest missverständlich.
-
Maxim Mironjuk
-
Februar 25, 2026
Cypress-Tests, die lokal zuverlässig grün sind, scheitern in der CI oft unerwartet an Ressourcenlimits, abweichenden Viewports und Timing-Unterschieden auf geteilten Runnern. Dieser Artikel zeigt, wie ihr Cypress in GitLab CI und GitHub Actions headless ausführt, Video- und Screenshot-Artefakte bei Fehlschlägen sichert, node_modules und die Cypress-Binary cacht und Testläufe über mehrere Jobs hinweg parallelisiert.
-
Maxim Mironjuk
-
Februar 25, 2026
Eine einzelne GraphQL-Mutation wirkt nach außen atomar, verbirgt innen aber oft mehrere Schreibschritte, Zahlungsbuchung, Lagerreservierung, Versandauftrag. Transaktionale Mutations in GraphQL müssen genau diese Mehrstufigkeit absichern, mit Unit of Work, Idempotency Keys und dem Saga-Pattern für verteilte Konsistenz.
-
Maxim Mironjuk
-
Februar 25, 2026
Eine Subshell ist bequem, aber nicht kostenlos: Jede Klammer, jede Pipe und jede Command Substitution erzeugt einen neuen Kindprozess mit eigener Kopie des Environments. Sourcing führt dieselben Kommandos im aktuellen Prozess aus, spart den fork und teilt Variablen direkt, hat dafür aber ganz andere Nebenwirkungen auf den Skript-Zustand.
-
Maxim Mironjuk
-
Februar 25, 2026
Ein sauberes Magento 2 Modul besteht nicht nur aus registration.php und module.xml. Für produktiven Code gehören Konfiguration, ACL, Admin-Menüpunkt, Layout XML, ViewModel und klare Dependency Injection dazu.
-
Maxim Mironjuk
-
Februar 25, 2026
Attribut-Selektoren werden meist auf [class] und [id] reduziert, dabei stecken in der Spezifikation Präfix-, Suffix- und Substring-Matching, ein case-insensitive Flag und die Möglichkeit, data-Attribute als vollwertige Styling-Schnittstelle zu nutzen. Diese Rezeptsammlung zeigt, wie viel deklarative Logik allein im Selektor steckt.
-
Maxim Mironjuk
-
Februar 24, 2026
Die Werkseinstellungen von OPcache sind für einen Entwickler-Laptop gedacht, nicht für einen PHP-FPM-Pool mit hoher Last. Wer memory_consumption, max_accelerated_files und validate_timestamps nie angepasst hat, verschenkt spürbare Antwortzeit und riskiert Wasted Memory, Hash-Kollisionen und unnötige Dateisystem-Stats bei jedem Request. Dieser Leitfaden zeigt, welche OPcache-Tuning-Parameter tatsächlich messbare Wirkung haben, wie man sie korrekt dimensioniert und wie ein sicherer Zero-Downtime-Deployment-Workflow damit aussieht.
-
Maxim Mironjuk
-
Februar 24, 2026
Wer Rankings nur gelegentlich manuell in der Search Console kontrolliert, bemerkt einen echten Einbruch oft erst Tage oder Wochen zu spät, wenn der Traffic-Verlust bereits messbar ist. Ein funktionierendes Monitoring-System erkennt Abweichungen automatisiert, unterscheidet normale SERP-Schwankungen von echten Problemen und stellt sicher, dass die richtige Person im Team rechtzeitig informiert wird. Dieser Artikel zeigt, wie man ein solches System von Grund auf aufbaut.
-
Maxim Mironjuk
-
Februar 24, 2026
Eine Migration, die spontan eine Spalte umbenennt oder eine Tabelle sperrt, kann eine laufende Symfony-Anwendung mitten in der Rush Hour lahmlegen. Zero Downtime Datenbankmigrationen mit Doctrine folgen stattdessen dem Expand-Contract-Muster: Schema und Anwendung wachsen in kleinen, immer rückwärtskompatiblen Schritten. Dieser Artikel zeigt jeden Schritt konkret, von der ersten neuen Spalte bis zum sicheren Entfernen der alten.
-
Maxim Mironjuk
-
Februar 24, 2026
Wer den has-Selektor nur als eltern-selektierendes Werkzeug kennt, nutzt einen Bruchteil seines Potenzials. Diese Sammlung zeigt konkrete Rezepte für Formularvalidierung, leere Zustände, Quantity Queries und Theme-Umschaltung, die zuvor zwingend JavaScript brauchten und jetzt reines CSS sind.
-