de_DEus

Developers Paradise 2016 – Rückblick

Oberer Teil der Kvarner BuchtDieses Jahr fand zum ersten Mal seit 2013 wieder eine “Summer Edition” des Developers Paradise statt, dieses Mal organisiert von Inchoo in Kroatien. Das für die Region ungewöhnlich launische April-Wetter hat dem “fun in the sun” Teil des Mottos leider einen leichten Strich durch die Rechnung gemacht, dem Teil “lots of code and fun” wurde es aber vollkommen gerecht, so dass das Event dennoch von allen Anwesenden als voller Erfolg bewertet wurde. Integer_net war mit drei Teilnehmern vertreten, Cristina Pisca, Sandro Wagner und Fabian Schmengler.

Nach langer Reise und Vergrößerung der Gruppe auf den Zwischenstationen München und Zagreb kamen wir Sonntagnachmittag in Opatija an. Das Developers Paradise fing erst am Montag an, also konnten wir noch etwas Kräfte sammeln. Die waren aber auch dringend nötig um die kommenden Tage zu überstehen.

Unter dem Twitter Hashtag #RoadToDevParadise teilten viele der Teilnehmer ihre Reisestationen, nach dem Vorbild von #RoadToImagine. Die Weitestgereisten kamen aus Neuseeland, Brasilien und Kanada, die Mehrheit der ca. 250 Anwesenden aus ganz Europa, von Portugal bis Russland und von Norwegen bis Bulgarien.

Das Milenij Hotel “4 Opatijska Cvijeta” (4 Opatijsche Blumen), in dem die Konferenz stattfand und alle Teilnehmer untergebracht waren, liegt sehr schön direkt am Wasser in der Bucht von Opatija und bat hervorragenden Service.

Hackathon

Am Montag startete für ca. 40 Teilnehmer das Vorprogramm in Form eines Hackathons, organisiert vom “Hackathon-Schamanen” Damian. In Gruppen von 3-5 Entwicklern wurde an verschiedenen Projekten rund um Magento 2 gearbeitet. Unsere Themen: Static Content Performance Improvement sowie Magento 2 on ReactPHP.

Beide Projekte haben insbesondere eins gezeigt: Wo (noch) die Grenzen des Möglichen liegen. Die Dateisystemzugriffe beim Static Content Deployment zu reduzieren war nicht so möglich wie erhofft, ebenso das Ersetzen der Request- und Response-Objekte mit Daten aus dem ReactPHP Event Loop.

Optimierungen beim Static Content Deployment waren dennoch möglich und sind bereits als Pull Request implementiert: Zusätzliche Parameter zur Auswahl, welche Dateien generiert werden sollen, sowie ein Prüfsummen-Check um existierende aber geänderte Dateien zu erkennen.

Für den Austausch von Request- und Response-Klassen sind die Interfaces leider noch nicht ausgereift und an vielen Stellen wird an den Interfaces vorbei operiert. Magento Lead Architect Anton Kril hat mir versichert, dass hieran auf jeden Fall noch gearbeitet wird, vor Version 2.4 sollte man aber nicht damit rechnen. Mein Team aus Entwicklern von Evozon konnte schließlich einen Workaround mit Anpassungen direkt in $_GET, $_POST und $_SERVER implementieren. Zu den tatsächlichen Optimierungen, die die Stärke von ReactPHP ausnutzen sollten, sind wir leider nicht mehr gekommen. Das Bootstrapping von Magento einmalig für alle Requests auszuführen, den Request-spezifischen Status aber wieder zurückzusetzen, bleibt also als mögliches späteres Hackathon-Projekt offen.

Weitere hervorzuhebende Themen: Admin Menu Manager erlaubt die Umorganisation der Admin-Menüs nach persönlichen Präferenzen, Reviews API implementiert die im Core noch fehlende API für Ratings und Reviews (Pull Request Material), EAV Cleaner wurde nach Magento 2 portiert.

Opatija

Wer nicht beim Hackathon war, oder sich eine Stunde Pause gönnen wollte, konnte zwischendurch an einer der Stadtführungen teilnehmen. Dort lernten wir, dass Opatija im 19. Jahrhundert als Erholungsort für den österreichischen Adel gegründet wurde, was sich heute noch am Baustil erkennen lässt, und dass nach neueren Messungen nicht Krk sondern Cres die größte kroatische Insel ist – es leben dort allerdings hauptsächlich Schafe. Es war eine lehrreiche und unterhaltsame Führung, aber zu viel um hier alles wiederzugeben. Nur so viel: Die Historie von Opatija ist voller tragischer Liebesgeschichten.

Am Abend gab es dann die Pre-Party im Hotelkeller. Obwohl der DJ ein Gefühl für Übergänge wie ein Backstein hatte, war die Stimmung ausgelassen. Man freute sich, bekannte Gesichter wieder oder auch zum ersten Mal persönlich zu sehen, für ungestörtere Gespräche konnte man sich immer noch nach oben in die Lobby zurückziehen.

