Enums: The Missing Data Type

Talk by Andy Snell

PHP may not have a native data type for an Enumerated Type like other programming languages, but there are other solutions we can leverage to represent a member of a set of values. We’ll see how representing things like statuses with enums provides immutability, improved readability, and type safety — preventing the kind of errors …

Web Application Security Trends

Talk by Christian Wenz

Every web developer should know about typical attacks such as SQL Injection, Cross-Site Request Forgery, or Cross-Site Scripting. And even though those risks still exist, the bad guys worked on finding new twists to old attacks, or even find new kinds of vulnerabilities on a web site. In this session, we will show and discuss …

A speed date with Alice and Bob

Talk by Andreas Heigl

Alice and Bob are the protagonists of so many cryptographic tutorials. And at least for me those tutorials where most of the time very cryptic. But encryption and digital signatures are part of our everyday duties so wouldn’t it be great to understand what we are doing there? At least to a certain extend? So …

Centralized Logging Patterns

Talk by Philipp Krenn

Most organizations feel the need to centralize their logs — once you have more than a couple of servers or containers, SSH and tail will not serve you well any more. However, the common question or struggle is how to achieve that. This talk presents multiple approaches and patterns with their advantages and disadvantages, so …

Effective Code Review

Talk by Dave Liddament

There are so many benefits from code review; lower development costs, increased code quality, quick up-skilling and on-boarding of team members. Despite these benefits many teams don’t have code review as part of their process at all. Others don’t get the gains they should from it. This talk first outlines the business case for code …

Keep your are architecture clean

Talk by Simon Mönch

You are tired of documenting yours application architecture in wikis? You want an updated definition with your source code changes? You want failing continuous integration pipelines on violations? I will show how you could track your application layers, enforce rules between them and document your definitions within your repository.

RAFT: A story on how clusters of computers keep your data in sync

Talk by Joshua Thijssen

We all know that having a single-point-of-failure is not something you want, but dealing with multiple machines doing the same thing at the same time takes a lot of coordination. How do they keep your data in sync while dealing with things like network outages, incorrect data or systems lagging behind in time? It’s not …

Distributed Domain Destruction – Adventures in building distributed systems

Talk by Srdjan Vranac

For the last couple of years, I have been building, maintaining, and fighting projects that make use of distributed computing, parallel processing, message brokers, queues, and workers. This is one of those “from the trenches” talks, where I will regale you with tales about the series of unfortunate events that may happen as your application …

Map, Filter, and Reduce in PHP

Talk by Derek Binkley

Even though Map Reduce was created for parallelization, which PHP does not natively support, the syntax is supported. In this article I will outline how to use map, filter, and reduce with PHP collections and the benefits you can gain over traditional for loops. In this talk we will explore different methods of processing and …