Frustbewältigung


Dienstag 11.September.2012, 8:50 von Mario

Auf Wunsch und zur Frustbewältigung eines einzelnen hier nicht genannten Freunds der Familie und glühenden St. Pauli Verehrers: http://www.schubert-raus.de

Für mich mit dem angenehmen Seiteneffekt, mal Bootstrap und Silex einem Praxistest zu unterziehen und auf ihre RAD Fähigkeiten hin zu überprüfen. Den Test hat das Gespann auf jeden Fall bestanden, einmal Lübeck – Hamburg und zurück mit der Bahn und fertig.

Und wer weiß, vielleicht baue ich dem Herrn Yildirim, seines Zeichen Trainer beim VfB Lübeck, auch gleich eine Seite, da siehts im Moment auch nicht besser aus :-).

Fussball, die zweitschönste Nebensächlichkeit der Welt.

International PHP Conference Spring Edition 2011 – Mittwoch


Mittwoch 01.Juni.2011, 22:51 von Mario

Keynote: Das digitale Paradies und seine Sklaven, Gernot Pflüger
Der Mittwoch beginnt mit einer Keynote von Gernot Pflüger, der mir bis dato zwar gänzlich unbekannt war, aber die in seiner Keynote popagierte Wirtschaftsdemokratie mit flachen Hierarchien, alle Mitarbeiter bekommen das gleiche Gehalt, etc. hat mir ganz gut gefallen. Alles in allem gings dann aber doch ein wenig ausschweifend durch zu viele Aspekte des Lebens. Ein Satz sollte zumindest im Sinne nicht unzitiert bleiben: „Secondlife ist das Ruhrgebiet des 21. Jahrhunderts, was soll vor dem Hintergrund bloß mal aus Facebook werden?“ Großartig!

Hidden features of PHP, Ilja Alshanetsky
Ein Dauerfeuer an interessanten und weniger interessanten Features und PHP Extensions die Ilja vorgestellt hat. Klasse vorgetragen, aber ob der Fülle fehlte mir ein wenig die Tiefe, irgendwann verliert man den Faden. Hängengeblieben sind aber mindestens 2 Dinge, zum einen gibt es eine von Ilja geschriebene Library PHP-Excel, welche anstrebt Exel-Reader und Excel-Writer zeitgemäß zu beerben. Weiterhin xhprof ein lightweight PHP profiler, der angeblich auch in Live Umgebungen eingesetzt werden kann, da er nur wenig Resourcen benötigt. Mein Tip: Einmal die Slides überfliegen und die Keywords für den späteren Gebrauch indexieren.

Doctrine NoSQL, Benjamin Eberlei
Da ich mich bis jetzt nur theoretisch mit NoSQL Datenbanken beschäftigt hab, begreife ich diesen Talk für mich als eine Ergänzung meines theoretischen Wissens über NoSQL. Darüber hinaus hat Benjamin aber auch einige allgemeingültige Dinge über Doctrine2 und die Unterschiede zwischen OR(Objekt-Relational) Mappern und OD(Objekt-Dokument) Mappern im Doctrine2 Kontext vorgestellt, die mein Bild insgesamt weiter abrunden.

Keynote: Der virale Faktor, Martin Oetting
Auch Martin Oetting verzichtet, wie auch Gernot Pflüger, auf eine Powerpoint Präsentation, ein Trend, der zumindest bei Vorträgen, die im wesentlich als gedankliche Anregung zu verstehen sind, durchaus zu begrüßen ist. Sehr gekonnt referiert er Anektdoten wie z.B. Marketing Manager die ohne mit der Wimper zu zucken zwar 25 Millionen Euro für eine 4-wöchige werbliche Dauerbeschallung Deutschlands auf allen konventionellen Werbekanälen ausgeben, aber anschließend überfordert sind, 19 schlechte Meinungen auf Facebook über das entsprechende Produkt in sinnvolle Relation zu setzen und dementsprechend maßlos überragieren. Vieles von dem was Martin sagt, klingt schlüssig, einzig die Behauptung er könne ohne Probleme ca. 3000 Social Network Freunde/Kontakte ernsthaft und gut handhaben, will ich nicht so recht glauben.