Dienstag: Talks, Talks, Talks

Ohne Gnade kam dann der Dienstag mit vollem Konferenzprogramm von 9 bis 18 Uhr. Dank Katarina von Inchoo gab es vorher noch einen kleinen Mage::run zum Wachwerden und dafür kam entgegen allen Voraussagen auch die Sonne heraus.

Auch für den Rest des Tages noch einmal großes Lob an Inchoo für die reibungslose Organisation. Da es nur einen Track gab waren alle Talks von Anfang bis Ende gut besucht (die Qualität und Themenauswahl könnte aber auch eine Rolle dabei gespielt haben).

Ein Schnelldurchlauf mit Tweets:

  1. Max Yekaterynenko von Magento mit weniger bekannten Fakten und Trivia aus der Geschichte von Magento 2 seit der ersten Ankündigung von Yoav Kutner auf dem ersten Developers Paradise 2010.
  2. Gabriel Somoza über Best Practices für Magento 2 und moderne PHP-Entwicklung allgemein. Leider hatte dieser Vortrag mehr Inhalt als verfügbare Zeit. Die vollständigen Slides gibt es allerdings schon online.
  3. Es folgte mein eigener Vortrag zu unserem Vorgehen beim Portieren der IntegerNet_Solr Extension nach Magento 2. Wenn der Vorredner überzieht, passiert so etwas 😉

    Dem einen oder anderen scheint es aber gefallen zu haben.

  4. Peter Samoilov von Aheadworks berichtete über den Auf- bzw. Umbau ihres Magento 2 Teams. Er gab dabei sehr interessante Einblicke in die Welt der großen Extension-Provider. Offenbar sind gute PHP-Entwickler ohne Magento-Erfahrung meist besser für Magento 2 geeignet als gute Magento-1-Entwickler ohne Erfahrung mit anderen PHP-Frameworks.
  5. Atwix CTO Yaroslav Rogoza fuhr ein Zahlenfeuerwerk an Benchmarks auf.
  6. Beim SEO- und Katzenbilder-Talk von Joni Kautto habe ich mir eine Pause gegönnt, das ist doch zu wenig mein Thema.
  7. Peter Jaap Blaakmeer gab einen umfassenden und brauchbaren Überblick über die Nutzung von Composer. Auch wenn die meisten Anwesenden bereits grundlegend mit dem Thema vertraut waren:
  8. Bill Curtis von Sweet Tooth erklärt die Web API von Magento 2. Ein sehr technisches Thema, aber schön verständlich präsentiert. Die Search Criteria sind übrigens auch für Entwickler interessant, die nicht mit der Web API arbeiten:
  9. Marco Lopes von Session Digital zeigte an einem Praxixbeispiel, wie Behavior Driven Development und Domain Driven Design zu besserem Code führt.
  10. Dann, gerade passend nach den drei sehr technischen Talks, Ignacio Riesco:
  11. Mauro Lorenzutti über das Warum und Wie von CMS-Integrationen in Magento (WordPress und Typo 3) – interessant war es für mich, da die Anforderung einer Typo3-Integration in Deutschland doch recht häufig kommt.
  12. Nils Preuß hat sich den Import von Magento 2 bereits intensiv zur Brust genommen und teilt seine Ergebnisse.
  13. Magento Lead Architect Anton Kril teilte unveröffentliche technischen Details zu Magento Enterprise 2.1 mit uns, insbesondere zum Staging Feature, das im Gegensatz zum Staging von EE 1.x tatsächlich brauchbar sein dürfte.
  14. Oleksii Bedzir von Vaimo nahm sich vor, uns in einer halben Stunde ALLES über Load Testing beizubringen und schaffte es in der Zeit wirklich, jede Menge praxistaugliche Informationen zu vermitteln. Ich warte gespannt auf die Veröffentlichung der > 50 Slides!
  15. Und zum Abschluss des Tages eine Lichtgestalt der Magento-Community, die gar nicht mehr mit Magento arbeitet. Guido Jansen lieferte einen unterhaltsamen Vortrag über Cross Cultural Website Optimization, mit interessanten Nutzer-Statistiken aus verschiedenen Ländern von Euroflorist.

Alle Talks wurden auf Video aufgezeichnet und werden demnächst – inklusive der Slides – veröffentlicht!

Gadgets! Nach dem Dinner ging es fast nahtlos weiter mit der nächsten Party in einer Bar nahe des Hotels. Perfekt um das Networking aus den Kaffeepausen zu vertiefen oder einfach zu feiern. Entsprechend lang wurde der Abend. Merke: Entwickler können sich auch um 5 Uhr morgens nach viel Bier noch über Nerd-Themen unterhalten.

Mittwoch: Talks, Fortsetzung

