SymfonyLive Cologne 2016 – Ein Tag voller Talks!

19. Mai 2016

Von Michael Thomer – Am 29. April 2016 fand in den Veranstaltungsräumen von KOMED im Kölner Media Park die SymfonyLive 2016 statt. Es war ein spannender und interessanter Tag für Symfony- und PHP-begeisterte Entwickler. Dieser Bericht gibt eine kurze Übersicht über die Eindrücke und die verschiedenen Themen der Konferenz.

WieWP_20160429_18_33_22_Pro wir gleich zu Beginn erfahren haben, war diese Symfony Live die frühste, die je stattgefunden haben soll. Der Grund dafür war schnell gefunden: auf dem Programmplan standen zehn Talks zu verschiedenen Themen, die in einem Track abgehalten wurden. Pünktlich um 8:30 Uhr startete der Tag voller Talks mit der Keynote im nahezu vollständig gefüllten Vortragsraum.

Unter der Überschrift „Superhelden im Porzellanladen“ – die so einiges vermuten ließe – ging es um die Entwickler (= Superhelden) in Unternehmen (= Porzellanladen) und deren Vorstellungen und Erwartungen an einen Job und was einen guten Job ausmacht. Neben den „Standard-Fragen“ in einem Bewerbungsgespräch sind auch Themen wie Rentabilität, Geschäftsmodell, Unternehmensphase, Wettbewerbssituation und Personalstruktur des Unternehmens interessant, um mehr Informationen über das beworbene Unternehmen herauszufinden und sich nicht „im falschen Film wiederzufinden“, wie der Referent Christian Schäfer meint.

Weiter ging es mit dem Vortrag zum Thema „Symfony Forms: Dos und Don’ts“ von Bernhard Schussek. Nach einer kurzen Übersicht zu den Neuerungen der Komponente seit Symfony 2.7 wurden Best Practices und viele kleine Praxisbeispiele aufgezeigt. Besonders interessant waren aus meiner Sicht die Validation Groups für eine partielle Validierung einer über mehrere Forms und Requests übergreifende Entität. Außerdem wurde unbedingt empfohlen Value Objects und Data Transformers zu verwenden. BTW: Symfony bietet mit dem „Form Debugger“ ein tolles Tool zur Analyse von Formularen.

Wie Data-Driven-Development mit echt aussehenden Testdaten erfolgreich aussehen kann, wurde im nächsten Vortrag mit dem Titel „Maßgeschneiderte Testdaten mit Faker und Alice“ von Philipp Rieber verdeutlicht. Mit den gezeigten Tools lassen sich verschiedenste Kombinationen von Testdaten generieren, um so möglichst die Realsituation von Datenbeständen korrekt abbilden zu können. Die Tools lassen sich einfach und schnell in jedes Symfony-Projekt einbinden und sind flexibel erweiterbar.

Nicht nur der Einsatz neuer Tools kann ein Projekt oder ein Entwicklerleben bereichern, sondern auch eine neue Programmiersprache. Bei „Go lernen für einen Symfony Websocket Proxy“ von Benjamin Eberlei wurde zunächst die von Google entwickelte Programmiersprache „Go“ kurz vorgestellt und ein Vergleich zu PHP gezogen. PHP hat die Vorteile der Shared-nothing-Architecture und des integrierten Memory Managements, doch bei asynchroner I/O-Verarbeitung, Threads und hoher Datenverarbeitung kommt die Sprache schnell an die Grenze. Danach wurde mit einer exemplarischen Implementierung eines Websockets mit Go verdeutlicht, wie die angesprochenen Nachteile durch die Verwendung passender Technologien oder Programmiersprachen ausgehebelt werden können.

