Seite 56 - Mironsoft Blog
-
Maxim Mironjuk
-
Februar 23, 2026
Automatisierte Scanner wie axe-core finden nur einen Bruchteil der echten Barrieren in einer Anwendung. Dieser Leitfaden zeigt, wie ein strukturierter manueller Audit mit Keyboard-Pass, Screenreader-Pass, Zoom- und Kontrast-Pass sowie Reduced-Motion-Pass systematisch abläuft, wie Befunde nach echtem Nutzerimpact statt reiner Regelverstoßzahl priorisiert werden und wie sich automatisierte und manuelle Ergebnisse zu einem Report kombinieren lassen, den Entwickler direkt umsetzen können.
-
Maxim Mironjuk
-
Februar 23, 2026
Eine App auf dem Fernseher kennt keine Berührung, keine Wischgeste und keinen Tap, sondern ausschließlich eine Fernbedienung mit Richtungstasten und einer Bestätigungstaste, die einen sichtbaren Fokus-Ring von einem Element zum nächsten bewegt. Wer eine bestehende React-Native-App unverändert auf Android TV oder tvOS portiert, stößt schnell auf Buttons, die sich nicht anwählen lassen, und Listen, deren Fokus beim Scrollen verloren geht. Dieser Artikel zeigt, wie Fokus-Management als zentrales Konzept funktioniert, wie bestehende Touch-Komponenten dafür angepasst werden, und wo sich Android TV und tvOS in ihrer Zielplattform grundlegend unterscheiden.
-
Maxim Mironjuk
-
Februar 23, 2026
Die neue CSS-Eigenschaft field-sizing macht die bewährten JavaScript-Tricks für automatisch wachsende Textareas überflüssig. Mit field-sizing: content passt sich ein Formularfeld ab der ersten Eingabe an seinen Inhalt an — nativ im Browser, ohne Event-Listener und ohne Layout-Hacks.
-
Maxim Mironjuk
-
Februar 22, 2026
PARTITION BY ist der Baustein in der OVER-Klausel, der aus einer globalen Berechnung eine gruppierte macht, ohne dass dabei Zeilen verschwinden. Dieser Artikel zeigt anhand echter Reporting-Beispiele, wie Ein-Spalten- und Mehr-Spalten-Partitionierung funktionieren, wie PARTITION BY mit ORDER BY zusammenspielt und wo typische Fehler bei der Anwendung lauern.
-
Maxim Mironjuk
-
Februar 22, 2026
Mehrere Plugins auf derselben Methode haengen still von der sortOrder in di.xml ab. Ein Test, der die tatsaechliche Ausfuehrungsreihenfolge dokumentiert, verhindert, dass ein neues Plugin unbemerkt eine bestehende Reihenfolge und damit das Verhalten kippt.
-
Maxim Mironjuk
-
Februar 22, 2026
Die meisten Testverfahren prüfen, ob ein System unter erwarteten, sauberen Bedingungen korrekt funktioniert, während Chaos Engineering den umgekehrten Weg geht und gezielt, kontrolliert Fehler in ein laufendes System einbringt, etwa den Ausfall eines Services, erhöhte Netzwerklatenz oder den Verlust einer Datenbankverbindung, um zu beobachten, wie widerstandsfähig das Gesamtsystem tatsächlich auf diese Störung reagiert. Diese Disziplin geht davon aus, dass komplexe, verteilte Systeme früher oder später ohnehin ausfallen werden, und macht daraus die bewusste Entscheidung, diesen Ausfall lieber kontrolliert und zu einem selbst gewählten Zeitpunkt zu erleben als unkontrolliert mitten in der Nacht wegen eines echten Vorfalls.
-
Maxim Mironjuk
-
Februar 22, 2026
Wer ein eigenes Hyvä-Theme von Grund auf aufsetzt, statt das Hyvä Default Theme als Parent zu erben, gewinnt volle Kontrolle über jede Zeile Markup und Tailwind-Klasse, verzichtet aber auf Fallback-Templates, die sonst automatisch einspringen.
-
Maxim Mironjuk
-
Februar 22, 2026
void bedeutet, eine Funktion liefert keinen sinnvollen Rückgabewert, kehrt aber trotzdem normal zurück. never bedeutet etwas fundamental anderes: Die Funktion kehrt überhaupt nicht zurück, sie wirft immer eine Exception oder beendet das Skript. Seit PHP 8.1 lässt sich dieser Unterschied direkt in der Signatur ausdrücken.
-
Maxim Mironjuk
-
Februar 22, 2026
Ein Datenbank-Passwort in einer .env-Datei oder einer Pipeline-Variable ist ein Secret, das irgendwann in einem Log, einem Backup oder einer History-Datei landet. Vault-Secrets, die Bash-Skripte zur Laufzeit gezielt abrufen, prüfen und danach nirgendwo persistieren, schließen genau diese Lücke, inklusive dynamischer Datenbank-Credentials und automatischer Rotation.
-
Maxim Mironjuk
-
Februar 22, 2026
Manche Tests lassen sich nur sauber schreiben, wenn PHPUnit sie in einem komplett neuen PHP-Prozess ausfuehrt: etwa wenn Legacy-Code Konstanten definiert, die nicht neu gesetzt werden koennen, oder wenn statische Zustaende so tief verwoben sind, dass ein Reset in tearDown nicht ausreicht. @runInSeparateProcess loest dieses Problem zuverlaessig, aber nicht kostenlos: Jeder isolierte Test startet einen eigenen PHP-Interpreter, was die Laufzeit einer Suite spuerbar in die Hoehe treiben kann, wenn man es zu grosszuegig einsetzt.
-