Fighting Layout Bugs, Michael Tam
Eigentlich fast aus der Verlegenheit heraus geboren, da nichts anderes superinteressantes auf dem Plan stand, bin ich ohne besondere Erwartung in den Talk von Michael Tamm gegangen, quasi um mal ein wenig in das webinale Programm hineinzu schnuppern. Was mich dort allerdings erwartet hat war goße Klasse, auch wenn der Präsentationsstil etwas eigenwillig war. Nach kurzem Vorgeplänkel ging es im wesentlichen um einen Selenium Test Treiber, entwickelt von Michael Tamm, welcher im Zusammelspiel mit verschiedenn Javascript/CSS Kniffen Probleme bei Webseiten Layouts automatisiert erkennen kann. Klasse Sache das!

Code, don’t click!, Lukas Smith
Lukas Smith beginnt seine Talk mit schmunzelndem Drupal gebashe, welches seiner Meinung nach gut für einfache „one-click“ Installationen ist, aber grausam für Entwickler. Im folgenden geht es um die Architektur des kommenden Content-Managment-Frameworks (CMF) für Symfony 2, welches als universelle Plattform für die Entwicklung von Symfony 2 basierten Content Management Systemen dienen soll. Was sich bis hier schon nach ein wenig Namedropping anhört, wird im Anschluss noch etwas heftiger. Als Datenspeicher für das CMF wird eine eigene Entwicklung präferiert, welche grob der JSR-283 Spezifikation folgt, sich PHPCR ODM nennt und im wesentlichen einem Java Content Repository entspricht aber „php-ified“ ist. Ja, da schlackern einem die Ohren :-).
Ein spannende Entwicklung in jeden Fall und es bleibt abzuwarten, ob es am Ende wirklich noch soviel schlanker und einfacher ist wie die, in dieser Hinsicht, gerne mal geschähte Java Welt.
Und was in jedem Fall auch wichtig ist, die Entscheidungen für die Architektur sind gefallen, allerdings fehlen noch wesentliche Teile der Implementation.

Real World Dependency Injection, Stefan Hochdoerfer
Zum Abschlus der IPC 2011 habe ich mich dann nochmal eine Thema gewidmet, welches in der Vergangenheit eigentlich schon relativ umfassend erörtert wurde. Ich denke für die zugegebenermaßen wenigen Newbies im Talk, DI ist offensichtlich in den Köpfen angekommen, war das ein souverän gehalten Vortrag, aus dem man einen Menge mitnehmen konnte.

Verbleibt mir nur noch ein kurzes Fazit: Spaß hats gemacht und ich nehme vielen Anregungen mit nach Hause. Die vielleicht spannenste Frage hat meiner Meinung Lukas Smith auf dieser Veranstaltung aufgeworfen: Ich bin wirklich gespannt, ob sich eine doch recht komplexe Architektur wie sie vom Symfony CMF angestrebt wird, in der PHP Welt durchsetzen wirdin der Breite durchsetzen wird. Ich freue mich auf die Antworten, vielleicht schon nächstes Jahr auf der IPC.

International PHP Conference Spring Edition 2011 – Dienstag


Mittwoch 01.Juni.2011, 0:20 von Mario

Der Dienstag beginnt erst mal mit anständig ausschlafen, was trotz allem nicht geholfen hat, denn um 9 Uhr gerate ich gänzlich unvorbereitet in die Keynote „Warum freie Daten wichtiger sind als fliegende Autos“ von Julia Schramm. Das ist wohl die Dame die in letzter Zeit so viel als Datenschutzgegenerin zitiert worden ist, vermute ich zumindest mal. Alles in allem eine doch recht mäßige Vorstellung, die vom Blatt abgelesen klang, um zu zitieren: „ein äh … Spaß!“, war das leider nicht. Schade, weil ich eigentlich Stefan Priebsch gerne hätte hören wollen mit seiner Keynote.

JavaScript Tools, Wolfgam Kiesing

