The examples that were used provided what was probably the most coherent explanation of the purpose of (and difference between) Interfaces and Abstract Classes I've seen. It will change the way I work with them in the future. Very good introduction to OOP and PHP's object toolset.
Very good presentation with good examples of the detailed code problems that can be reworked to salvage badly written apps. I would like to see more emphasis on the process that narrows down the prospective trouble areas: the leap from the initial line count / statistics report directly to the direct nosebleed-detail level examination of the code seems to be a pretty broad gap to cross in a single, mostly intuitive step. In other words, after your initial scan of a project, please elaborate more on how you identify which aspects of the code are likely to deserve your initial focus rather than leaping directly into the problem examples themselves.
I enjoyed the talk very much. Thanks!
Even if you think you know it all, I think you'll come out of this talk learning something new. Excellent!
Nice review of security for the web in general.
I enjoyed learning about the subject/observer pattern because it demonstrated the use of SplObserver and SplSubject classes that are not documented in the PHP manual, http://www.php.net/spl. A place with more documentation of the SPL (Standard PHP Library) classes and interfaces can be found at http://www.php.net/~helly/php/ext/spl/main.html.