November 11, 2007
UPDATED: I added the following three talks to the post. If you know any other presentation which is accessible and is missing from here, please notify me! TIA
Beautiful code with AOP and DI – Robert Lemke
This was a really great presentation, watch out: you will be infected! Robert shows us advanced programming concepts such as DDD (Domain Driven Design), AOP (Aspect-Oriented Programming), DI (Dependency Injection). This concepts serves a common aims to produce higher quality, maintainable, flexible software. Robert is the member of the Typo3 5.0 development team, and they are using this methods in their every day work. If you are interested in this topic you can find useful information in their home page or you should read the Bibles :
Enhanced StreamWrappers – Frank Kleine
This talk is about a really cool and unfortunately rarely used PHP feature: PHP streams. Frank will shows you how you can create custom stream wrappers, and some useful and advanced examples how you can use them.
Eclipse Hands On to development – Bastian Feder
Bastian’s mini talk is about how to integrate external tool to Eclipse. He is now setting up his blog, so you can download his presentation from my blog.
Tales from the eXtreme side | Lars Jankowfsky
Practising Agile Development for Beginners | Lars Jankowfsky
Lars had an other interesting session about agile development. If you are interested in this topic you should look over the slides because they contain a lot of great information and resources.
Testing with PHPUnit and Selenium | Sebastian Bergmann, Max HorvÃ¡th
This is a comprehensive talk about testing web applications. You can get information about the different type of tests, in which situation are they usable. It shows you the evolution from inline test codes to using complex testing tools and running the test automatically. Sebastian and Max present a very detailed example (a bowling game) how to develop an application using the TDD (Test Driven Development) methodology, how to organize your test suites. Then they talk about more advanced topics: software metrics, Selenium, testing object interaction (mock objects), database testing.
PHP Design Patterns | Stephan Schmidt, Frank Kleine
Unfortunately the slides are in German, but I think it would be a great workshop, you can through the slides and maybe you will find some interesting information crumbs as I did.
Common challenges in SQL apps | Lukas Smith
Lukas Smith (PEAR::MDB2) talks about general database and SQL (un)patterns. His presentation touches on topics like: schema design (data types, normalization, trees, queues etc.), indexes and constraints (over indexing, covering indexes, full text indexes, foreign key etc.), SELECT magic (optimization, using CASE statement, pivot tables, random ordering, ranking etc.), data changes (SQL injection, optimistic locking, MVCC, smart transactions, CSV import/export etc.) It is worth studying this presentation I am sure that you will find a lot of interesting points (which maybe will you guide to further reading/research).
Putting Phing to Work for You | Hans Lellelid (Propel, Phing)
Hans talks about Phing (what a surprise about the title ). He deal with the following topics in his presentation: phing basics, creating a first build file, transforming directories and files, performing PDO tasks, gathering user input, building phpdoc, running unit tests, integrating with Continuous Integration tools, using PHP code in a build file, building a simple task, writing more complex task, creating a shared type, custom filters, custom selectors, custom loggers/listeners, input handlers.
PHP6 – A look ahead | Stefan Priebsch
Stefan talks about the new features of the upcoming PHP 6. It is worth running trough the slides, because a lot of feature originally planned for PHP 6 will be part of PHP 5.3 which will be released in early
PHP Tools and Automation | Stefan Priebsch
This talks enumerate a lot of tools which a developer may need to working effectively and to automating repetitive tasks: Subversion, Webdevloper Toolbar, Firebug, xDebug (KCachegrind), Eclipse – PDT, PHPDocumentor, PHPUnit, Selenium, XPather, PHP CodeSniffer, PHP CompatInfo, PHP Beautifier, phing, Virtual Machines, CruiseControl.
RegExp – Magic with text | Kore Nordmann
Support for regular expressions advanced a lot with PCRE 6 and 7. After an introduction into the basics of regular expressions this session covers the recent additions like recursive patterns and conditional subpatterns.
Diving into symfony | Dustin Whittle
This is a talk about the symfony framework, which is a full featured PHP application framework, supports the full development lifecycle. You can get an in-depth introduction about all parts of symfony.
Propel Your PHP Applications | Hans Lellelid (Propel, Phing)
This talk introduces the Propel PHP ORM tool. It shows you an overview of Propel, a typical work cycle, then you can get some more in-depth usage and advanced features.
Phing: Building with PHP | Hans Lellelid (Propel, Phing)
Generating PDF using XSLT and FPDF | Thomas Weinert
Generate PDFs from XML content using XSLT/FPDF gives you several new features. You can add covers, create multicolumn pages, change the page orientation depending on the content and more. All in your corporate design.
A JSR-283 CR in pure PHP | Karsten Dambekalns
A Content Repository (CR) allows the storage and retrieval of arbitrary content as nodes and properties in a tree structure. The API for using a CR is standardized in the JSR-170 and JSR-283 specifications. The Typo3 team decided to port the JSR-283 specification as a part of the new Typo3 5.0 project. You can read about this work in this presentation.
Hands on eZ Components | Tobias Schlitt
If you follow this slides you can get an impression of the power of eZ Components. It is worth being familiar with possibilities of this library, any time you could need them.
A Workflow Engine for PHP 5 | Sebastian Bergmann
Workflow Management (WfM) is becoming more and more important. For the development and maintainance of software that supports workflows, a new layer on top of the base programming language is needed. Graph-Oriented Programming (GOP) is such a layer. This session presents the eZ Components’ workflow engine, its possible applications and the underlying principles and techniques.