Rückblick SymfonyLive Berlin 2018

Sari Na
SensioLabsDE
Published in
9 min readJun 13, 2019

Drei Tage SymfonyLive in Berlin liegen hinter uns. Drei Tage mit vielen spannenden Workshops, interessanten Talks, guten freundschaftlichen und fachlichen Gesprächen, leckerem Essen, einer tollen Location und vielem mehr, was eine gelungene SymfonyLive ausmacht.
Du hast die Veranstaltung leider verpasst oder warst dabei und möchtest die Konferenz nochmal Revue passieren lassen? Wir haben für euch die Talks kurz zusammengefasst und Links zu den Slides und Bewertungen zugefügt.

Und hier ist der Video-Rückblick!

Das Spektakel geht übrigens weiter: Im nächsten Jahr legen wir noch einen drauf und verlängern die Konferenz um einen Tag. Noch mehr Workshops, noch mehr Talks, noch mehr Symfony.

Keynote — Symfony without the Framework Bundle

Tobias Nyholm bei der SmyfonyLive 2018 in Berlin

Frameworks wird häufig nachgesagt langsam zu sein — auch Symfony ist davon nicht ausgenommen. Tobias Nyholm hat uns erklärt woher diese Vorurteile kommen, welchen Wahrheitsgehalt sie haben und ob es sich nicht einfach um veraltete Ansichten handelt.
Und dann ging es vor allem darum, wie man seine Anwendungen schneller machen kann — sogar so schnell, dass sie in weniger als 15ms antworten.

Seine Top 3 Tipps für eine bessere Performance:

#1 Buy a better Server
#2 Use Varnish
#3 Run less Code

→ Bewertung auf joind.in & Slides

Eine Einführung in die Symfony Messenger-Komponente

Speaker Denis Brumann auf der SymfonyLive Bühne

„Symfonys Messenger-Komponente macht die Einführung asynchroner Verarbeitung in eine bestehende Anwendung einfacher denn je.”, sagt Denis Brumann und stellt in seinem Talk genau das unter Beweis.
Die in Symfony 4.1 hinzugekommene Messenger-Komponente ermöglicht es, asynchrone Prozesse auch zwischen mehreren Anwendungen anzustoßen, wodurch sie zu einem elementaren Baustein einer microservice-basierten Architektur werden. In seinem Talk hat Denis die einzelnen Aspekte der Komponente, wie Message Bus, Handler und Middlewares beleuchtet. Anhand eines praktischen Beispiels wurde vorgestellt, wie die Message Komponente Schritt für Schritt in ein bestehendes Projekt eingeführt wird und auf Stolpersteine bei der Umsetzung hingewiesen. Die Vorgehensweise und gezeigten Codebeispiele kann man auf Github nachvollziehen.
→ Bewertung auf joind.in & Slides

Doctrine — mehr als nur ein ORM

Andreas Braun und die Zuhörer seines Talks zum Thema Docrine

Einen Blick über den Tellerrand warf Andreas mit seinem Talk und stellte seinen Zuhörer/innen vor, welche Projekte neben dem bekannten ORM unter dem Doctrine-Projekt entwickelt werden. Neben den Bibliotheken, die elementare Funktionalitäten wie annotationsbasierte Konfiguration bereitstellen, und der Verwaltung von Datenbankmigrationen ging es unter anderem um das ORM-Schwesterprojekt ODM, mit dem man statt relationaler Datenbanken dokumentbasierte Alternativen wie MongoDB ansprechen kann. Damit wurde die Vielfalt des Doctrine Ökosystems verständlich aufgezeigt. Besonders spannend sind auch Andreas Informationen zu kommenden Entwicklungen von Doctrine. In den nächsten Monaten wird unter anderem eine vollständige Migration auf PHP 7 erwartet. Danke für diesen Einblick in Doctrines Roadmap.
→ Bewertung auf joind.in & Slides

Ein leistungsfähiger Development Workflow mit Kubernetes

Die SymfonyLive 2018 mit Bastian Hofmann

Wenn man in seiner Entwicklungsumgebung Docker verwendet, ergeben sich daraus eine ganze Reihe neuer Probleme. Angefangen bei Abbildungsschwierigkeiten der Produktiv-Umgebung zur Entwicklungszeit bis hin zur Versionierung von Services und dem Reproduzieren von Bugs.
In seinem Talk ging Bastian auf diese Probleme ein und hat anschaulich, anhand diverser Demos gezeigt, wie Kubernetes nicht nur bei der Orchestrierung einer Live-Umgebung, sondern bereits während der Entwicklung eingesetzt werden kann. Dabei hat er eine ganze Sammlung von nützlichen Tools vorgestellt, die den Programmieralltag erleichtern können.
→ Bewertung auf joind.in & Slides

Content & Master Data Management mit Pimcore

Speaker Christoph Lühr vor seinem Vortrag