Im nächsten Talk von Kore Nordmann drehte sich alles um das Thema „Wie wir Code analysieren“. Es stand die zentrale Frage im Raum, wie eine gute und vor allem Tool-gestützte Code-Analyse aussehen kann. Als Tool kam der „Quality Analyzer“ zum Einsatz, der mit Hilfe von Metriken schlecht getesteten, wichtigen und fehlerhaften Code aufspüren soll. Neben den Standard-Metriken wie „Line Coverage“ oder „Path Coverage“ ist vor allem die „CRAP“-Metrik (CRAP = Change Risk Anti-Patterns) interessant, die Aufschluss über schwer zu verstehenden, testenden oder wartbaren Code gibt. Ein Standard-Tool für Codeanalyse von PHP-Projekten ist PHP Depend.

Gute Code-Analysen tragen nicht nur bei der Verbesserung der Qualitätssicherung bei, sondern helfen auch beim Verständnis und der Migration von Legacy-Anwendungen. Bei „Modernisieren mit Symfony“ von Alexander Turek wurde gezeigt, wie Altanwendungen in ein modernes Framework überführt werden können, ohne eine Parallelentwicklung von Alt- und Neuanwendung zu forcieren. Dabei werden neue Komponenten direkt und relevante Komponenten der Altanwendung Stück für Stück in der Neuanwendung umgesetzt.

Für frische Ansätze in der Frontend-Entwicklung sorgte der Talk „Pattern Library meets Symfony“ von Christoph Reinartz. Er und sein Team haben bei Trivago den Styleguide und das komplette Web-Design überarbeitet. Dabei wurde eine Pattern Library erstellt, die verschiedene Web-Komponenten für Entwickler in Packages bereitstellt. Somit konnte die Frontend-Entwicklung nahezu vollständig von der Backend-Entwicklung entkoppelt und das Web-Design mit allen Komponenten standardisiert werden. Bei der Erstellung der Library wurde im Atomic Design-Verfahren gearbeitet, d. h. es wurden Web-Komponenten von „klein“ nach „groß“ designt und zusammengesetzt. Leider kamen bei dem Vortrag die technischen Details (Welche Tools wurden eingesetzt? Wie wurde die Pattern Library technisch umgesetzt?) etwas zu kurz.

Technischer ging es dafür im nächsten Vortrag zu. Christian Flothmann zeigte in seinem Vortrag „FOSRest 2.0“ die Neuerungen in der Symfony-Komponente. Der Hauptfokus lag vor allem in der Umsetzung des Standards RFC-2518. Außerdem wurde Dependency Injection für Controller über Controller Traits ermöglicht. Zuvor mussten Entwickler den FOSRestController erweitern.

Ganz anders als erwartet ging es in dem nächsten Talk mit dem Thema „Open Heart Surgery (In Production)“ zu. Es ging grundsätzlich um das Thema Refactoring und dass bei umfangreichen, komplexen und besonders geschäftskritischen Anwendungen, die unter Umständen, selbst das Kerngeschäft ausmachen. Der Referent Jan van Thoor arbeitet bei Trivago und zeigte wie solche Anwendungen nachhaltig verbessert werden können und untermauerte seinen Vortrag mit vielen (äußerst) schlechten Code-Beispielen auf eine selbst-ironische Weise. Seine Devise bei solchen Unterfangen ist folgende: Zunächst sollte klar definiert sein welche Ziele angestrebt werden (z. B. die Anwendung sollte entkoppelte Elemente enthalten, testbar und leicht erweiterbar sein und eine klare Struktur aufweisen). Dann sollte das eigentliche Refactoring in kleinen Schritten erfolgen und kontinuierlich hinterfragt werden. Außerdem hat er festgestellt, dass eine Software-Architektur, die effektiv gestaltet ist und sich nicht dogmatisch an ein Pattern oder eine bestimmte Struktur klammert, besser funktioniert und ein System nach dem Refactoring aufgrund der Broken-Windows-Theory von selbst „gesund“ bleibt.

