PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Web Developer Conference 2012 – Tag 1

with one comment

4:30 Uhr aufstehen, das kann nur einen Grund haben: Konferenz! Ich bin zum ersten Mal auf der Web Developer Conference WDC 2012 in Hamburg, organisiert von web & mobile developer.

Bereits um halb 9 bin ich im Sofitel Hotel, man sieht direkt dass es sich um ein Luxus-Hotel handelt, sehr teure Autos stehen am Eingang und alles ist voll mit Marmor, goldenen Lampen und teuren Teppichen. Am Check-In treffe ich auch Nils von phphatesme, und nach kurzem Schnack setzen wir uns in den großen Saal für die Keynote von Fabien Potencier über Symfony und die Wiederverwendbarkeit von Code.
Es liegt zwar das Credo “erfindet das Rad nicht neu, nutzt existierenden Code und verbessert/ändert ihn”, trotzdem kommt mir das ganze hauptsächlich vor wie eine Einführung in die Symfony Components und das Webframework. Fabien hat aber auch einige nette Geschichten auf Lager: Twig wurde inspiriert von Jinja2, Monolog übernimmt die Grundstruktur von Funktionalität von Logbook, und Assets baut Webassets nach. Der Framework-Ersteller erzählt dass er versucht auf Konferenzen immer in Buchläden zu gehen und interessante Bücher zu kaufen, auch in Sprachen die er nicht versteht und die er nicht lesen wird, aber er liebe Bücher und das darin versteckte Wissen.
Ein leises Raunen geht durch die Reihen als er sagt “Drink less beer, read more books, read more code”. Fabien berichtet davon wie er aus dem Buch “Spring in Action” die Idee der Dependency Injection und der Dependency Injection Container lernte und auf PHP ummünzte, und damit die Einführung von DIC aller aktuellen Frameworks startete.
Zum Schluss zeigte er noch im Detail wie man HTTP-Foundation, HTTP-Kernel und HTTP-Cache nutzen kann. Insgesamt für mich etwas zu wenig Inspiration und zu viel Eigenwerbung.

Die erste richtige Session behandelte das Thema “Komponenten für eine stabile Webarchitektur “. Leider hat mich die Session ziemlich enttäuscht, über eine halbe Stunde wurde die Geschichte des Arpanet/Internet, des HTTP-Protokolls und dem Beginn des AJAX-Siegeszug ausführlich dargelegt. In der Gegenwart angekommen wurde von HTML5-Features, CSS3, JQuery, SASS und Compass berichtet, leider sehr wenig interessantes neues bis auf SASS+Compass von dem ich nur wenig vorher gehört hatte. Ich muss zugeben dass ich fast eingeschlafen wäre nach der kurzen Nacht.

Deutlich interessanter war der nächste Vortrag über das jWebSocket Projekt. jWebSocket bietet häufig gebrauchte Funktionen rund um WebSockets, der Server enthält häufig genutzte Features und Module wie Echtzeit-Chat, Echtzeit-Monitoring, Echtzeit-Spiel (Ping-Pong), Echtzeit-Zeichnen mit anderen und so weiter. WebSockets bieten Vorteile gegenüber den Krücken die aktuell noch eingesetzt werden wie Long-Polling oder Comet, intern arbeitet jWebSocket auf Serverseite mit einem Tokensystem und Filtern. Werde ich mir auf jeden Fall noch mal näher anschauen, es sieht so aus als sei es eine gute Basis auf die man eigene Module aufbauen kann und so schnell zu Ergebnissen kommen kann.

Nach dem Mittagessen bot Andreas Hucks eine Symfony 2 Einführung an, aufbauend auf der Keynote am Vormittag. Da ich Symfony 2 noch nicht genutzt habe und ich es näher mit dem Zend Framework 2 vergleichen wollte, besuchte ich die Session und wurde nicht enttäuscht. Beispiel-Code aus der Praxis, Dependency Injection, Routing, Templating, Forms, vieles gleicht der aktuellen Zend Framework Version. Für jemanden der das Framework bereits nutzt war sicher nicht viel neues dabei, für mich war es jedoch genau richtig um einen Überblick zu bekommen.

Als nächstes wurde das Tool Fiddler 2 vorgestellt, vorranging ein HTTP Debugging Tool und Proxy geschrieben in .NET, aber mit sehr vielen Zusatzfunktionen, die ein sehr mächtiges Tool an die Hand geben das weit über Firebug hinausgeht. HTTP Requests und Responses können weggeloggt, verändert, exportiert, importiert, wiederholt und simuliert werden. Auch HTTPS Verbindungen können einfach abgefangen werden via Man-In-The-Middle (das falsche Zertifikat muss man dann natürlich annehmen), es können Scripte in Javascript und C# geschrieben werden, es gibt kaum etwas was Fiddler in Bezug auf HTTP nicht beherrscht. Es verändert automatisch die Proxy-Einstellungen der Browser und Applikationen auf dem Rechner, sodass keine manuelle Einstellungen nötig sind damit sich Fiddler dazwischen hängt. Neue Requests können einfach zusammengeklickt werden, sehr ausführliche Statistiken können angezeigt werden, und der Content der HTTP-Antwort kann hilfreich angezeigt werden, beispielsweise als JSON- oder XML-Baumstruktur, oder Javascript mit Syntaxhighlighting. Mit FiddlerCap gibt es auch eine Mini-Oberfläche mit der z.B. Kundenbei gefundenen Fehlern den HTTP-Traffic mit 3 einfachen Klicks  aufzeichnen können, einfacher geht es nicht.

Zum Abschluss des Tages gab es eine Übersicht der Features und Anforderungen, die an unternehmensinterne Suchen gestellt werden. 10-25% der Zeit verbringen wir täglich damit Informationen zu suchen, und so will man in einem Unternehmen die verschiedenen Ressourcen auf einer Seite durchsuchbar machen. Es müssen mehrere Datenquellen indiziert werden wie Produktdatenbanken, das interne Telefonbuch, Fileshares, Dokumente aller Art sowie die Aufbereitung der Ergebnisse (Fotos von gefundenen Personen anzeigen, Produktvorschaubildchen).
Es gibt aber noch weitere Dinge zu beachten, wie den Zugriffsschutz nach Rollensystemen, komplexe Suchparameter wie Verknüpfungen, Rechtschreibkorrektur, semantische Anreicherung (verwandte Themen), Fuzzy-Search, Mehrsprachigkeit, Wortstammbildung, Abrisstexte, der Bewertungsalgorithmus nach dem der Score berechnet wird. Die Suche muss ständig getunt und verbessert werden, Crawler und custom Importer müssen geschrieben werden, das Feld ist riesig.
Anhand von Lucene mit dem Solr-Aufsatz wurde kurz auf Schemata eingegangen, Beispielcodes in PHP präsentiert, sodass mit einer SolrClient-Klasse der Index gelöscht, befüllt und abgefragt werden kann. Angelehnt an die Praxis ein toller Talk, der klargemacht hat wie komplex dieses Thema ist wenn man es richtig machen will.

Morgen um 9 geht es weiter!

Written by Michael Kliewe

September 18th, 2012 at 12:29 pm

One Response to 'Web Developer Conference 2012 – Tag 1'

Subscribe to comments with RSS or TrackBack to 'Web Developer Conference 2012 – Tag 1'.

  1. […] – Der praktische PHP Blog Web Developer Conference 2012 – Tag 2without commentsNach dem ersten Tag folgt natürlich noch der zweite Konferenztag der Web Developer Conference in Hamburg, hab es erst […]

Leave a Reply

You can add images to your comment by clicking here.