Dates in 2016

January 30, 2016

New versions of PHPUnit that add new functionality are released bi-monthly. These releases do not break backwards compatibility, making it easy to stay up-to-date. PHPUnit 5.0, however, had to break backwards compatibility in October 2015 to support PHP 7. We will discuss how PHPUnit had to be adapted for PHP 7, how PHPUnit benefits from PHP 7, what additional changes PHPUnit 5.0-5.2 have brought, and we'll close with a look ahead to PHPUnit 6.

More details

February 19, 2016

Today, dependency management in PHP projects is done using Composer. While this makes perfect sense for libraries, managing the toolchain via Composer will lead to the installation of all the dependencies of these tools. Not only is this slow, but it will also mix them with your project's runtime libraries. And even though most tools are available as a fully self-contained and executable PHP archive (PHAR), installing and updating them manually is everything but fun. If only there was a way to automate this ...

More details

New versions of PHPUnit that add new functionality are released bi-monthly. These releases do not break backwards compatibility, making it easy to stay up-to-date. PHPUnit 5.0, however, had to break backwards compatibility in October 2015 to support PHP 7. We will discuss how PHPUnit had to be adapted for PHP 7, how PHPUnit benefits from PHP 7, what additional changes PHPUnit 5.0-5.2 have brought, and we'll close with a look ahead to PHPUnit 6.

More details

PHP gives developers a great deal of freedom to achieve their goals. In larger-scale projects, PHP also provides you with a lot of rope to hang yourself with, and short cycles of rapid development can quickly turn into years of maintenance nightmare. We will discuss five rules that every PHP developer and aspiring craftsman should know and stick to.

More details

February 22, 2016

Implementing the business logic of your application in the object-oriented fashion requires more than knowing your favorite framework inside out and extending a controller base class. In this two-day event, your trainers Sebastian Bergmann, Arne Blankerts, and Stefan Priebsch will explain to you how to avoid tight coupling to the framework and hidden dependencies. You will learn how to successfully develop business logic in a decoupled, tested and extensible way. Following the domain-driven design approach we will develop a fully tested application that is easy to embed into your framework of choice. Reserve your seat today! Don't miss the opportunity to join this highly interactive and entertaining training event with lots of hands-on coding! Make sure you bring a laptop with PHP as well as your favourite IDE!

More details

February 24, 2016

When Node.js made its first appearance in 2009 many declared that to be the end of PHP. Yet today, about 6 years later, both environments are very much alive and kicking! Even better: Combining the two may very well be the answer to the needs of the next generation of web applications. This talk will introduce you to a system- and software-architecture that combines Node.js, PHP and Redis into a truly powerful web stack.

More details

New versions of PHPUnit that add new functionality are released bi-monthly. These releases do not break backwards compatibility, making it easy to stay up-to-date. PHPUnit 5.0, however, had to break backwards compatibility in October 2015 to support PHP 7. We will discuss how PHPUnit had to be adapted for PHP 7, how PHPUnit benefits from PHP 7, what additional changes PHPUnit 5.0-5.2 have brought, and we'll close with a look ahead to PHPUnit 6.

More details

February 26, 2016

Time to market is crucial. And new features are more important than doing things right on a technical level. Developers may not be happy with this perspective, but often fail to convince decision makers to think different. In this talk, we analyze what the hidden costs of rapid software development are, and work out strategies to make those costs visible to decision makers.

More details

May 12, 2016

Long gone are the times when developers had to wait years to get their hands on new versions of PHP itself and tools such as PHPUnit. The PHP project releases a version with new features every year and the PHPUnit project every eight weeks. Join Sebastian Bergmann, creator and maintainer of PHPUnit, for a recap of what is new in PHP 7.0 and PHP 7.1 as well as PHPUnit 5 and PHPUnit 6.

More details

May 28, 2016

Patient 7.0 was released into the wild 28 weeks ago. How many hosts have successfully been infected and how far has it spread? Was it an isolated outbreak or is it turning into a pandemic? A look back at seven months of PHP 7.

More details

May 29, 2016

