PHP Summit in London

PHP Summit

With all PHP topics, nothing counts more than their practical application. This is why thePHP.cc offers highly interactive and practical workshops. Based on their own specific needs and questions, the attendees decide on the topics that are covered. They experience the development of new code at first hand, following their own agendas rather than those of the three trainers.

The first PHP Summit with workshops presented in English will be in London in May. And these are the workshops:

Update PHP: Leverage New Features and Technologies

Workshop with Sebastian Bergmann

PHP 5.3 and PHP 5.4 help developers in their daily routine with a plethora of relevant improvements. Get to know the innovative features of these new versions and learn how to apply them in practice. Discover the potential of emerging technologies such as memcached or ZeroMQ and learn how they can solve your problems.

Unclean PHP: Identify, Refactor, Avoid

Workshop with Sebastian Bergmann

Sooner or later unclean code becomes a damn nuisance. And not only for the developer who has to maintain it. Changes and extensions make the code more and more uneconomic. Learn how to detect unclean code using static analysis and how to refactor it with testability and maintainability in mind. Learn how to avoid unclean code by applying the SOLID principles and writing sustainable code.

Best Practices: From the Real World for the Real World

Workshop with Arne Blankerts

Of course you can reinvent the wheel every day. You just do not have the time to do so, plus it is no fun, and bugs can creep into the same places over and over again. Clever solutions exist for many bread-and-butter problems that only deviate slightly from already solved ones. This workshop shows the programming concepts to achieve this in a live coding session that is entirely driven by the audience's requests and invites to a discussion of tools and techniques.

Safely Prepared for Errors

Workshop with Arne Blankerts

Programs and websites have errors. Always. They become apparent when users enter wrong, invalid, or unexpected input, when access to the database is suddenly not possible, or when the disk is full. Various approaches to safely handle these and other problems are presented and discussed in this workshop. How to correctly use exceptions, why a custom error handler can be helpful, and what debugging has to do with security – these questions and more will be answered intuitively and vividly.

Object-Oriented Progamming (OOP) in PHP I: Fundamentals

Workshop with Stefan Priebsch

This workshop answers the question what object-oriented programming is all about. It gives an introduction to OOP with PHP that goes beyond the known standard examples. In addition to presenting the fundamental principals of OOP it also highlights interesting features of the Standard PHP Library (SPL) and how they can be applied in practice. In addition to imparting factual knowledge the workshop presents a mindset that allows you to avoid overly complicated approaches.

Object-Oriented Progamming (OOP) in PHP II: Advanced Topics

Workshop with Stefan Priebsch

This workshop introduces attendees that are already familiar with the foundations of OOP to advanced topics such as Dependency Injection, abstract classes, and interfaces as well as best practices for successful object-oriented programming. A live coding session makes the presented techniques tangible. In addition to imparting factual knowledge the workshop shows that good solutions are simple solutions: simple objects are easier to reuse and test – and thus help to avoid mistakes.

Testing PHP Application: Fundamentals

Workshop with Sebastian Bergmann

This workshop imparts the fundamental information and skills for the writing of Unit Tests, Database Integration Tests, Edge-to-Edge Tests, and End-to-End Tests with PHPUnit. You will learn everything you need to know to write, organize, and run tests with PHPUnit.

Testing PHP Applications: Advanced Topics

Workshop with Sebastian Bergmann

Craftily leverage PHPUnit: Attendees of this workshop will learn PHPUnit best practices and field-tested strategies for the introduction of testing measures into legacy projects. A range of examples will help the attendees to develop a sense for hard-to-test code and bad tests. They will learn how to refactor legacy code for testability and how to avoid common pitfalls when writing unit tests.

Insider's Tip XML: Applications the Smart Way

Workshop with Arne Blankerts

XML is the standard language for data exchange on the Web and is concealed from the end user's eyes in many file formats (such as Microsoft Office, for instance). This workshop shows that working with XML can be fun when the transported data is valid and the access leverages efficient APIs. We extend PHP's DOM API with custom methods and implement localization support in PHP during a Live Coding session. The definition of XSD schemas for the validation of XML data as well as the usage of XPath as a query language will be demonstrated. Effective error handling is also a topic.