Am Mittwoch haben es entsprechend nicht mehr ganz so viele pünktlich zum Frühstück geschafft wie am Dienstag, hier zähle ich mich dazu. Der erste Vortrags-Slot von Ivan Chepurnyi war daher etwas undankbar, vor allem für ein Thema wie Indexing. Sorry, Ivan, das hätte ich mir sonst gerne angesehen!

  1. Hrovje Jurisic hat sich das Thema CSS Preprocessing in Magento 2 vorgenommen und damit einen wunden Punkt getroffen. Mehr dazu beim Rückblick meines Frontend-Kollegen Sandro
  2. Dann Ben Marks. Ben Marks braucht kein Thema. Er hat nach einer kurzen Einführung das Zepter ans Publikum übergeben, mit der Frage “What do you not like about Magento 2?”. Und ja, das eine oder andere kam da zusammen, Ben ist also wieder mit einem Koffer voller Notizen für Magento nach Hause geflogen.
  3. Branko Toić mit einem Thema für Hoster und Sysadmins: HTTP/2 ist da und wir sollten es nutzen! Auch wenn die Performance-Vorteile bei Magento 2 aus rätselhaften Gründen weniger als erwartet sind.
  4. Ein weiterer Talk aus dem Hause Session Digital, von Norbert Nagy, führte in die Funktionsweise des Full Page Caches in Magento 2 ein.
  5. Jisse Reitsma gab unter dem vielsagenden Titel “Running Magento 2” eine Vielzahl an Tipps für ein performantes Setup.
  6. Talesh Seeparsan stellte die OWASP Top Ten vor und zeigte, wie man seinen Magento Code vor diesen Sicherheitslücken bewahrt. Ein Thema, das jedem Entwickler bewusst sein sollte.
  7. Benno Lippert erklärte Product Information Management Tools und wann man sie nutzen sollte.

Das für den Nachmittag geplante Programm im “Adrenalin Park” musste wetterbedingt abgesagt werden, als Plan B wurde eine Weinverkostung und ein Besuch des Kasinos angeboten, das haben wir allerdings lieber übersprungen um es etwas ruhiger anzugehen und auch noch ein wenig Opatija anzuschauen, wo sich die Sonne doch noch einmal blicken ließ. Immerhin sollte zum krönenden Abschluss am Abend die dritte Party gefeiert werden.

Donnerstag: Durch Schnee und Eis

Immerhin vier Mann fanden sich am Donnerstagmorgen noch zum abschließenden Mage::run (Bartek, Daniel, Peter Jaap, you rock!)

Für mich hieß es dann allerdings auch schon für den Checkout bereit machen, um halb zehn fuhr das Taxi nach Zagreb. Im Inland war unterdessen scheinbar der Winter eingebrochen, so ging es durch alle Arten von Luftfeuchtigkeit zurück nach Hause.

Die abschließende Panel-Diskussion haben wir daher leider verpasst, sie scheint doch sehr interessant gewesen zu sein.

Mein Fazit

Nach meinem ersten Developers Paradise 2013 auf Mallorca hatte ich hohe Erwartungen an das Event, und ich muss sagen, sie sind übertroffen worden:

Das Zitat würde ich wieder unterschreiben. Inchoo hat es nicht nur geschafft, mit einem Feuerwerk von Vorträgen das Developers Paradise zu einer Top Konferenz für Entwickler zu machen, sondern auch trotz unplanmäßigem Wetter eine gute Umgebung für das Drumherum zu schaffen (ein, zwei Ausrutscher möge man verzeihen…)

Und so konnte ich, obwohl ich dieses Jahr anders als noch 2013 schon einen guten Teil der Besucher persönlich kannte, weitere interessante neue Leute kennenlernen, darunter auch andere, die in meiner Welt bisher nur als Twitter-Avatar existierten.

Neue Erkenntnisse darüber hinaus:

  • Kroatien ist eine Reise wert
  • Wenn man sich eine Kofferwaage online kauft, sollte man auf die Maßeinheit achten
  • Anton Kril ist nicht nur nicht Alan Kent, sondern auch ein begnadeter Bauchredner
  • Jisse Reitsma lebt nicht in einem Palast
  • Ostdeutsche klicken öfter auf Blumen-Werbung als Westdeutsche und nicht mal Guido Jansen weiß, warum
  • Load Testing gab es schon im 17. Jahrhundert. Für Schiffe.
  • Wer “Slide Trolling” gegen jemanden betreibt, der den vorletzten Talk hat, ist selber schuld :-)

In diesem Sinne freue ich mich auf hoffentlich weitere Fortsetzungen in den kommenden Jahren!

Fabian Schmengler

Fabian Schmengler ist Diplom-Informatiker und Magento Entwickler bei integer_net. Seine Schwerpunkte sind Backend-Entwicklung, Konzeptionierung und Test-Automatisierung. Seit 2011 ist er Magento Certified Developer, seit 2014 Magento Certified Solution Specialist.

Dieser Beitrag hat 0 Kommentare

Einen Kommentar hinterlassen