Over the last decade the idea that we should test our applications has slowly made its way from a niche idea to the mainstream of PHP development. With many tools and approaches to testing now available it can be difficult to choose which ones to use. In this talk we will explore the current landscape of PHP testing practices, look at the different tools and approaches available, and find out how we can decide which are best for our project, team, and context.

More details

May 31, 2016

PHP 7 is an imperative programming language that supports procedural as well as object-oriented programming. It has limited support for functional programming and language extensions for aspect-oriented programming exist. PHP 7 is dynamically, implicitly, and weakly typed but supports explicit typing and strict type checking when desired. But what does this all mean? Join Sebastian Bergmann on a whirlwind tour through the interesting land of programming language design principles and find out just what a great language PHP is.

More details

When Node.js made its first appearance in 2009 many declared that to be the end of PHP. Yet today, about 6 years later, both environments are very much alive and kicking! Even better: Combining the two may very well be the answer to the needs of the next generation of web applications. This talk will introduce you to a system- and software-architecture that combines Node.js, PHP and Redis into a truly powerful web stack.

More details

Today, dependency management in PHP projects is done using Composer. While this makes perfect sense for libraries, managing the toolchain via Composer will lead to the installation of all the dependencies of these tools. Not only is this slow, but it will also mix them with your project's runtime libraries. And even though most tools are available as a fully self-contained and executable PHP archive (PHAR), installing and updating them manually is everything but fun. If only there was a way to automate this ...

More details

June 01, 2016

PHP gives developers a great deal of freedom to achieve their goals. In larger-scale projects, PHP also provides you with a lot of rope to hang yourself, and a short cycle of rapid development can quickly turn into years of maintenance nightmare. We will discuss five rules that every PHP developer and aspiring craftsman should know and stick to.

More details

June 02, 2016

When PHP turned 20 last year, the core developers presented us with a really nice birthday present: version 7, released in December 2015. 28 weeks later, PHP 7 is being used for development or even in production by a growing number of companies. This day will get you ready for PHP 7, in all aspects. Sebastian Bergmann, creator of PHPUnit, will take you on a tour through the history of the PHP project. Find out where PHP originates from, and how it became one of the most widely used programming languages in the world. Why is there no PHP 6, and which crucial role did Facebook play? You will also take a look under the hood of PHP to better understand why PHP 7 can offer better performance and lower resource usage than PHP 5, and how this will affect the future of PHP. Arne Blankerts, security and infrastructure expert, will go in-depth about the installation and deployment of the PHP software stack. He will make the point why LAMP is no longer en vogue, and introduce you to some state-of-the-art alternatives. You will learn how to better scale PHP 7 and find out how you can smoothly transition from PHP 5 to PHP 7 from a sytem architect's point of view. Stefan Priebsch, a leading PHP consultant and coach, will show you how to get your codebase ready for PHP 7. How can you leverage new features in legacy projects without having to rewrite everything from scratch? To prepare you for the big migration, common pitfalls will be covered, and you will get to know pragmatic solutions. He will also look at the business impact of PHP 7. The day is rounded up with a Q+A session where no question will go unanswered, and we will open up the room for discussions.

More details

October 23, 2016

When PHP turned 20 last year, the core developers presented us with a really nice birthday present: version 7, released in December 2015. Less than a year later, PHP 7 is being used in production by a growing number of companies. This day will get you ready for PHP 7, in all aspects. Sebastian Bergmann, creator of PHPUnit, will take you on a tour through the history of the PHP project. Find out where PHP originates from, and how it became one of the most widely used programming languages in the world. Why is there no PHP 6, and which crucial role did Facebook play? You will also take a look under the hood of PHP to better understand why PHP 7 can offer better performance and lower resource usage than PHP 5, and how this will affect the future of PHP. You will learn about the new language features introduced in PHP 7.0 and PHP 7.1. Arne Blankerts, security and infrastructure expert, will go in-depth about the installation and deployment of the PHP software stack. He will make the point why LAMP is no longer en vogue, and introduce you to some state-of-the-art alternatives. You will learn how to better scale PHP 7 and find out how you can smoothly transition from PHP 5 to PHP 7 from a sytem architect's point of view. Stefan Priebsch, a leading PHP consultant and coach, will show you how to get your codebase ready for PHP 7. How can you leverage new features in legacy projects without having to rewrite everything from scratch? To prepare you for the big migration, common pitfalls will be covered, and you will get to know pragmatic solutions. He will also look at the business impact of PHP 7. The day is rounded up with a Q+A session where no question will go unanswered, and we will open up the room for discussions.

