Seite 118 - Mironsoft Blog
-
Maxim Mironjuk
-
November 27, 2025
Swoole Coroutines erlauben es, in PHP tausende gleichzeitige Aufgaben effizient zu bearbeiten, ohne Threads oder zusätzliche Prozesse zu starten. Wer versteht, wie der Coroutine-Scheduler kooperativ arbeitet und wie Channels und WaitGroup Ergebnisse synchronisieren, kann mit Swoole Coroutines echte Parallelität in PHP nutzen, ohne die klassischen Fallstricke von Threading zu erben.
-
Maxim Mironjuk
-
November 27, 2025
Ein durchgestrichener Alt-Preis neben einem hervorgehobenen neuen Preis ist eines der stärksten visuellen Signale im E-Commerce, für Screenreader-Nutzer bleibt reines CSS-Strikethrough per text-decoration jedoch vollständig unsichtbar. Wer stattdessen die semantischen Elemente del und ins korrekt einsetzt, Rabatt-Badges mit einer Textalternative versieht und Preisspannen bei Produktvarianten klar formuliert, macht aus einer rein optischen Preisauszeichnung eine Information, die jeder Nutzer verlässlich abrufen kann.
-
Maxim Mironjuk
-
November 27, 2025
Die meisten PHP-Entwickler kennen ob_start nur als Notlösung gegen die Fehlermeldung 'headers already sent', dabei ist der Ausgabepuffer ein vollwertiger Mechanismus mit eigenem Stack, eigenen Callback-Phasen und eigenen Fallstricken. Wer versteht, wie PHP intern zwischen Skript-Output und tatsächlicher SAPI-Ausgabe eine Pufferschicht einzieht, kann Template-Engines schreiben, Kompression sauber einbinden und vermeidet die klassischen Speicherlecks in langlaufenden CLI-Workern.
-
Maxim Mironjuk
-
November 27, 2025
Ein Fortschrittsbalken macht lange Batch-Skripte sichtbar statt gefühlt eingefroren. Dieser Artikel zeigt, wie ein Fortschrittsbalken mit reinem Bash entsteht, von der einfachen Prozentanzeige über Carriage Return und ANSI-Farben bis zur dynamischen Terminalbreite und ETA-Schätzung, ganz ohne Zusatzpaket.
-
Maxim Mironjuk
-
November 27, 2025
GraphQL-Queries ohne Schema-Autovervollständigung zu schreiben bedeutet, Feldnamen im Kopf zu behalten und Fehler erst zur Laufzeit zu sehen. PhpStorm mit dem GraphQL-Plugin validiert Queries statisch gegen das Schema, vervollständigt Felder und Argumente und ermöglicht HTTP-Requests direkt aus der IDE — ohne Postman oder das Browser-Devtool.
-
Maxim Mironjuk
-
November 26, 2025
Eine Drag-and-Drop-Zone wirkt aus Nutzersicht simpel, verlangt technisch aber ein präzises Zusammenspiel aus vier HTML5-Drag-Events, dem konsequenten Verhindern des Browser-Standardverhaltens und einer sauberen Unterscheidung zwischen gültigen und ungültigen Dateitypen. Dieser Artikel zeigt, wie ein Alpine-State das visuelle Hover-Feedback steuert, warum ein Zähler-Trick gegen das lästige Flackern bei verschachtelten Kindelementen hilft und wie Nutzer sofort erkennen, ob die abgelegte Datei überhaupt akzeptiert wird.
-
Maxim Mironjuk
-
November 26, 2025
Ein falsch gesetztes module-Feld in tsconfig.json oder eine unvollständige exports-Map in package.json führt bei TypeScript-Paketen regelmäßig zu ERR_REQUIRE_ESM- oder ERR_UNKNOWN_FILE_EXTENSION-Fehlern, die erst beim Konsumenten sichtbar werden. Wer die Unterschiede zwischen ESM und CommonJS beim Kompilieren versteht, vermeidet den Dual-Package-Hazard und liefert Pakete, die in beiden Welten zuverlässig funktionieren.
-
Maxim Mironjuk
-
November 26, 2025
Ein CMS-Block in Magento speichert nur den aktuellen Stand, jede Änderung überschreibt die vorherige Fassung ohne Historie und ohne Rückweg. Mit einer eigenen CMS-Block-Versionierung entsteht eine nachvollziehbare Änderungshistorie, ein Diff zwischen Fassungen und ein sicheres Rollback, ganz ohne Enterprise-Staging.
-
Maxim Mironjuk
-
November 26, 2025
Intermittierende GraphQL-Fehler sind schwer zu reproduzieren, weil der Kontext fehlt. Strukturiertes Logging, Request-Tracing und Correlation IDs machen jeden Fehler nachvollziehbar – auch Tage nach dem Auftreten, auch über mehrere Resolver-Ketten hinweg.
-
Maxim Mironjuk
-
November 26, 2025
Die Indexer-Tabellen sind das Rückgrat der Magento-Performance auf Kategorie- und Suchseiten, weil sie EAV-Joins durch vorberechnete, flache Strukturen ersetzen. Wer die Struktur von catalog_category_product_index und catalog_product_index_price kennt und die Modi Update on Save und Update on Schedule richtig einordnet, kann Reindex-Läufe gezielt tunen statt sie als Blackbox hinzunehmen.
-