IPC 2009: Erster Tag

by Michi on November 17, 2009

Ich war leider erst zum Mittag da, so dass ich so gerade noch in die Keynote Speech von Zend zum Thema „PHP in the cloud“ rutschen konnte. Der Vortrag war vom Ansatz her interessant, bot aber irgendwie keine konkreten Empfehlungen oder Ideen. Die erste richtige Session war „Continuous Inspection and Integration of PHP-Projects“ von Sebastian Bergmann und Stefan Priebsch. Es ging dort grob um automatisches deployment und Testing von Software. Wer sich schon mal mit dem Thema auseinander gesetzt hat, wird einiges wiedererkennen und sich nur wenig überrascht oder erleuchtet fühlen. Interessant aber das Tool „PHP Copy&Paste Detection“, dass sich beispielsweise in einen CI-Server integrieren lässt. Es erkennt Code-Dupletten, die zu inkonsistentem Code führen und diesen unnötig aufblähen.
Mitgenommen habe ich auch das Zitat

„Gute Tests ersetzen Dokumentation“

Die Aussage deckt sich ein wenig mit meinem momentan vorherrschendem Konflikt bei der Frage, ob Dokumentation gut oder böse ist („Guter Code muss nicht dokumentiert werden“).

In der folgenden Session ging es um Messaging mit XMPP („Building Real-Time Applications with XMPP“ von Travis Swicegood). Ein wirklich spannender Vortrag rund um XMPP (also Jabber), dessen Anatomie und Funktionen (presence, message, Info/Query) gut erklärt am Beispiel von Twitter. Zwar wurde in dem Vortrag faktisch gar nicht auf PHP bzw. eine mögliche, konkrete Implementierung eingegangen, die Idee wurde aber klar und ich werde sicherlich einmal mehr darüber nachdenken, Prozesskommunikation (oder sogar Synchronisierung) über XMPP abzuwickeln.

Die letzte Session des Tages „Event-Driven-Architecture“ von Benjamin Eberlei war eigentlich eine gute Ergänzung zu dem XMPP-Thema. Es dauerte zwar, bis das „Worum-gehts-eigentlich“ Problem verschwand, nach dem es aber klar war, dass hier auf Observer-Patterns eingegangen wurde, konnte ich ein paar interessante Ideen abgreifen. Viel neues Erfuhr man leider auch hier nicht, aber von der Messaging-Lösung „Gearman“ hatte ich bisher noch nicht gehört. Sollte man sich unbedingt mal anschauen, wenn man bestrebt ist, Aufgaben, die nicht direkt bei Ausführung erledigt werden müssen, in einen Hintergrund-Prozess auszulagern. Ich hab da schon ein paar Ideen entwickelt 😉

Soweit die Zusammenfassung des ersten Tags.

Leave your comment

Required.

Required. Not published.

If you have one.



Piwik encoutered an error: Uncaught exception 'Exception' with message 'Piwik and/or some plugins have been upgraded to a new version. --> Please run the update process first. See documentation: http://piwik.org/docs/update/ ' in /var/www/stats.mail.feinbier.net/html/plugins/CoreUpdater/CoreUpdater.php:73 Stack trace: #0 [internal function]: Piwik\Plugins\CoreUpdater\CoreUpdater->dispatch() #1 /var/www/stats.mail.feinbier.net/html/core/EventDispatcher.php(141): call_user_func_array(Array, Array) #2 /var/www/stats.mail.feinbier.net/html/core/Piwik.php(701): Piwik\EventDispatcher->postEvent('Request.dispatc...', Array, false, NULL) #3 /var/www/stats.mail.feinbier.net/html/core/FrontController.php(306): Piwik\Piwik::postEvent('Request.dispatc...') #4 /var/www/denkweite.de/html/wp-content/plugins/wp-piwik/classes/WP_Piwik/Request/Php.php(38): Piwik\FrontController->init() #5 /var/www/denkweite.de/html/wp-content/plugins/wp-piwik/classes/WP_Piwik/Request/Php.php(16): WP_Piwik\Request\Php->call('method=SitesMan...', 'http://stats.ma...', ' (which lead to: Session must be started before any output has been sent to the browser; output started in /var/www/denkweite.de/html/wp-includes/formatting.php/5075)