Seite 18 - Monthly Archives: August 2025
-
Maxim Mironjuk
-
August 09, 2025
Moderne Magento-Shops mit Hyvä Theme und Alpine.js rendern große Teile ihrer Inhalte im Browser, doch Google crawlt, rendert und indexiert diese Inhalte in getrennten, zeitlich versetzten Phasen. Dieser Artikel erklärt, wie der Web Rendering Service arbeitet, welche Fehler client-seitig gerenderte Seiten unsichtbar machen und wie ihr mit der URL-Prüfung und sauberem Hydration-Timing dafür sorgt, dass Googlebot wirklich alles sieht.
-
Maxim Mironjuk
-
August 09, 2025
Wer TypeScript-Typen nur additiv mit any oder losen Objektformen modelliert, verschenkt die Stärke des Typsystems. Union-Types beschreiben eine von mehreren möglichen Formen, Intersection-Types kombinieren mehrere Formen zu einer. Richtig eingesetzt entstehen daraus API-Modelle und Kompositionen, die der Compiler tatsächlich absichert.
-
Maxim Mironjuk
-
August 09, 2025
Wer PHP-Code automatisiert umbauen, prüfen oder generieren will, kommt an der AST-Manipulation nicht vorbei. Die Bibliothek nikic/php-parser verwandelt Quelltext in einen durchsuchbaren Node-Baum, den eigene NodeVisitor-Klassen gezielt lesen und verändern können, bevor der Code als sauberer PHP-Quelltext wieder ausgegeben wird.
-
Maxim Mironjuk
-
August 09, 2025
Ein Test ist nur so aussagekräftig wie die Daten, mit denen er läuft. Claude hilft bei der Testdatengenerierung, indem es realistische, strukturell konsistente und gezielt fehlerhafte Datensätze erzeugt, von einzelnen Fixtures bis zu Massendaten für Performance-Tests, ohne echte Kundendaten zu verwenden.
-
Maxim Mironjuk
-
August 09, 2025
Speicherlecks in JavaScript entstehen selten durch Zufall – sie entstehen durch starke Referenzen, die Objekte im Heap festhalten, obwohl der Code sie längst nicht mehr braucht. WeakRef und FinalizationRegistry sind die offiziellen JavaScript-APIs, um mit dem Garbage Collector zu kooperieren und Ressourcen sauber freizugeben – ohne das Fundament der automatischen Speicherverwaltung zu untergraben.
-
Maxim Mironjuk
-
August 08, 2025
Die meisten Responsive-Image-Setups liefern zu grosse oder zu kleine Bilder aus, weil srcset, sizes und picture falsch kombiniert oder unvollstaendig gepflegt werden. Dieser Artikel erklaert die tatsaechliche Browser-Logik hinter Width- und Density-Deskriptoren, zeigt die korrekte sizes-Berechnung und liefert ein praxistaugliches Muster fuer Magento-Produktkataloge mit Art Direction und Format-Fallback.
-
Maxim Mironjuk
-
August 08, 2025
Ein Formular, das dem Nutzer erst nach dem Absenden mitteilt, dass die E-Mail-Adresse bereits vergeben ist, schafft vermeidbare Frustration. Professionelle Formularimplementierung in Vue 3 bedeutet: Dirty State erkennen, Validierung zum richtigen Zeitpunkt zeigen und asynchrone Checks sauber mit Debounce und Ladezustand integrieren.
-
Maxim Mironjuk
-
August 08, 2025
Jede langsame SQL-Abfrage hat einen Grund — und EXPLAIN deckt ihn auf. Das MySQL-Kommando zeigt den Ausführungsplan: welche Tabellen in welcher Reihenfolge gelesen werden, welche Indexes MySQL nutzt (oder eben nicht nutzt), wie viele Zeilen geschätzt werden und welche internen Operationen stattfinden. Wer MySQL EXPLAIN lesen kann, findet langsame Queries in Magento-Datenbanken in Minuten statt Stunden. Dieser Artikel erklärt alle relevanten Spalten, zeigt die wichtigsten Signalwörter und führt durch EXPLAIN ANALYZE für echte Messwerte.
Grundlegende EXPLAIN-Syntax
EXPLAIN wird einfach vor eine SELECT-Anweisung gestellt. MySQL führt die Abfrage dabei nicht aus — es zeigt nur, wie es die Query ausführen würde. Das macht MySQL EXPLAIN vollkommen sicher für Produktionsserver.
-- Grundsyntax: EXPLAIN vor die Query stellen
EXPLAIN SELECT e.entity_id, e.sku
FROM catalog_product_entity e
INNER JOIN catalog_product_entity_varchar v
ON v.entity_id = e.entity_id AND v.attribute_id = 73 AND v.store_id
-
Maxim Mironjuk
-
August 08, 2025
Ein funktionaler Test bestätigt, dass ein Button klickbar bleibt und ein Formular absendet, sagt aber nichts darüber aus, ob dieselbe Interaktion nach einem Tailwind-Refactoring plötzlich zwei Pixel verschoben oder mit falschem Kontrast dargestellt wird. Dieser Artikel zeigt, wie Visual-Regression-Testing mit Playwright-Screenshots oder Percy als eigene Test-Ebene im Hyvä-Theme aufgebaut wird, welche Seiten für den Testumfang tatsächlich sinnvoll sind, und wie dynamische Inhalte wie Preise und Datumsangaben Snapshots nicht länger verfälschen.
-
Maxim Mironjuk
-
August 08, 2025
Ein einzelner Netzwerk-Port ist auf produktiven Servern ein struktureller Single Point of Failure, egal wie zuverlässig die restliche Hardware ist. Linux Bonding bündelt mehrere physische Interfaces zu einem logischen Bond und schafft damit, je nach gewähltem Modus, entweder Ausfallsicherheit, gebündelte Bandbreite oder beides gleichzeitig.
-