Marco Pivetta ging es im letzten Vortrag über das Thema „Doctrine ORM Good Practices and Tricks“ etwas anders an: Er motivierte alle Teilnehmer im Raum dazu mit ihm zusammen fünf Squads zu machen, um dem allmählichen Gähnen entgegenzuwirken. Großartig! Dann begann er seinen Vortrag mit vielen Tipps und Anregungen zur Verwendung von Doctrine. WP_20160513_13_10_41_Pro - KopieUnter anderem sollte seiner Meinung nach immer eine UUID verwendet werden und das Prinzip „Domain First“ gelten.

Abschließend wurden noch die Gewinner der Verlosungen bekannt gegeben. Mein Kollege Frederik Hausberg hatte tatsächlich das Glück das begehrte PHP-Maskottchen „ElePHPant“ und eine Symfony-Zertifizierung zu gewinnen. Hier der Beweis:

Am Ende des Tages blieben viele positive Eindrücke und Anregungen von einer belebten und fast familiären Community und das Warten auf die nächste Symfony Live!

Vaadin: Integrierte Entwicklung von Front- und Backend in Webanwendungen

24. Februar 2013

Lebhafte Diskussionen beim dritten „Wissensdurst“-Vortrag

Wenn bei der Entwicklung von Informationssystemen (z.B. betriebsinterne Web-Anwendungen) Front- und Backend getrennt entwickelt werden, ist dies sehr ineffizient. Problematisch sind beispielsweise

– sehr wenig Code-Wiederverwendung
– Einsatz verschiedener Programmiersprachen
– unübersichtliche Anzahl von verschiedenen Libraries

In seinem Vortrag beschäftigte sich Frederik Hausberg, Software-Entwickler bei Explicatis, mit dieser Problematik. Er hat sich intensiv wissenschaftlich mit der integrierten Entwicklung von Front- und Backend beschäftigt und verschiedene Lösungsansätze verglichen.
Insbesondere der Einsatz von AJAX-GUI Frameworks (AJAX=Asynchronous JavaScript und XML) verbessert die Effizienz der Entwicklung entscheidend, durch den Einsatz nur einer Programmiersprache und einen einheitlichen Entwicklungsprozess.

Folie VaadinDabei sprechen vor allem die folgenden Punkte für den Einsatz des Vaadin-Frameworks, was Frederik Hausberg an einigen live gezeigten Codebeispielen eindrucksvoll belegte:

  • Schnelligkeit (schnelle Reaktion der Benutzeroberflächenelemente, schnelles Speichern und Laden)
  • Benutzbarkeit (einheitliches Design und Benutzung wie eine Desktopanwendung)
  • Entwicklung (komplett in Java, aber auch eigene Add-Ons mit JavaScript oder GWT möglich, klares Datenmodell, schnell verständlich, weite Verbreitung, Open Source)
  • Funktionalität (fast alle funktionalen Anforderungen umsetzbar, viele Add-Ons, basiert auf GWT)

Der Kreis von rund 25 Teilnehmern setzte sich aus Software-Entwicklern verschiedener Unternehmen und thematisch Interessierten aus dem Startup-Umfeld des Gastgebers STARTPLATZ zusammen. Es entwickelte sich eine rege und lebhafte, teils kontroverse Diskussion über die Paradigmen hinter Vaadin und dessen Einsatzmöglichkeiten in Unternehmen sowie die Integration in Projekten.

Vortrag zu Vaadin in der Wissensdurst-Reihe der Explicatis GmbH
Vortrag zu Vaadin in der Wissensdurst-Reihe der Explicatis GmbH

Der Erfahrungsaustausch der Entwickler war gespickt mit teilweise heiteren Anekdoten, drehte sich dabei aber insbesondere um die Vor- und Nachteile des Einsatzes von Frameworks – vor allem Vaadin – in Praxisprojekten. Unterschiedliche Lösungsansätze wurden diskutiert und einige sehr konkrete Herausforderungen konnten gelöst werden.
Erstmals war der STARTPLATZ Veranstaltungsort für einen Vortrag in der Reihe „Wissensdurst“. Teilnehmer und Veranstalter waren rundum zufrieden, die Location entwickelt sich immer mehr zu einem Nukleus der Internet-Pioniere und Entwickler im Kölner Raum.

 
 

