All Sessions
Premature Optimization Mistakes
Ilia Alshanetsky
Centah Inc.
02.06.2010 | 09:40 - 10:40
One of the thing that many people want to have is fast code as it allows handling of more data/clients with less resources, saving money and improving your overall efficiencies. However, premature optimization can often result in broken code, enormous amount of wasted time and missed deadlines. This talk will not only explain the common errors, but also offer easy performance solutions.
The Cake is a Lie
Sebastian Bergmann
thePHP.cc
31.05.2010 | 09:15 - 10:15
Even if you have not played the game "Portal" you might have come across the phrase "The cake is a lie". According to the Urban Dictionary, it roughly translates to "your promised reward is merely a fictitious motivator". Scaffolding, the meta-programming method of building software applications, promises easier development and a faster time-to-market. But the "code generation bliss" can lead to problems later on, for instance with regard to maintainability and scalability. This sessions takes a sceptical look at frameworks such as CakePHP and Symfony.
Building a PHP Preprocessor with Plain PHP
Arne Blankerts
thePHP.cc
31.05.2010 | 15:15 - 16:15
Ever wished to have a preprocessor for PHP? Now you can! In this session we will implement a simple yet powerful preprocessor using the streamwrapper technology that works out of the box on any PHP installation. This opens up a whole new world of possibilities like annotation parsing, AOP, or dependency resolution in PHP development - all transparently done in the background.
High Gear PHP with Gearman
Felix De Vliegher
Ibuildings
01.06.2010 | 11:15 - 12:15
Gearman is an application framework for distributing work to other machines and processors which are better suited for the job. It can be used in a variety of applications, from high-availability web sites to the transport of database replication events. In other words, it is the nervous system for how distributed processing communicates. With things like scalability and distributed computing becoming more and more important to today's web applications, Gearman and its PHP interface can prove quite useful to us in a variety of situations. In this talk, we'll first have a look at what distributed processing exactly means, and then looking at what Gearman actually is and does, and how it can power up your application using its PHP interface. By showing different examples and application area's, you'll get a good feeling of what Gearman is capable of and why it can be a valuable asset to your next PHP project.
Just married: Zend Framework and Doctrine
Benjamin Eberlei
direkt effekt GmbH
31.05.2010 | 09:15 - 10:15
Zend Framework and Doctrine 1 are bundled in many applications although no formal integration between both existed up to now. This talk shows how we integrated both Doctrine as a possible modelling layer for the latest Zend Framework release and merged together the combined wisdom of both communities. An in-depth preview of Doctrine 2 and ZF integration completes the topic of this talk.
Eclipse - PHP Tool Integration
Sven Kiera
TWT Interactive GmbH
31.05.2010 | 10:30 - 11:30
Es stehen immer neue und mächtigere Tools zur Unterstützung der Entwicklung von PHP-Projekten zur Verfügung. Doch leider fehlt hier oft eine Integration in einer der bekannten IDEs. PHP Tool Integration (PTI) versucht als Erweiterung für Eclipse diese Lücke zu schließen. Der Vortrag zeigt Ihnen, wie Sie mittels dieser Erweiterung unter anderem PHP_CodeSniffer, PHP_Depend und PHPUnit direkt in Eclipse nutzen können.
A better Approach for File System dependent Tests
Frank Kleine
1&1 Internet AG
02.06.2010 | 15:45 - 16:45
Have you ever been annoyed by testing classes or functions operating on the file system? Be it tests that rely on presence of physical files, the problem of not cleaning up correctly after the test run, or checking that your algorithm creates the correct directories and files with correct file permissions. Then this is for you: vfsStream to the rescue!
Frontend-Performance mit PHP
Frank Kleine
1&1 Internet AG
Nico Steiner
1&1 Internet AG
01.06.2010 | 08:30 - 09:30
Mehr und mehr entscheidet sich die Performance von Webanwendungen nicht mehr auf dem Server, sondern im Browser des Users. Die Session zeigt auf, warum nicht nur PHP-Performance eine Rolle spielt, sondern was wirklich zu einer schnellen Website beiträgt und welche Hilfsmittel man in der PHP-Welt zur Verfügung hat.
Create clean Code with Aspect-oriented Programming
Robert Lemke
TYPO3 Association
02.06.2010 | 14:30 - 15:30
OOP helps us creating a clearly laid out and intuitive model of the reality by means of objects. However, concerns like security, logging or transactions need to be implemented virtually anywhere, resulting in scattered error-prone code. Aspect-oriented Programming separates these cross-cutting concerns from the rest of the code and lets you handle them in a well-known, central location.
Real-time Communication Techniques with PHP
Scott Mattocks
OnForce, Inc.
Chris Lewis
02.06.2010 | 15:45 - 16:45
This talk looks at the advantages and disadvantages of three different techniques for dynamic content updates: short polling, long polling, and WebSockets. These techniques allow web developers to provide users with a fluid experience that keeps pace with their expectations.
Asterisk und PHP - wenn der Webserver 3 mal klingelt
Hans-Christian Otto
01.06.2010 | 14:30 - 15:30
Der Name Asterisk fällt, wenn man nach einer leistungsstarken, Enterprise-fähigen Telefonanlage sucht. Diese Session stellt Asterisks Schnittstellen in den Mittelpunkt und beantwortet die Fragen, wie PHP eingesetzt werden kann, um eine Brücke von bestehender Software zum Telefonnetz zu schlagen. Das Hauptaugenmerk wird hierbei auf Anwendungsfälle aus dem Einsatzgebiet von CRM-Systemen gelegt.
Von Continuous Integration zu Continuous Deployment
Manuel Pichler
31.05.2010 | 16:45 - 17:45
Diese Session beschäftigt sich mit Continuous Integration, einem Thema, das in den vergangenen Jahren immer stärkere Beachtung findet. Häufig wird der CI-Server aber nur als Cronjob verwendet, obwohl der Einsatz dieser Technik wesentlich mehr Vorteile bietet. Hierbei betrachten wir unterschiedliche Szenarien, von Multiprojektumgebungen, automatisiertem Tagging, bis hin zum Continuous Deployment.
Extreme Performance with Joomla!
Mitch Pirtle
Spacemonkeylabs, LLC
01.06.2010 | 09:45 - 10:45
Mitch is a Joomla! founder and was chief architect on some of the world's highest-traffic websites powered by Joomla!. This session outlines the approaches taken, best practices, and lessons learned along the way to launching sites for MTV, Food Network and Gilt.
Going NoSQL with MongoDB
Mitch Pirtle
Spacemonkeylabs, LLC
01.06.2010 | 16:00 - 17:00
Relational databases are central to web applications, but they have also been the primary source of pain when it comes to scale and performance. Recently, non-relational databases (also referred to as NoSQL) have arrived on the scene. This session explains not only what MongoDB is and how it works, but when and how to gain the most benefit. Mitch is a MongoDB contributor and author.
CSS/CSRF/HTML5 reloaded - Hands-on
Frank Ruske
Mayflower GmbH
02.06.2010 | 08:30 - 09:30
In dieser Hands-on-Session zeigen wir anhand von Beispielen live, wie gefährlich XSS und CSRF wirklich sind. Wie können Intranets "gehackt" werden? Kann man die Same Origin Policy umgehen? XSS und Bufferoverflows? Welche Gefahren kommen zusätzlich mit HTML 5 und den neuen Web Sockets, die es erlauben, dass ein Server zu jedem Zeitpunkt Daten zum Browser schickt?
23 Dinge, die Sie über Softwareentwicklung in Teams wissen sollten
Stephan Schmidt
1&1 Internet AG
02.06.2010 | 14:30 - 15:30
Komplexe Applikationen werden von Teams konzipiert und implementiert. Dabei sind die technischen Herausforderungen die geringsten Hürden, die Sie meistern müssen. Nur Teams, die erfolgreich zusammenarbeiten, können erfolgreiche Applikationen entwickeln. In dieser Session lernen Sie 23 wichtige Tipps, die Ihr Team erfolgreicher machen können. Der Referent leitet eine Abteilung mit 35 Mitarbeitern.
Scaling MySQL Writes through Partitioning
Philip Tellis
Yahoo!
01.06.2010 | 16:00 - 17:00
MySQL is fast for most applications, but if you require a sustainable high rate of inserts, you soon cross the innodb_buffer_pool_size and start hitting disk IO. This talk will show you how to sustain a high insert rate over hundreds of millions of records using partitioning in MySQL 5.1
Integrating PHP with RabbitMQ
Alvaro Videla
The NetCircle
02.06.2010 | 15:45 - 16:45
AMQP is raising as an industry standard to achieve interoperability between complex systems. Now we can exploit the benefits of this protocol in PHP thanks to several libraries and the easy to deploy RabbitMQ server. I would like to share the experience gained after deploying a queue system for a high traffic german website where our first experiments queued and delivered 400.000 messages a day.
Integrating PHP with Erlang
Alvaro Videla
The NetCircle
02.06.2010 | 08:30 - 09:30
Needless to say, PHP is one of the most popular languages for web development. What could happen if we mix it with Erlang, a language that is ideal for high concurrency and parallelism. In this talk I will explore different ways of integrating those two languages to expand our programming toolkit.
Doctrine 2: Enterprise Persistence Layer for PHP
Jonathan Wage
Sensio Labs
02.06.2010 | 08:30 - 09:30
A presentation on Doctrine 2 for PHP 5.3. Learn a little about why people are using Doctrine and why you should use it for your next project! Doctrine 2 was completely re-written for PHP 5.3 and is a leader in the push for libraries to adopt the latest version of PHP. This version of Doctrine helps bring PHP closer than ever before to the enterprise world.
Reaching for the right Tool
Andrei Zmievski
Analog
01.06.2010 | 09:45 - 10:45
Quick, what do memcache, MogileFS, and Gearman have in common? They are scalable, distributed technologies, and they can also interface with PHP, your favorite Web development language. Many high-profile sites use all 3 for building scalable and flexible architectures. This session will introduce them and cover the latest and greatest features and updates.
Das MySQL-Treibhaus erweitern
Ulf Wendel
MySQL GmbH/Sun Microsystems GmbH
02.06.2010 | 11:10 - 12:10
Blühende Landschaften vermochte der seit PHP 5.3.0 verfügbare "MySQL Native Driver for PHP", eine Alternative zur MySQL Client Library, nicht zu erschaffen. Die mit PHP 5.3.2 eingeführte Schnittstelle für Erweiterungen soll das mittels Guerilla Gardening beheben. Benutzerdefinierte Erweiterungen können alle Treiberfunktionen kontrollieren, beispielsweise als transparenter Proxy für alle APIs.
Surviving Architecture
Lars Jankowfsky
Swoodoo AG
Johann-Peter Hartmann
Mayflower GmbH, SektionEins GmbH
31.05.2010 | 14:15 - 15:00
Jeder Softwaredeveloper hat heutzutage zunehmend mit einer höheren Änderungsfrequenz und sich ständig neu definierenden Anforderungen zu kämpfen. Die Zeiten von allein selig machenden Architekturen sind vorbei - und nur das hinzufügen von Unit Testing löst das Problem leider nicht. Dieser Talk zeigt wie man seine Architekturen auswählt, am Leben erhält und auf die neuen Herausforderungen bei sich dynamisch entwickelnden Webanwendungen anpasst. Zudem zeigen wir, wie wir typische Probleme und Fallen die jeder Entwickler kennt vermeidet.
Lokalisierung mit dem ECMS TYPO3
Daniel Pötzinger
AOE media
01.06.2010 | 14:30 - 15:30
Die Lokalisierung von Webseiten und Applikationen sowie die Abbildung einer geeigneten Lokalisierungsstrategie entwickelt sich schnell zu einer äußerst komplexen Aufgabe für ein international ausgerichtetes Unternehmen. Nicht selten fließen viele Millionen jährlich allein in die Übersetzung von immer wieder auftretenden Inhalten. Das Open-Source Enterprise Content Management System TYPO3 stellt für die Verwaltung und den Betrieb großer, mehrsprachiger Seiten zahlreiche Features und Konzepte zur Verfügung. Diese reichen von mehrstufigen Sprach-Fallbacks auf auf Seiten, aber selbst auf Elementebene bis hin zur Abbildung von externen Übersetzungsworkflows mit 360° Integration zu den wichtigsten Übersetzungsdienstleistern. Der Vortrag stellt die wichtigsten Lokalisierungsfeatures des von TYPO3 anhand von interessante Case Studies wie Cisco Systems vor, darüber hinaus werden technische Details für die Verwendung der Lokalisierung bei eigenen Extensions anhand von konkreten Hilfestellungen vorgeführt.
Better Quality through Scrum
Dominik Jungowski
CHIP Xonio Online GmbH
01.06.2010 | 08:30 - 09:30
Scrum is a popular method of agile development. This session will introduce you to the scrum basics, its set of methods and meetings, and will show you how Scrum will automatically increase the quality of your product and code by encouraging you to implement methods such as refactoring, test-driven-development and fixing bugs immediately.
Caching with Memcached and APC
Ben Ramsey
Schematic
31.05.2010 | 10:30 - 11:30
While many caching mechanisms exist, memcached provides one of the fastest and easiest-to-use caching servers. Coupling memcached with the alternative PHP cache (APC) can improve performance by reducing processing time. In this talk, Ben Ramsey covers memcached and APC, exploring caching strategies, a variety of configuration options to fine-tune your cache, and when to use APC over memcached.
Dependency Injection in PHP 5.3
Fabien Potencier
Sensio
02.06.2010 | 14:30 - 15:30
Developers are getting more professional every day by using web design patterns to solve common problems. This session will introduce a design patterns that can greatly improve the decoupling and the testability of your code: Dependency Injection. I will demonstrate how to use Dependency Injection, and I will take advantage of the PHP 5.3 new features to create a fully-featured DI container live.
Git für Fortgeschrittene
David Soria Parra
SUN Microsystems
31.05.2010 | 12:00 - 13:00
Neben bekannten Open-Source-Projekten wie dem Linux-Kernel, OpenJDK oder PERL setzen auch Unternehmen vermehrt auf dezentrale Versionskontrollsysteme wie Git und Mercurial. Ihre einzigartigen Features geben dem Nutzer einen weiten Gestaltungsspielraum. Der Vortrag wirft einen Blick auf die fortgeschrittenen Features von Git und den konzeptuellen Besonderheiten des DVCS.
Volltextsuche mit Apache Solr
Alexander M. Turek
02.06.2010 | 11:10 - 12:10
Eine schnelle und Volltextsuche mit Relevanzsortierung ist ein Feature, das heutzutage die Google-verwöhnten Besucher der meisten Webseiten implizit erwarten. Als Lösungsansatz soll der Suchserver Apache Solr vorgestellt werden. Die Session soll anhand einiger Beispiele zeigen, wie man Solr in einer PHP-Anwendung verwenden kann, um eine DBMS-unabhängige Volltextsuche bereitzustellen.
PHP inside
Derick Rethans
eZ systems
31.05.2010 | 15:15 - 16:15
Traditionally a web-only language, but that doesn't mean that it can only be used for web applications. This presentation will show you how PHP can be used on embedded devices. I will cover some basics for GUI design, but also cover issues that show up when you have to take care of low-memory, low-bandwidth situations as well as restrictions with input methods.
PHP on the D-BUS
Derick Rethans
eZ systems
01.06.2010 | 08:30 - 09:30
D-BUS is the basis for interfacing to services and hardware on Linux based systems. In this presentation I will be presenting a D-BUS integration to allow PHP to talk to D-BUS aware applications. I will demonstrate controlling Skype from PHP, as well as the implementation of PHP-GTK based applications on the OpenMoko to call, and use the different hardware services it offers, such as GSM and GPS.
Statische Codeanalyse wirklich effektiv nutzen
Manuel Pichler
Jan Schumann
02.06.2010 | 09:40 - 10:40
Diese Session beschäftigt sich mit der Problemerkennung in Softwarearchitekturen. Hierbei geben wir einen Einblick in eines der anspruchsvolleren Themengebiete der statischen Codeanalyse. Anhand verschiedener Kennzahlen und Filterregeln decken wir Schwachpunkte in einer Architektur auf und machen Vorschläge für mögliche Refactorings, ohne zuvor ein Code-Review durchgeführt haben zu müssen.
Tracks
Sessions
- Premature Optimization Mistakes
- The Cake is a Lie
- Building a PHP Preprocessor with Plain PHP
- High Gear PHP with Gearman
- Just married: Zend Framework and Doctrine
- Eclipse - PHP Tool Integration
- A better Approach for File System dependent Tests
- Frontend-Performance mit PHP
- Create clean Code with Aspect-oriented Programming
- Real-time Communication Techniques with PHP
- Asterisk und PHP - wenn der Webserver 3 mal klingelt
- Von Continuous Integration zu Continuous Deployment
- Extreme Performance with Joomla!
- Going NoSQL with MongoDB
- CSS/CSRF/HTML5 reloaded - Hands-on
- 23 Dinge, die Sie über Softwareentwicklung in Teams wissen sollten
- Scaling MySQL Writes through Partitioning
- Integrating PHP with RabbitMQ
- Integrating PHP with Erlang
- Doctrine 2: Enterprise Persistence Layer for PHP
- Reaching for the right Tool
- Das MySQL-Treibhaus erweitern
- Surviving Architecture
- Lokalisierung mit dem ECMS TYPO3
- Better Quality through Scrum
- Caching with Memcached and APC
- Dependency Injection in PHP 5.3
- Git für Fortgeschrittene
- Volltextsuche mit Apache Solr
- PHP inside
- PHP on the D-BUS
- Statische Codeanalyse wirklich effektiv nutzen

