PHP Developer Days 2018 - By the community for the community

10/7/18

The journey to the PHP Developer Days in Dresden actually started in 2017 for me, when Holger Woltersdorf, one of the PHPDD organizers, asked me if our German Podcast PHPDevRadio wants to participate at the coming PHPDD in 2018. After I contacted the initiator of the podcast about the invitation, it became part of the conference's side events and led to an awesome and worthwhile time for myself. But what makes this conference in Dresden so special?

Dresden, the city of the PHPDD

A community-driven conference


First of all, this event was created by the community of the PHP User Group in Dresden, which is a main difference to most of other conferences. So this one was planned and executed by a PHP community for the community and compared to last year's event, they wanted to push it even further this year. Every attendant got a nice goody bag with lots of swag in it from sponsors that included a lighter, some magazines, sweets and stickers. As for the program, the two days of the PHPDD were each unique in their way: The first day was dedicated to several parallel running workshops while the second day offered different talks from speakers well known to in the PHP environment. Because the workshops had some restrictions about the number of participants, the first day was supposed to have less people who joined the fun and were paid separately from the second day. Some of the workshops were sold out and even the other workshops had a room full of attendees, ready to learn about new topics and work to gain more experience. Each workshop had a different atmosphere because of the variously approaches how the trainers lead through the chosen topics. Some trainers used a step by step approach to share their expertise, experience and knowledge to the audience. This offered the participants a chance to copy these steps to create a duplicate of example projects, while others preferred to follow the changes of every step with interest to get more involved into the process itself. Other trainers prepared multiple exercises, where everyone had to finish tasks before the next one was presented to the eager developers.

The workshops had a wide variety of topics starting with Event Sourcing over to Event Storming, Security, Testing and Pentests. I had the chance to take a look at some of what the trainers had to offer. There was no need for a notebook or other technical devices in the Event Storming session, where the participants had to use sticky notes for depiction of multiple events and processes while the colors of each note had its own meaning. At first, the group had a lot of random positioned notes at a board and each represented an event. But after some discussions and much thought that were put into their work, a lot of processes came to light, showing that they were working on "How to organize a conference". Event Sourcing, easy to confuse with the previous workshop by name, was about creating a project from scratch, that handled different events and wrote them into a history. Developers are usually saving data of a current state, but here they collected every step of changed data, which was an append only approach. Something got deleted? New data was saved that contained the information which data was deleted. The created project had only ~410 lines of code in the end. The workshop simply named Hack this Workshop about security was kind of reverted. Instead of making an application safer, the participants had the job to hack a site and manipulate data by exploiting forms and other attack angles. One of the tasks was about rising the votes for a picture of an ugly cat. Talking with the attendees made it clear to me that they had much fun with the funny challenges. The testing workshop was about Test Driven Development, where changes of code were supposed to be covered by already existing tests. Every task in that workshop brought the audience closer to the benefits of TDD and how bugs could be prevented during refactoring. Sadly I wasn't able to join every workshop, but I was able to observe a lot of content and information on this first PHPDD day.

Jenny Wong on her keynote about German user groupsOn the second day, the conference talks day, all the other visitors of the PHPDD came for some interesting talks and for networking with the community and the speakers. We all had a lot of time between the sessions to meet and greet each other, talk about what's currently a hot topic in the world of PHP or just to have fun. Beverages, coffee and tasty food were served at the breaks too, so no one had to starve between sessions. The sponsors had some booths and tables and got the chance to get in contact with the people and also were part of a gamification, which offered many awesome prices. Each attendee got a chip on the name tag, that could be used to register on each booth to show that every place, that was part of the game, got visited. After an introduction and welcome to all attendees by Holger, a keynote by Jenny Wong was next on the schedule. She talked about the efforts that are put into creating, maintaining and running local User Groups in such a manner, that some of the audience only realized now how much work can pile up for the organizers of such meetups. This also puts organizers of a conference like the PHP Developer Days into a new light. Her talk wasn't only filled with just German PHP UG history, numbers and facts, but also with quotes from some of the User Group's organizers, which gave her talk a much more personal touch. Jenny's amazing pronunciation of all the German city names made this keynote enjoyable, because this may be the first time some people heared about all the PHP groups in Germany. As by now, this was the best talk about User Groups I had listened to and not just because I gave her requested input as the co-organizer of the PHPUGKA. At this point I want to thank Andreas Heigl for mentioning, that Jenny had asked questions to all German (co-)organizers on the PHP UG Slack Channel a day before her talk and, of course, my thanks to Jenny herself for prominently praising the work of User Groups. Was this all about the keynote? No, she also made in an interactive attempt all the participants with a Twitter account use the hashtag #PHPDD18 to rise the awareness on how visitors can support User Groups and conferences. As far as I can tell, her idea brought the PHPDD into the Twitter trends for some time. Way to go, Jenny.

James Titcumb talking about PHP Abstract Syntax TreeAfter the keynote, the two parallel slots for the talks began and everyone had to chose where they wanted to learn about new technologies, processes and other PHP related topics. I'm sure the decision wasn't always easy for everybody. The various topics contained information about profiling, application metrics, Kubernetes, the PHP AST, SPL, asynchronous request processing and more. I was able to visit some of the talks and enjoyed how the speakers provided the content of their talks to the audience. Some interacted greatly with the people, showed examples that are explaining use cases for "real world" code or just lighten up hard topics with some funny jokes. The speakers answered the questions after each talk that came up during their sessions and were reachable for everyone after their performance. The organizers made sure that there was enough time for further networking with the speakers and even the workshop trainers on both days.
In one case a speaker wasn't able to join us at the Developer Days, but when a lot of capable developers are present, then there will always be an adequate replacement on site. In this case it was Stephan Hochdörfer and he brought us a talk about Gitlab CI build pipelines. Another evidence that community works.

Community is not just about listening to talks


When you visit a conference like the PHPDD, you would do a grave mistake by just visiting some talks and believing this is the best way to learn. You have to be in the middle of the community to not only get valuable information, but also to meet new people, new ideas, new solutions and to have fun. If you're really serious about improving yourself by visiting conferences, it is in my opinion mandatory to join and be part the community and the PHP Developer Days of 2018 was one of those places, where this could be done to the fullest. I really enjoyed those two days, where I was able to meet friends and familiar faces again, that I usually can't because of long distances. This was a great opportunity for me to finally meet James Titcumb and Jenny Wong, but also to have some very great and informative interviews with some speakers and trainers. A big "Thank You" for the PHPDD team, who wanted me to be at the conference and gave me an unforgettable time at the venue. They put a lot of effort into this, were always there to help, to answer questions and worked hard to give us two awesome (developer) days.

If you want to see more impressions about the PHPDD 2018, you can take a look at what others shared about the PHPDD 2018 on Twitter.

If you want to read more about PHPDD experiences, you can take a look at the blog post of Matthias Gutjahr.


About Claudio Zizza
I'm working as a software developer for more than 15 years and used many coding languages and frameworks during that time, like PHP (of course), ASP, .NET, Javascript, Symfony, Laminas and more. I also contribute to the open source communities and am a part of the PHP Usergroup in Karlsruhe, Germany.
Follow me on Twitter (@SenseException)