Seite 348 - Mironsoft Blog
-
Maxim Mironjuk
-
Januar 21, 2025
Kaum ein Satz frustriert ein Entwicklungsteam so zuverlaessig wie bei mir laeuft es doch, gefolgt vom Blick auf eine rote GitLab-Pipeline. Fast immer steckt die Ursache nicht im Code selbst, sondern in einem Unterschied zwischen lokaler Umgebung und CI-Runner, sei es eine andere PHP-Version, eine fehlende Extension, eine falsche Zeitzone oder ein Cache, der lokal etwas anderes enthaelt als in der Pipeline. Dieser Artikel zeigt eine systematische Vorgehensweise, um solche Diskrepanzen gezielt statt durch Raten zu finden.
-
Maxim Mironjuk
-
Januar 21, 2025
Live Edit spiegelt Aenderungen an HTML und CSS in Echtzeit in den Browser, ganz ohne Reload-Taste. Bei einfachen Frontend-Dateien ist der Effekt beeindruckend, bei Build-lastigen Hyva/Tailwind-Setups gilt es die Grenzen der Technik zu kennen.
-
Maxim Mironjuk
-
Januar 20, 2025
Eine Rückgängig-Funktion wirkt auf den ersten Blick wie ein Feature, das eine ausgewachsene State-Management-Bibliothek voraussetzt. Tatsächlich lässt sich ein solides Undo/Redo-Pattern mit einem einfachen History-Array und wenigen Zeilen Alpine-Code umsetzen. Dieser Artikel zeigt die Snapshot-basierte Umsetzung an einem Formular-Beispiel, das Debouncing von Änderungen und die konkreten Grenzen, an die dieser Ansatz bei tief verschachteltem State stößt.
-
Maxim Mironjuk
-
Januar 20, 2025
Ein Fokusring ist für Tastaturnutzer das, was der Mauszeiger für alle anderen ist: die einzige Möglichkeit zu sehen, wo man sich gerade befindet. Mit den ring-* Utilities, focus-visible und ring-offset baut Tailwind CSS Fokus-Indikatoren, die sichtbar bleiben, statt sie mit outline-none unsichtbar zu machen.
-
Maxim Mironjuk
-
Januar 20, 2025
Wer dieselbe Aenderung zehnmal von Hand tippt, verschenkt Zeit, die PhpStorm mit Multi-Cursor-Editing und Column Selection in Sekunden erledigt. Beide Techniken zusammen decken fast jede repetitive Textaenderung im Editor ab.
-
Maxim Mironjuk
-
Januar 20, 2025
Ein uneingeschränkter Generic-Typparameter erlaubt fast alles und verhindert dadurch jeden sinnvollen Zugriff auf Eigenschaften oder Methoden. Mit dem extends Schlüsselwort, keyof und durchdachten Default-Werten lassen sich Typparameter gezielt eingrenzen, sodass der Compiler echte Fehler findet und Entwickler beim Schreiben von Code verlässliche Autovervollständigung erhalten. Der Artikel zeigt anhand einer typsicheren pick-fields Funktion, wie diese Konzepte zusammenspielen.
-
Maxim Mironjuk
-
Januar 20, 2025
Alpine.js hat kein eingebautes computed(), aber JavaScript-Getter füllen diese Lücke fast vollständig. Wer weiß, wie Getter innerhalb von Alpine.data() reaktiv funktionieren, verkettet werden und sich von einer normalen Methode unterscheiden, baut abgeleitete Werte, die genauso sauber sind wie Computed Properties in Vue oder useMemo in React.
-
Maxim Mironjuk
-
Januar 20, 2025
Die Wahl zwischen Adobe Commerce und Magento Open Source entscheidet über Lizenzkosten, verfügbare Enterprise-Features und die gesamte Betriebsstruktur eines Shops. Wer diese Entscheidung ohne belastbare Kriterien trifft, zahlt entweder für Funktionen, die er nie nutzt, oder baut mühsam nach, was in der anderen Edition längst enthalten wäre.
-
Maxim Mironjuk
-
Januar 20, 2025
PHPStorm kennt drei Interpreter-Typen: lokal, Docker/Docker Compose und SSH. Die Wahl hat direkte Auswirkungen auf Autocomplete-Qualität, Xdebug-Zuverlässigkeit und den Overhead beim Starten von Run Configurations. Dieser Artikel erklärt die Unterschiede und zeigt, wann welches Setup wirklich besser ist.
-
Maxim Mironjuk
-
Januar 19, 2025
Mit Tailwind v4 hält natives CSS-Nesting über die neue, Rust-basierte Engine offiziell Einzug in den Tailwind-Workflow. Wer jahrelang mit Sass-Verschachtelung gearbeitet hat, muss ein paar Gewohnheiten anpassen, gewinnt dafür aber eine Technik, die ganz ohne Präprozessor direkt im Browser läuft.
-