WeAreDevelopers - ein Bericht über die größte Entwickler-Konferenz Europas


24.05.2017 von

https://www.iteratec.de/fileadmin/Bilder/News/iteratec_logo.png https://www.iteratec.de/fileadmin/Bilder/News/iteratec_logo.png iteratec GmbH

Donnerstag und Freitag, den 11. und 12. Mai, besuchten wir, Philipp und Lukas, die WeAreDevelopers-Konferenz in Wien. Die zweitägige Konferenz zählt nach nur drei Jahren ihres Bestehens schon zu den größten Entwickler-Konferenzen Europas (laut Veranstalter sogar die Größte). Den rund 3700 Besuchern wurde auf drei Bühnen ein abwechslungsreiches Programm geboten.

Viele aktuelle Themen wurden aufgegriffen, so durften natürlich Vorträge über Javascript, Machine Learning und Virtual Reality nicht fehlen. Unter den Vortragenden waren auch einige Informatik-Legenden dabei, wie John Romero (bekannt durch Spiele wie Doom und Quake) Rasmus Lerdorf (Erfinder von PHP) und Joel Spolsky (der Gründer von Trello und Stackoverflow). Leider konnte der ebenfalls angekündigte Piratebay- und Flattr-Gründer Peter Sunde aus gesundheitlichen Gründen nicht zur Konferenz erscheinen.

Donnerstags konnten wir mehreren Vorträgen zum Thema Chat Bots zuhören. Hier hat das Start-up Lastmile seine selbst entwickelten Werkzeuge zur Erstellung von intelligenten Chat Bots vorgestellt. Dieses Framework setzt sich zwischen die Chat-Plattform, mit der der User kommuniziert und dem eigentlichen Backend, der die korrekte Response auf den eingegebenen Text des Users generiert. Der Input des Nutzers wird in einer dreistufigen Pipeline verarbeitet und eine passende Reaktion berechnet. In der ersten Stufe wird der gegebene Input analysiert, durch sogenanntes Natural Language Processing wird der Intent (die Absicht) des Nutzers eingeschätzt. Diese Einschätzung basiert auf einem Trainings-/Konfigurations-File, das der Entwickler pflegen muss. Es spezifiziert Schlüsselwörter, die für die Klassifizierung notwendig sind. 

In der dritten Stufe wird der Response des Backends wieder in eine verständliche natürliche Sprache für den User umgewandelt.

In einigen Vorträgen wurde auch über Machine Learning berichtet, so wurde zum Beispiel erklärt, wie man mittels der Google Machine Learning Bibliothek Tensorflow Typen von Repositories auf Github klassifizieren kann. Auch das oben genannte Natural Language Processing basiert auf dem Einsatz von neuronalen Netzen. Allerdings ist Machine Learning nicht für jede Aufgabe die passende Lösung. Der Aufwand und Overhead einer Machine-Learning-Lösung zahlt sich nur aus, falls sich dadurch tatsächlich Business Value generieren lässt und die Aufgabe auch tatsächlich durch Machine Learning deutlich besser gelöst werden kann. Als Beispiel dazu können wieder Chat Bots gezählt werden. So wurde am Vormittag noch von einem Chat Bot für die natürliche Sprachverarbeitung berichtet (siehe voriger Absatz) und nachmittags hat Sebastian Krumhausen von Sure einen anderen Weg vorgeschlagen. Er ist der Überzeugung, dass gerade bei Chat Bots mit natürlicher Sprachverarbeitung die Anzahl an Klicks, die für die Erreichung des Ziels notwendig sind, deutlich höher ist, als wenn der User die gleiche Tätigkeit auf eine mobilen Seite/App ausführen würde. Beispiel dafür war eine Essensbestellung, die mittels “natürlicher” Konversation mit einem Bot beispielsweise 72 Taps am Smartphone erfordern würde, mittels App allerdings nur 16. Aus diesem Grund sympathisiert er mit dem Konzept einer Art App in App (den Chat als App-Plattform nutzen), die eine einfachere Interaktion mit dem Chat Bot ermöglicht. So werden Maps, Buttons und weitere interaktive Elemente dem User direkt im Chat zur Interaktion angeboten. Dieses Konzept wird sehr erfolgreich in WeChat (meist genutzter Chat Chinas) eingesetzt und wird sogar mit einem eigenen Store unterstützt.

Während der erste Tag scheinbar keine wirklichen Schwerpunkte hatte (die Themen waren sehr durchgemischt), waren am zweiten Tag Continuous Integration and Delivery und Web (Javascript und CSS) die deutlichen Schwerpunkte. Christopher Hejl von Automic sprach von Extreme Continuous Integration. Die Frage aller Anwesenden war natürlich: Was genau macht diese Continuous Integration Extreme? Im Grunde genommen ging es einfach darum, wie man eine sehr große Anzahl von Komponenten (oder Applikationen) im Continuous-Integration-Bereich richtig verwaltet. Der große Schwerpunkt lag allerdings auf den Abhängigkeiten der Komponenten untereinander. So ist es dem Maintainer einer Applikation nicht immer klar, ob und wie viele andere Komponenten von ihr abhängen. In diesem Continuous-Integration-Prozess werden nun direkt beim Build die Applikationen aufgelöst, die eine Abhängigkeit auf der gebauten Komponente haben. Werden nun Schnittstellen verändert, wird direkt in diesem Schritt klar, dass damit eine andere Applikation nicht mehr stabil laufen kann. Der Vorteil hierbei ist natürlich, dass diese Probleme schon beim Build auftreten und nicht erst zur Laufzeit. 

Kurz vor der Mittagspause begaben wir uns auf die Main Stage um Brian Holt (Netflix) und Dustin Whittle (Uber) zu lauschen. Brian Holt fokussierte sich auf die Sprache Javascript selbst und dem Prozess, wie neue Features in den ECMA-Standard aufgenommen werden.

Dustin Whittle konzentrierte sich eher auf die Anwendung von Javascript bei Uber selbst (natürlich Frontend und Backend). Wirklich schön von ihm fanden wir das Statement, dass man der Open Source Community wieder etwas zurückgeben sollte, da Software-Unternehmen sich immer an ihr bereichern. Aus diesem Grund steuern sie auch selbst viel dazu bei und veröffentlichen Teile ihrer Software auf Github (z.B. Jaeger und React-Vis). Am Nachmittag ging die Javascript-Thematik weiter, nur wanderten wir von der Main Stage auf eine der kleinere Side Stages. Hier wurden noch Themen wie Vue.js, Rxjs und React aufgegriffen.