2. Tagesordnungpunkt für mich Wolgang Kiesings Zusammenstellung von Javascript Development Tools. Da waren zum einen die üblichen Verdächtigen dabei, aber auch für mich gänzlich neue Dinge wie eine web-basierte IDE namens Cloud9, die ganz interessant aussah. Anschließend noch ein paar Ideen für Javascript minifying, wobei ich hoffe, das es dabei um Ideen für automatisches Minify ging und nicht händisches „optimieren“ des Codes, das war mir nicht so deutlich herausgearbeitet, aber hoffentlich selbstverständlich. Weiterhin der Hinweis, mal über den klassischen Weg der Dokumentation hinaus zu denken und sich Dinge wie beispielsweise dojodocs anzusehen. Schöne Anregung für mich war es auch, mehr auf der Firebug Console zu machen, Stichwort „in Place Fixing“, um sich Reloads und elendig lange Clickpfade zu sparen. Das ist ja nun nicht so das das alles neu wäre, aber irgendwie schleifen sich da gelegentlich doch schlechte Manieren ein.
Empfehlenswert auch die Hinweise bezüglich Testing mit Jasmine und Jellyfish, am besten mal in den Slides nachlesen, 63 an der Zahl, das dürfte bis jetzt Spitze sein, jedenfalls was die Talks angeht, die ich gesehen hab.

HTTP is the architecture, Tobias Schlitt und Kore Nordmann
Souverän vorgetragen und anschaulich erklärt was GET, POST, PUT, HEAD etc. tun oder eben nicht tun sollten, mit der Conclusion: App servers usally suck! Da HTTP stateless ist und im Sinne der Scalierbarkeit nichts geshared werden sollte. Perfekt für beispielsweise die interne Storageanbindung(z.B. Couch DB, oder andere DBs) mit REST Interface.
An dieser Stelle könnte man dann noch gleich einen ähnlich qualitativ hochwertigen Vortrag über REST anschließen, dann wäre das ein rundrum gelungenes Package.

Keynote Your Users Will Be Mobile Soon, Prepare!, Zeev Suraski
Zeev Suraski zeigt im wesentlichen sein vergammeltes Telefon von 2010 und eine schöne Livedemo einer einfachen PHP mobile App via Flex for PHP, keine Gewähr für die Bezeichnung, aber ich denke man kann sich da auch so etwas drunter vorstellen. Spannend dran: Der Cross-Compiler welcher Flash zu nativem iOS Code compiliert, so man iPhone / iPad als Zielplattform wählt.

Continious Integration with Jenkins, Sebastian Bergmann
Guter Vortrag, der eigentlich weit über den Titel hinaus ging, da über Jenkins hinaus auch die komplette Toolchain für Continious Integration angesprochen wurde(phpunit, phploc, pdepend, phpcs, phpmd, phpcpd), Sebastian präferiert da natürlich Produkte aus der eigenen Feder ;-). Während dieser Teil sehr gelungen war, kam mir Jenkins an sich aber etwas zu kurz.

Javascript Best Practices, Martin Ruprecht
Der Vortrag kommt eher langsam in Fahrt und bedient erst mal viele Allgemeinplätze, wie z.B. Namespaces, das fehlende Semikolon, etc. Dann empfiehlt Martin noch den Einsatz von post-commit hooks für die Javascript Validierung via jslint, was natürlich besser ist wie keine Validierung, aber wenn man soweit ist, dann ist mal ja fast schon den halben Weg zu einer Lösung mit z.B. Jenkins gegangen.

Large-scale Data Processing with Hadoop and PHP, David Zuelke
Mein absolutes Highlight des Tages, es hat wirklich einen riesen Spaß gemacht dem David zuzuhören und super toll war darüber hinaus seine ausführliche Live-Demo, bei der er auf seinem „MacBook Cluster“ eine Logfileanalyse durchgeführt hat. Einzig der konkrete Anwendungsfall fehlt mir persönlch im Moment, ansonsten hätte ich wirklich richtig Lust den gelben Elefanten mal anständig über die Platte zu treiben :-).

Zum Abschluss des Tages gab es im Berliner Babylon noch die Preisverleihung des Internet Filmwettbewerbs webcuts, inklusive Vorführung der Filme, dort waren einige wirklich großartige Filme dabei, allerdings war meine Aufnahmefähigkeit doch langsam erschöpft, zumal die Filme im wesentlichen nicht kurzweilige Unterhaltung, sondern eher was fürs Köpfchen waren.

Fazit des 2. Tages: Nachdem ich letztes Jahr so von CouchDB angetan war, kommt nun das nächste super spannende Projekt aus der Map and Reduce DB Ecke wo es kribbelt. Ich hoffe, es ergibt sich da mal die Möglichkeit, etwas zu machen, was über das Spielstadium hinaus geht.