Um ein Backend User Interface bereitzustellen sind gemeinhin zwei Möglichkeiten verbreitet: Entweder es muss ein neues Interface (mittels Scaffolding) für das spezifische PHP-Projekt entwickelt werden oder ein bereits bestehendes System muss an die neuen Anforderungen angepasst werden.
Beide Varianten sind äußerst umständlich, zeitaufwendig und erzielen oft nicht die gewünschten Ergebnisse. Christoph Lühr hat in seinem Talk die Lösung für das beschriebene Problem im Gepäck. Mit der Open Source Plattform Pimcore können auch komplexe Datenstrukturen bedient werden. In einer Live-Demo hat Christoph vorgeführt, welche CMS-, CRM-, E-Commerce- und Web2Print-Funktionen für eigene Projekte genutzt werden können.
→ Bewertung auf joind.in & Slides

How to F*ck up your Development team with Microservices

Stephan Schulze von Project A

In seinem Talk hat Stephan seine persönlichen Erfahrungen bei der Umsetzung eines großen e-commerce-Projekts mittels Microservice-Architektur geteilt. Stephan zeigte dabei auch die Schattenseiten auf, die das Architektur-Paradigma mit sich bringt. Hohe Eigenverantwortung, Komplexität und jede Menge neue Technologien machen es Entwicklern, Administratoren und auch der Projektleitung schwer. Anschaulich schildert er die daraus folgende Unzufriedenheit im Team und die häufig unterschätzten Ressourcenaufwände.
Trotz aller Probleme hat sich Stephan dennoch überzeugt gezeigt, dass die auf Team-Autonomie und schnelle Veränderungen optimierte Microservice-Architektur Vorteile bringen kann und gab den Zuhörer/innen die Learnings aus seinen Projekten mit auf den Weg.
→ Bewertung auf joind.in

The How’s and Why’s of a Clean Git History

Petr Heinz über die Notwendigkeit von Clean Code

Das es extrem wichtig ist, Veränderungen an Code nachverfolgen zu können, findet Petr Heinz und zeigt in seinem Talk, wieso eine verständliche Code History jedem Entwickler das Leben leichter macht. Anhand einiger Best-Practices und fortgeschrittenen Git Techniken beweist er den Zuhörer/innen, warum sich der Extraaufwand final auszahlt. Petr hat gezeigt, wie ein guter Commit aussehen sollte und wie eine hilfreiche Commit Message erstellt wird.

Diese vier Tipps hat er für euch zusammengefasst:

#1 Clean code gibt es nur durch clean history
#2 Ein git commit ist immer atomar
#3 Inline comments bringen immer erhebliche Nachteile mit sich
#4 Git ist super. Nutzt es!

→ Bewertung auf joind.in & Slides

Develop Yourself — Ein Plädoyer für mehr Software Handwerkskunst

Ole Rößner vor dem Plenum der SymfonyLive in Berlin

Softwareentwicklung sollte nicht nur stumpfes Code runterschreiben sein. Für Ole Rößner ist Coding ein Handwerk, das Training erfordert. Um diesem Leitgedanken zu entsprechen hat Ole den Kata Workflow & den Randori Workflow vorgestellt und damit seinen Zuhörer/innen praktische Methoden an die Hand gegeben, das regelmäßige Üben zu strukturieren und zu vereinfachen.
→ Bewertung auf joind.in & Slides

Security Testing

Prof. Dr. Jan Jürjens zum Thema Sicherheit von Webanwendungen

In seinem Talk hat Prof. Dr. Jan Jürjens ein nach wie vor brennendes Thema vorgestellt. Durch immer komplexer werdende Angriffe ist die Sicherheit von Webanwendungen gefährdet und sie müssen entsprechend dagegen geschützt werden. Jan hat gezeigt, wie Symfony als Framework Entwicklern die Umsetzung von Dingen wie Authentifikationen erleichtert und weitere nützliche Sicherheitsfeatures erklärt. Beim richtigen Einsatz der Tools verspricht er als Resultat eine sichere Webanwendung.
→ Bewertung auf joind.in

Success of Blackfire and Continuous PHP performance monitoring at trivago

Jorge Luis Betancourt Gonzalez von trivago

Für trivagos Suche ist Performance ein kritischer Faktor. Durch hunderte Commits täglich und ähnlich vielen A/B-Tests ist das Finden von Regressionen, sowie das Suchen nach Optimierungspotential besonders anspruchsvoll. In seinem Talk hat Jorge Luis vorgestellt, wie trivago blackfire.io in ihre Pipeline integriert, Performance-Tests als Teil ihrer Builds durchführt und die gesammelten Daten auswertet.
Für alle, die daran interessiert sind die Performance ihrer Webanwendung kontinuierlich zu monitoren, lohnt sich ein Blick in die Videoaufzeichnung des Talks, um die Inhalte nochmals detailliert nachvollziehen zu können. Die Videos werden bald auf unserem YouTube-Channel veröffentlicht.
→ Bewertung auf joind.in & Slides

Nomes est Omen — Naming things considered hard

