MageUnconference 2019

Bericht von der MageUnconference 2019

Am 30. November und 1. Dezember waren wir auf der Mage UnConference 2019 in Köln. Als Sponsor von ‚We pay for travel and ticket of someone else‘ konnten wir uns diesen Termin natürlich nicht entgehen lassen. Auch im fünften Jubiläumsjahr des Community Events war wieder viel geboten, selbstverständlich wurden die Kaffeepausen eingehalten und zwischendrin interessante Sessions gehalten. Auch die Pre-Party in der „Alten Feuerwache“ und eine entspannte Party am Samstag waren wieder Teil des Programms. Neben vielen altbekannten Gesichtern haben wir auch in diesem Jahr wieder tolle neue Leute in Köln kennengelernt.

Bild vom Jubiläumskuchen der MageUnConf 2019

So sieht ein 5-Jahres-MageUnConf-Kuchen aus! (Bild: @siepker Quelle: https://twitter.com/siepker/status/1200731124135276544/photo/1)

Was ist eine „unConference“?

Bei einer unConference steht der Austausch der Teilnehmer untereinander im Vordergrund. Es gibt keine feste Agenda, keine im Vorfeld festgelegten Speaker oder spezielle Themen – es gibt also kein Programm oder eine festgelegte Planung. Stattdessen wird zu Beginn jedes unConference-Tages von den Teilnehmern gemeinsam ein „Fahrplan“ für den Tag bestimmt. Jeder Teilnehmer, der möchte, kann Vorschläge zu Sessions machen. Ob und in welchem Umfang eine Session stattfindet, wird von allen gemeinsam per Abstimmung festgelegt. Zwischen den Vorträgen, Workshops oder zum Beispiel moderierten Diskussionen gibt es jeweils eine halbstündige Kaffeepause. Die Kaffeepausen nehmen bei einer unConference einen besonderen Stellenwert ein – immerhin eröffnen sie den besonderen Raum für regen Austausch und Zeit zum gegenseitigen Kennenlernen.

Was wurde geboten bei der MageUnconference 2019?

Das Programm in diesem Jahr stand denen der Vergangenheit in nichts nach. In unserem Bericht beleuchten wir die von uns persönlich besuchten Sessions – in diesem Jahr in Person von Carsten und Michael. Alle Infos vor, während und nach der unConference findet ihr auch unter dem Twitter-Hashtag #mageuc19.

Schedule MageUnconference 2019

Samstags-Schedule MageUnConf 2019 von @joeadomeit (Quelle: https://twitter.com/joeadomeit/status/1200731512469172226/photo/1)

Magento 2 JavaScript Bundling

Willem behandelte in seiner Session das Thema JavaScript Bundling mit Magento 2. Am Anfang stand dabei die Feststellung, dass HTTP/2 mit Magento 2 leider nicht funktioniert. Das Standard JavaScript Bundling ist auch keine sinnvolle Option, weil damit 5 MB große JavaScript Konglomerate entstehen, die mühsam heruntergeladen werden müssen. Und auch das in den Magento 2 DevDocs beschriebene Advanced JavaScript Bundling ist hier keine schöne Lösung. Das Tool erzeugt pro Seitentyp ein eigenes Bundle. Die Konfiguration dafür ist allerdings sehr aufwendig und muss bei jeder Änderung erneut angepasst werden. Um umfangreicheres JavaScript intelligent zu bündeln und dann schnell an die Clients ausliefern zu können, muss daher etwas tiefer in die Trickkiste gegriffen werden.

Seit einer Änderung am Google Algorithmus hilft leider auch die Magento 2 Toolbar nicht mehr zuverlässig, da Lighthouse mit den Ergebnissen unzufrieden ist. Aber dank des neu auf GitHub verfügbaren Tools baler von Andrew Levine, lässt sich das Bundling beim Kompilieren in einem Bash-Skript organisieren. Als Praxisbeispiel nannte Willem den Shop highlite.com, der mit require.js das JavaScript asynchron lädt. Das Tool sorgt dafür, dass Magento 2 Shops deutlich schneller geladen werden, indem das JavaScript richtig gepackt wird. Das verbessert den PageSpeed Index des Shops und spart zwei bis fünf Tage Aufwand, da das manuelle Packen entfällt.

How to Start Magento 2 Headless – PWA

In der Session „How to Start Magento 2 Headless – PWA“ improvisierten Sander Mangel und und Jisse Reitsma über das Thema Headless E-Commerce und Progressive Web Apps (PWA) mit Magento 2. Sie sprachen über Service Worker, die einen Proxy zwischen Webserver und Browser bereitstellen und so Websites auch offline verfügbar machen können, über Toolbox, den Compiler Babel und den vielseitig einsetzbaren Bundler webpack. Ein weiteres Thema waren Content Delivery Networks (CDN), mit deren Hilfe sich der Lighthouse Indexwert spürbar verbessern lässt. Dabei plauderten die beiden über so grundlegende und wichtige Fragen wie: Warum gibt es so etwas eigentlich? Und: Was muss man überhaupt machen, um ein CDN zu nutzen? Als Best Practice empfahlen die beiden, alle statischen Inhalte ins CDN auszulagern, was nicht aus der Datenbank kommt: JavaScript, Bilder und so weiter.

Personal Knowledge Management: Wissensmanagement mit Trilium

Vinai und Christian zeigten in ihrer Session das praktische Tool Trilium, das sich ganz hervorragend als Lösung für das Wissensmanagement von Entwicklern eignet. Mithilfe von Trilium lassen sich Codeschnipsel und alles, was sonst noch wichtig ist, sammeln, organisieren und wiederfinden – zum Beispiel Lösungen für bekannte Probleme, die immer wieder auftauchen. Eine Variablenzuweisung ist möglich und es können Tabellen, Diagramme und passende Ordnungsstrukturen erschaffen werden. Leider lässt sich das Ganze immer nur für einen Entwickler einrichten und nicht gemeinsam als Datenbank im Team oder für ein Unternehmen nutzen.

Keep Team Happy – Ways to Monitor

Brent Peterson von Wagento ging in seiner Session “Keep Team Happy – Ways to Monitor” der Frage nach, wie sich die Zusammenarbeit zwischen Management und Projektteam verbessern lässt. Dabei stellte er die praktische SaaS-Lösung Officevibe vor. In Form von wöchentlichen Umfragen sammelt das Tool anonymisierte Informationen über Stresslevel, Zufriedenheit und mehr. Anhand der aufbereiteten Daten können dann Entscheidungen gezielter getroffen und Projektverläufe besser geplant werden.

Erfahrungsaustausch zu Magento Zertifizierungen

Christian Münch eröffnete in seiner Session zu Magento Zertifizierungen eine interessante Diskussion, die allerdings ein wenig kontrovers verlief, da sich in einem grundlegenden Punkt alle einig waren: Der Rahmen, in dem Magento aktuell Zertifizierungen durchführt, ist ein ausgesprochen schlechter. Das Material für die Vorbereitung muss gekauft werden, um überhaupt die Möglichkeit zu haben, die Prüfung zu bestehen. Allerdings ist dabei unbedingt das Material für Magento 2 Entwickler von SwiftOtter zu empfehlen, da Magento selbst noch immer kein brauchbares Schulungsmaterial zur Verfügung stellt. Erfahrene Programmierer fallen immer wieder durch – nicht zuletzt, weil das Englisch teilweise nur für Native-Speaker zu verstehen ist.

Letztlich kristallisierten sich unter den Teilnehmern zwei unterschiedliche Positionen heraus: entweder einfach die Prüfung anfangen, so dass die Aufgaben für den zweiten Anlauf schon bekannt sind, oder die Inhalte vorher intensiv durchpauken und dann am Ende womöglich vor völlig anderen Fragen stehen. Christian sagt seinen Entwicklern: Macht euch keine Gedanken und wiederholt die Prüfung einfach so oft ihr wollt. Nach drei Versuchen gibt es eine kurze Wartezeit, bis die Prüfung wiederholen werden darf – und dann geht es einfach in die nächste und immer nächste Runde, bis es irgendwann klappt.

Improving the Quality of Your Magento Project

Stephan Hochdörfer von der bitExpert AG lieferte unter dem Titel “Improving the Quality of Your Magento Project” eine Session zum Thema Qualitätsmanagement in der Software-Entwicklung, in der er gleich eine ganze Reihe von Tools vorstellte:

  • Mit dem Git Hook Manager CaptainHook lassen sich individuelle Configs für die Qualitätssicherung erstellen und im Entwicklungsprozess verankern. Die später automatisiert aufgerufenen JSON Konfigurationen können exakt auf die eigenen Standards zugeschnitten werden, wobei sich CaptainHook beliebig erweitern lässt. Dockerinstanzen können von CaptainHook direkt gestartet werden.
  • Das Tool PHPStan (PHP Static Analysis Tool) ist ein hilfreicher Spezialist für das Finden von PHP Fehlern. Stephans Firma hat dafür die passende Erweiterung entwickelt, damit PHPStan auch mit Magento funktioniert.
  • Für den Umgang mit Abhängigkeiten hat Stephan gleich mehrere Tools empfohlen: Um bei den Dependencies nicht den Überblick zu verlieren, ist DepTrac praktisch. Mit dem Security Checker lässt sich zudem überprüfen, ob Abhängigkeiten mit bekannten Sicherheitslücken benutzt werden und der Unused Scanner spürt unbenutzte Composer Abhängigkeiten auf.

Und was noch?

Auf unserem Plan standen bei der Mage UnConference außerdem Sessions zu folgenden Themen:

  • Wie können Agenturen und Freelancer heute mit Magento überstehen?
  • Wie gestalte ich die Kommunikation zum Kunden?
  • Erfahrungsaustausch zur Migration zu Magento

Ein heiß diskutiertes Thema waren auch die technischen Spezifikationen des neu erschienenen Shopware 6 im Vergleich mit Magento 2. Überraschenderweise waren auch die Shopware Gründer Stefan und Sebastian Hamann vor Ort, um sich die Mage UnConference und die coole Community mal anzusehen. Aber dann waren sie irgendwann auch plötzlich wieder weg. Ob es bald vielleicht auch eine Shopware UnConference geben wird?

Was bleibt? Viel Technik, Koffein und Community!

Und was bleibt von der Mage UnConference 2019? Natürlich ganz viel Technik – und Kaffee – und tolle Menschen. Die Sessions waren der Hit und der Kaffee sowieso. Sogar Teetrinker wurden während dieser zwei Tage vorübergehend zu Kaffee-Freunden und tauschen sich unter dem Einfluss von Koffein in den Pausen munter und aufgeweckt über spannende Themen aus. Allerdings, das sei noch erwähnt, ist Vorsicht geboten, wenn der Mautz einen ins Schlepptau nimmt, um nachts in Köln eine Super Whisky Bar anzusteuern. – Am nächsten Tag waren wir konstitutionell entsprechend beeinträchtigt.

Nichtsdestoweniger haben wir auch in diesem Jahr wieder ausgesprochen viel gelernt, Inspirationen und Denkanstöße mitgenommen und sind wieder sehr begeistert. Wir freuen uns jetzt ein knappes Jahr lang auf eine weitere spannende Mage UnConference – vom 13. bis 15. November 2020 in Köln!

Dieser Beitrag wurde am von Splendid Internet veröffentlicht/zuletzt bearbeitet.
Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.