Nächste Themen und Termine von Wissensdurst-Vorträgen werden angekündigt unter www.explicatis.com/wissensdurst sowie auf Facebook unter http://fb.com/groups/wissensdurst/

Neue Impulse beim Treffen der Symfony User Group Cologne

4. Mai 2012

Zum ersten Treffen der Symfony User  Group Cologne außerhalb der Räumlichkeiten von Sensio Labs fanden sich rund 25 Entwickler und Interessierte bei Explicatis ein. Nach Smalltalk und einer Führung durch die neuen Räume berichtete Jörn Wagner, Software-Architekt bei Explicatis, von den Neuerungen von PHP 5.4 in Bezug auf Symfony. Er illustrierte seinen Vortag mit praktischen Beispielen und einer Code-Demo.

Anschließend wurde über den Vortrag und rund um PHP und Symfony kräftig diskutiert. Sehr interessant war danach das Get Together, wo sich die Teilnehmer über ihre unterschiedlichen Erfahrungen und Hintergründe austauschten. Dabei entstanden neue Bekanntschaften, alte wurden erneuert und allgemein war der Wunsch nach weiteren Treffs groß. Ort und Termin dafür werden frühzeitig bekanntgegeben.

Schnappschuss vom Treffen:

 

Symfony User Group Köln: Treffen bei Explicatis am 25.4. 2012

13. April 2012

Das nächste Treffen der Symfony-Anwender im Rheinland wird erstmals von Explicatis gehostet. Es findet am 25. April ab 19.00 Uhr in den Räumen der Explicatis GmbH in 50858 Köln, Max-Planck-Str. 6-8, statt. Alle interessierten PHP/Symfony Software-Entwickler sind zu diesem kostenfreien Treffen herzlich eingeladen. Bitte vorher anmelden unter http://www.meetup.com/sfugcgn/events/59239182/

Wie auch bei anderen Treffen von Symfony-Usern ist ein Mix aus Information und Networking geplant. Angedacht ist bisher ein Vortrag von Jörn Wagner (Explicatis) zu Neuerungen in PHP 5.4 (insbesondere Traits). Weitere Themen und/oder Referenten werden hier und bei Meetup angekündigt.

Die geplante Agenda:
19:00 – Get Together
19:30 – Vorträge
20:30 – Networking

„Mobile B2B“-Konferenz der IHK Köln

30. September 2011

Smartphones und andere mobile Endgeräte sind heute die optimale Ergänzung zu Desktop-Computern und Terminals. Über Webseiten, die für den mobilen Zugriff optimiert sind, kann man fast von überallher auf aktuelle Informationen und Daten zugreifen. Dies ermöglicht zeitgemäße Lösungen für Unternehmen, die vom ausgelagerten Arbeitsplatz über Außendienstmitarbeiter bis hin zur interaktiven Community-Ansprache reichen.

Beispiele zur Unterstützung von Geschäftsprozessen durch den Einsatz mobiler Lösungen zeigt René Keller (Geschäftsführer Explicatis) in einem Vortrag im Rahmen der Konferenz

IHK Köln: Mobile B2B – Smartphones und mobile Endgeräte in Geschäftsprozessen

IHK Köln, Unter Sachsenhausen 10 – 26, 50667 Köln

am 18. Oktober 2011, von 10 – 13.25 Uhr

Wir freuen uns über Ihren Besuch!

Link auf die Einladung: http://www.ihk-koeln.de/upload/IHK_Koeln_Einladung_MobileB2B_15351.pdf

Vergleich von Anbietern für Wegwerf-E-Mail-Adressen

7. August 2011

Wer ärgert sich nicht über den täglichen Spam, der es trotz ausgeklügelten Filtern und Vorsicht bei der Adressweitergabe immer wieder ins Postfach schafft?

