DPC: About the tutorial day
Last time I blogged about DPC, we were still waiting for some speakers to confirm their presence. Now I can tell you that the schedule is complete (with some of the more recent additions: Sara Golemon with talks on HHVM extensions and types, and Christopher Pitt on functional programming and automation). Don't forget to buy your tickets - Early Bird prices are available until April 22nd!
Now it's time to shine a bit more light on the tutorial day, right before the main conference days (on June 23rd). We have made quite a broad selection of topics:
One of our senior developers, Scato Eggen, will guide you through the process of "growing an application" using Behat and PHPSpec. You will be applying "principles of Hexagonal Architecture and BDD" (Behavior-Driven Development) all day long!
In the morning Philipp Krenn will give you a practical overview of what's possible with the so-called "Elastic Stack", consisting of Elasticsearch, Logstash and Kibana.
Containerizing PHP Applications: Beyond the Basics
Another full-day tutorial is the one by Victor Farazdagi. It will be a deep-dive workshop in which you'll learn how to containerize every part of your PHP application. Beyond using containers for development, Victor will show you how to deploy, connect and load balance them as well.
In another morning tutorial Derick Rethans is going to provide some theoretical background for understanding and working with "modern distributed (NoSQL) databases". You'll learn about the CAP theorem and its practical implications as well as architectural considerations.
Basic CQRS and Event Sourcing with Prooph
Marco Pivetta and Jefersson Nathan will teach you the basics of CQRS and Event Sourcing by showing you how to build an application on top of the Prooph framework. They are going to show you how CQRS and ES "massively simplify" some of your biggest software development problems.
Migrating PHP extension from PHP 5 to PHP 7
Even though many PHP developers just write PHP code, some of us write PHP extensions every now and then. At the internal API level much has changed between PHP 5 and 7 so if you currently maintain a PHP 5 extension, it has "to be patched for PHP 7, whatever it is". Julien Pauli, who has a lot of knowledge about PHP's internals, will teach you all about the migration process in this full-day workshop.
Lightning fast tests
Testing your software requires a strategy. With the wrong strategy you'll end up with a very slow and fragile test suite. Jakub Zalas knows all about it and will help you in this morning tutorial to prevent bad things from happening. With some modifications to your project's structure you'll end up with "lightning fast tests"!
After lunch Christopher Pitt invites you for some meta-programming: you'll learn how to create a compiler. That sounds like a daunting task, but Chris will help you take the "series of small steps" that are needed to actually implement a (programming) language.
Get started with Graph Databases and Neo4j
In another afternoon tutorial Christophe Willemsen will teach you everything about Neo4j. You'll learn how to model graphs and create graph databases. Of course Christophe will also teach you about Cypher, "Neo4j's powerful query language".
Message oriented architectures with RabbitMQ
Finally we'll have Mariusz Gil doing a tutorial on message oriented architectures, teaching you how to split a monolithic PHP application into multiple services, and reconnecting them in a loosely coupled way. Mariusz will show how RabbitMQ can be used as message broker in such a message oriented architecture.
Code Night & Secret surprise workshop
At the end of the tutorial there will be a Code Night - the details of which will be disclosed soon. We're also working secretly on another afternoon workshop which will be free of charge. Expect some more details soon!
Take a look at the schedule for more details on the tutorials and talks and don't forget to buy your tickets in time!