Speakerin Anne-Julia Seitz auf der Bühne der SymfonyLive Berlin

Die richtigen Bezeichnungen zu finden, ist für Entwickler immer wieder eine herausfordernde Aufgabe. Klassen, Funktionen und Variablen bekommen Namen, die persönlich und für andere Entwickler sowohl dauerhaft verständlich, als auch aufschlussreich sein müssen. Anne-Julia Seitz hatte tolle Tipps und Anekdoten zu dem Thema im Gepäck und erklärt die Do’s and Don’ts bei der Suche nach den richtigen Namen. Sie fasst es treffend zusammen: „Sobald ich mit dem Namen zufrieden bin, bin ich gewöhnlich auch zufrieden mit dem Design.“
→ Bewertung auf joind.in & Slides

Webpack Encore — Asset Management für den Rest von uns

Stefan Adolf zum Bundler Webpack

An dem mächtigen Bundler Webpack kommt man bei der Erstellung von Assets kaum vorbei. Doch schon die Konfiguration erfordert akademische Kenntnisse der Interna. Eine einfache Lösung dafür hat Stefan Adolf in seinem Talk vorgestellt. Mit Encore bietet Symfony einen recht schmalen Wrapper um Webpack an, wodurch das Asset Building in verschiedenen Umgebungen funktioniert. In seiner Demo zeigt Stefan, wie Assetic mit Webpack und Encore ersetzt werden kann und dadurch ein React-basiertes Frontend für eine Symfony-Applikation entwickelt wird. Auch komplexere Anforderungen, wie die Verwendung von Plugins, Sourcemaps oder Chunks wurden nicht ausgelassen.
→ Bewertung auf joind.in & Slides

The Silex Sunset

Speaker Alexander M. Turek zum Thema Migration von Silex auf Symfony

Im Juli wurde die Entwicklung an Silex, dem Symfony-basierten Micro-Framework, eingestellt.
Auch wenn zuvor der Support für die Symfony 4-Komponenten sichergestellt wurde, müssen sich Projekte nun trotzdem Gedanken machen, wie sie das Framework zukünftig ablösen.
Alexander Turek schildert anhand seiner Migration des OpenCFP-Projekts von Silex zu Symfony 4, wie die Umstellung möglichst reibungsfrei funktionieren kann. Er hat gezeigt, wo Silex von Symfony abweicht und wie man eine Brücke schlagen kann, so dass eine Anwendung mit beiden Frameworks betrieben werden kann.
→ Bewertung auf joind.in & Slides

Using Symfony Forms with Rich Domain Models

Die Speaker Christian Flothmann & Christopher Hertel

Christopher und Christian von SensioLabs haben in ihrem Talk eine neue Lösung für eine Fragestellung vorgestellt, die immer wieder in Symfony Projekten auftaucht. Mehr und mehr Teams bevorzugen mittlerweile Rich Domain Models gegenüber anemischer Models. Diese Models, die häufig mit der Gestaltung einer Anwendungen nach den Prinzipien des Domain-driven Designs einhergehen, lassen sich allerdings nur über Umwege als Datenmodell eines FormTypes nutzen. Entweder muss mit DTOs oder DataMappern zusätzlicher Glue Code geschrieben oder Kompromisse beim Design des Models eingegangen werden. Das neu veröffentlichte Rich Model Forms Bundle löst dieses Problem mit der Implementierung neuer Form-Optionen, die eine Lösung auf Basis der DataMapper generalisieren. Ermöglicht wird dies durch die Erweiterung der Symfony Form Komponente. Dadurch wird die Flexibilität beim Aufruf lesender und schreibender Methoden erhöht, immutable Value-Objekte und Named-Constructor möglich und durch Exceptions können Formular-Fehler übersetzt werden.
→ Bewertung auf joind.in & Slides

Besucherspezifische Inhalte rasend schnell mit HTTP-Caching und Sulu

Thomas Schedler von Sulu auf der SymfonyLive in Berlin.

— “I really love the Varnish Configuration Language!” said no one ever — hat Thomas Schedler auf einer seiner Slides stehen. Um VCL den Schrecken zu nehmen, führt er die Zuhörer sehr detailliert durch seine mitgebrachten Beispiele. Damit zeigt er auf, wie es in Sulu möglich ist, verschiedenen Benutzergruppen unterschiedliche Inhalte auszugeben und diese weiterhin zu cachen. Nach seiner ersten Einführung in das HTTP-Caching, Symfony’s HttpCache und Varnish, hat Thomas nicht nur Informationen für Einsteiger zu bieten, sondern konnte auch erfahrenen Entwicklern zeigen, wie sich durch Optimierungen eines Proxy Caches die Serverlast minimieren lässt.
→ Bewertung auf joind.in & Slides

Die nächste SymfonyLive wird noch größer!

Im September treffen wir uns im MOA Hotel Berlin wieder. Diesmal für volle vier Tage! Darf man nicht verpassen? Finden wir auch. Tickets gibts hier.

--

--