Seite 325 - Mironsoft Blog
-
Maxim Mironjuk
-
Februar 17, 2025
Echte Reporting-Dashboards brauchen selten eine einzelne Window Function, sondern eine Kombination aus CTEs, Aggregation und mehreren verschachtelten Fensterfunktionen. Cohort-Retention-Tabellen und Period-over-Period-Wachstumsraten lassen sich vollstaendig in SQL berechnen, wartbar strukturiert mit WITH-Klauseln, ohne dass Rohdaten die Datenbank fuer die Berechnung verlassen muessen.
-
Maxim Mironjuk
-
Februar 17, 2025
Wer große Datenmengen in JavaScript verarbeitet, hat lange alles in den Speicher geladen, bevor er damit arbeiten konnte. Die Web Streams API ändert das: Daten fließen als Chunks durch eine Pipeline, Backpressure verhindert Speicher-Überlastung, und der erste Chunk ist verfügbar, bevor der letzte angekommen ist.
-
Maxim Mironjuk
-
Februar 16, 2025
Viewport-Einheiten wie vw und vh haben ein strukturelles Problem: Sie kennen nur die Größe des Browserfensters, nicht die Größe des Containers, in dem eine Komponente tatsächlich lebt. Container Query Units lösen genau das, indem sie Größen relativ zum nächsten Container mit gesetztem container-type berechnen. Zusammen mit den nativen @container-Utilities aus Tailwind v4 lassen sich damit Komponenten bauen, die sich unabhängig vom umgebenden Layout korrekt verhalten, egal ob sie in einer schmalen Sidebar oder einem breiten Hauptbereich landen.
-
Maxim Mironjuk
-
Februar 16, 2025
Reanimated Layout Animations berechnen flüssige Übergänge automatisch, sobald sich Größe, Position oder Sichtbarkeit einer Komponente ändert, ohne dass Entwickler Start- und Endwerte manuell mit useState oder useEffect orchestrieren müssen. Dieser Artikel zeigt entering, exiting und Layout-Transitions am Beispiel einer Liste mit Hinzufügen- und Entfernen-Animation sowie die Performance-Grenzen bei sehr komplexen Listen.
-
Maxim Mironjuk
-
Februar 16, 2025
Ein Moving Average glaettet verrauschte Zeitreihen direkt in der Datenbank: mit AVG() OVER() und einem exakt definierten ROWS BETWEEN Fenster berechnest du gleitende Durchschnitte fuer Trendanalysen, ohne Rohdaten in eine Anwendung zu laden oder mit langsamen Self-Joins zu arbeiten.
-
Maxim Mironjuk
-
Februar 16, 2025
Ein eigenständiges Bash-CLI-Tool, das ohne Paketmanager verteilt wird, braucht einen eigenen Weg, um bei Nutzern aktuell zu bleiben. Ein Self-Update-Mechanismus lädt neue Versionen herunter, prüft sie, ersetzt das laufende Skript atomar und macht die Änderung im Fehlerfall rückgängig, bevor Nutzer überhaupt etwas davon merken.
-
Maxim Mironjuk
-
Februar 16, 2025
Wer Business-Logik direkt in Block-Klassen schreibt, baut Magento-Templates, die sich weder isoliert testen noch sauber wiederverwenden lassen. Das Hyvä ViewModel-Pattern trennt Datenaufbereitung strikt von Darstellung, macht jede Regel als reine PHP-Klasse mit PHPUnit prüfbar und hält phtml-Templates auf reine Ausgabe beschränkt.
-
Maxim Mironjuk
-
Februar 16, 2025
jQuery für ein simples Sterne-Widget zu laden ist wie einen LKW zu mieten, um einen Brief zu transportieren. Alpine.js bietet mit x-data, x-on und x-bind alles, was ein vollständiges, barrierefreies Rating-Widget braucht – in unter 50 Zeilen, ohne npm, ohne Build-Step, direkt im Template.
-
Maxim Mironjuk
-
Februar 16, 2025
Ein Bug-Bounty-Programm belohnt externe Sicherheitsforscher für das verantwortungsvolle Melden von Schwachstellen, funktioniert aber nur mit klar definiertem Scope, gestaffelten Prämien und einem reifen internen Prozess für Schwachstellenmanagement. Dieser Artikel erklärt, wie private und öffentliche Programme sich unterscheiden, wann ein Unternehmen tatsächlich bereit ist, welche Plattformen helfen, und wie die erste eingehende Meldung professionell bearbeitet wird.
-
Maxim Mironjuk
-
Februar 16, 2025
Deployer PHP und GitLab CI/CD ergänzen sich für Magento-Deployments ideal: GitLab baut und testet, Deployer übernimmt die Release-Struktur, den Symlink-Wechsel und den Rollback-Pfad. Wer beide Werkzeuge richtig kombiniert, bekommt einen reproduzierbaren, teamfähigen Deployment-Prozess ohne Wartungsfenster-Roulette.
-