Tuning for Web Applications

Workshop with Arne Blankerts

He who takes a clumsy path towards a solution will get into trouble he does not want to be in. Usually this happens to the detriment of performance and scalability. This workshop shows uses a plethora of real-world examples to show how you can avoid such bottlenecks in current architectures and superstructures from the get-go. It invites to reconsider and adapt your way of thinking.

Design Patterns I: The Most Important Standards

Workshop with Stefan Priebsch

Why reinvent the wheel every time? The developers of this workshop will get to know important design patterns that have proven themselves especially in PHP-based web applications. Problems that commonly occur in practice will be presented and solutions for them will be coded live. Benefits and drawbacks as well as applications and common implementation mistakes will be presented when the standard design patterns are discussed.

Design Patterns II: Integrating Sophisticated Patterns

Workshop with Stefan Priebsch

The workshop covers topics such as Temporal Patterns, the persisting of objects in relational and NoSQL databases, or Enterprise Integration Patterns. Typical problems are presented and analyzed. The (lesser known) design patterns that are used to solve these problems will provide the attendees with knowledge that is valuable to their daily routine.

Modern Version Control with Git

Workshop with Sebastian Bergmann

Git is a powerful version control system that allows you to reliably manage all changes made to all components (code, configuration, …) of your software. This is the foundation for the continuous integration of your project. This workshop imparts the fundamentals for the usage of Git as well as best practices and processes for the development, release management, and deployment of your software that will make your team noticeable more effective.

Continuous Integration with Jenkins

Workshop with Sebastian Bergmann

When you want to measure and control the quality of your software during development and operation then you can profit from setting up an environment for the continuous integration of your PHP projects. With the combination of dynamic and static testing techniques you automate recurring tasks, stay up-to-date on the state of your software's quality, and minimize risks to your project's success. Attendees of this workshop will learn how to leverage Jenkins for the continuous integration and inspection of their PHP software.

It is best to expect the worst!

Workshop with Arne Blankerts

In times of constant break-in attempts by bored users it makes sense to always expect attacks from the Internet. Even allegedly secure structures provide adept hackers with no opposition worth mentioning. Responsible developers just have to know how hackers would attack their application or infrastructure. This workshop imparts fundamental knowledge and demonstrates in a Live Coding session what CSRF, XSS, or SQL Injections are, how you can make the life of attackers harder, and how effective countermeasures can be implemented.

Attack! What makes attacks on the Web successful

Workshop with Arne Blankerts

Applications are permanently exposed to attacks on the Internet. Attackers do not rest to contrive means and ways to inflict damage. Attendees of this workshop switch sides and attack a Black Box demo application. They learn how attackers gather information, exploit security holes, and take over servers. The workshop imparts knowledge about finding and closing security issues and how to implement countermeasures to attacks.

Framework: Basics in Three Hours

Workshop with Stefan Priebsch

This workshop provides answers to many questions about the structure of web applications and writing testable, maintainable, and extensible code by giving a practical example. Important design patterns and best practices will be demonstrated. Attendee feedback and questions will steer this session. The goal is a better understanding for the main concepts of frameworks.

Why the Tower of Pisa is Leaning

Workshop with Stefan Priebsch

The importance of non-functional aspects for technical decisions is often underestimated or completely overlooked. The more complex the issue is the more likely it is that ignoring the non-functional aspects will result in problems that cannot be solved easily later on. He who thinks about architecture before development solves tomorrow's problems today. This workshop presents various architectural patterns for web applications and also covers current trends such as Distributed Caching, Message Queues, and NoSQL. It introduces the audience to tried and true building blocks that allow the development of highly performant and scalable web applications with PHP.

With a twinkle in their eyes and a dash of fun, Sebastian Bergmann, Arne Blankerts, and Stefan Priebsch explain development methods and tools as well as present trends and concepts. This is efficient learning in a relaxed environment. Take advantage of this uniquely intense form of knowledge transfer at an unbeatable cost-to-benefit ratio and reserve your seat today!