Je länger man im Internet mit einer E-Mail-Adresse aktiv ist, desto größer wird die Spam-Flut – der Wechsel auf eine neue Adresse ist in den wenigsten Fällen praktikabel. Bisher hatten vor allem Inhaber einer eigenen Domain das Vorrecht, für jeden Dienst eine neue E-Mail-Adresse zu benutzen (z.B. facebook@lieschen-müller.de). Aber auch ohne eigene Domain kann man seine eigentliche E-Mail-Adresse vor ungewollter Werbung schützen. Dazu dienen sogenannte Wegwerfadressen (engl. DEA, disposable e-mail address), die wenig bis keine Einrichtung erfordern und nur begrenzt gültig sind. Mit solch einer Adresse meldet man sich dann bei Internetdiensten an und verhindert so, dass man neben der erwünschten E-Mail „Bitte bestätigen Sie Ihre Registrierung“ mit ungewollten Nachrichten belästigt wird oder dass die eigene Adresse in einer Adressdatenbank landet und weitergegeben wird.

Aber welchen Anbieter soll man wählen, um seine Wegwerfadresse zu erhalten? Hierzu haben wir uns die drei beliebtesten Anbieter angesehen, Mailinator, Spamgourmet und TrashMail. Mehr

Kripo sperrt Kino.to – Interessante Details

16. Juni 2011

Wie am 14.06.2011 in gängigen Nachrichtenportalen (z.B. Heise) entnehmbar war, wurde das größte deutschsprachige Link- bzw. Streamingportal für Filme vom Netz genommen. Seither begrüßt folgende schlichte Nachricht die Besucher der Domain www.kino.to:

Die Kriminalpolizei weist auf Folgendes hin Mehr

Symfony2: Beta2 released

24. Mai 2011

Die zweite Beta von Symfony2 ist endlich erschienen! Die Beteiligung der Community an dem neuen PHP-Framework mit Verbesserungen und zusätzlichen Features war so groß, dass der Releasetermin deutlich verschoben werden musste. Fabien Potencier, der Vater von Symfony, ist begeistert von diesem Engagement. Zwar hat sich der aktuelle Zeitplan bereits um drei Monate verzögert aber so lange kann es ja hoffentlich nicht mehr dauern ;-).

Wir arbeiten bereits mit der neuen Symfony Version 2.0 in Projekten, um bei Fertigstellung von den Vorteilen der Release-Version profitiern zu können. Nähere Informationen zu den Neuerungen und dem Einsatz erhalten Sie in der u.g. Publikation oder durch ein persönliches Beratungsgespräch. Für Ihre zukünftigen Web-Applikationen empfehlen wir Ihnen den Einsatz von Symfony2.

Publikation:

  • Ehmke, C.; Keller, R. (2011): Orchestriert – PHP-Framework Symfony in Version 2.0, in: iX — Magazin für professionelle Informationstechnik, 4/2011, S. 83 – 8

Tools für Storyboards

8. Juni 2009

Heute möchte ich euch von dem Storyboard-Generator „Mockups“ von Balsamiq berichten, der es im Handumdrehen ermöglicht, professionelle Skizzen von Anwendungssoftwareprogrammen oder Webseiten zu erstellen. Mehr

Browser Screenshots erstellen

2. Juni 2009

Um sicher zu gehen, dass entwickelte Internetpräsentationen auf mehr als nur den ggf. lokal vorgehaltenen Browsern und virtuellen Maschinen korrekt dargestellt wird, solltet ihr euch dringend mal das Angebot von http://browsershots.org/ anschauen. Browser Shots öffnen eine URL auf Wunsch in über 100 Browsern bzw. Browserversionen, die auf unterschiedlichen Betriebssystemen laufen und stellt euch einen Screenshot zur Verfügung. Der Vorteil ist, dass auch nicht so verbreitete und ältere Browser dabei sind.

Ältere Posts »