More details

October 24, 2016

Though we "believe" in testing and "know" it helps deliver better quality code, many of us struggle to incorporate testing into our daily work. Why? And how do we get both technical and non-technical stakeholders not only on the same page with regards to delivering quality software but also actively involved in the process? In this session, Sebastian Bergmann, creator of PHPUnit, and Jeffrey A. "jam" McGuire, Evangelist, Developer Relations at Acquia, discuss how adopting and consistently applying testing to software development delivers better results at a lower overall cost and how the benefits of testing accrue over time.

More details

Granted, having multiple services that share a common login without re-authenticating for every request may seem like a rather complex task. One that seemingly can only be solved by rather complex solutions like OAuth or SAML. Luckily it doesn't necessarily have to be your only choice: this talk will demonstrate how easy it can be to set up a single sign-on proxy with nginx, some simple Lua scripting, and PHP.

More details

October 25, 2016

The new feature is finally ready! All that's left now is getting it to production. But who will have to get up at 3 am this time? Hopefully a downtime of one hour will be enough, but if anything goes wrong it might even take us two to get everything working again. If that sounds familiar, we have good news for you: it doesn't have to be this way! With the right tools at your hand automating any kind of deployment will be as easy as pushing a button. No matter if you want to update your linux distribution, roll out your own application or make configuration changes – your operation system's package management will empower you to manage even the most complex environment with ease.

More details

TLS, HSTS, CSP, XSS, HPKP, and nginx or just WTF? This talk will help you to take your webserver setup to the next level: learn what all those acronyms actually mean, why you should care, and how to tweak your nginx configuration to make use of all those important security features to protect your environment as well as your users.

More details

A few years ago, we built rather monolithic, database-centric systems with thin clients, and did not even feel uncomfortable with them. Then, thanks to the rise of JavaScript, clients became thicker and thicker. And when microservices came along the way, our software became more and more distributed. Somewhere along that road, pretty much everything on the server side turned into a REST API. Has REST become the new SQL? A controversial discussion from an architectural point of view.

More details

October 29, 2016

Long gone are the times when developers had to wait years to get their hands on new versions of PHP itself and tools such as PHPUnit. The PHP project releases a version with new features every year and the PHPUnit project every eight weeks. Join Sebastian Bergmann, creator and maintainer of PHPUnit, for a recap of what is new in PHP 7.0 and PHP 7.1 as well as PHPUnit 5 and PHPUnit 6.

More details

October 30, 2016

For years, the concepts and ideas of open spaces and unconferences have become ever more popular in the PHP community. High time to adapt them for full-day, in-depth workshops! Join Sebastian Bergmann, the creator of PHPUnit, for this participant-driven training experience. Based on the interests and questions of the attendees we will create an agenda that may span from fundamental and generic testing-related topics (code coverage, stubbing, mocking, etc.) to very specific topics such as how to test controllers for Symfony- or Zend Framework-based applications as well as custom extensions for Drupal, Magento, or Wordpress.

More details

December 14, 2016

Die richtige Software entwickeln. Das Richtige testen. Zum richtigen Zeitpunkt. Mit dem passenden Werkzeug. Diese Punkte sollten Softwareentwickler nicht aus den Augen verlieren, wenn sie nachhaltige Anwendungen entwickeln und diese mit angemessenem, wirtschaftlichen Aufwand testen wollen. In diesem Vortrag gehen wir daher unter anderem den folgenden Fragen nach: Was will ich testen? In welchem Rahmen muss ich es testen? Wie formuliere ich den Test?

More details