phpDay 2017
2017-05-12..2017-05-13
Verona, Italy
phpday ·
[phpDay 2017, phpDay 2018, phpDay 2019, phpday PUG Edition 2020, phpday 2020, phpday PUG Edition 2021, phpday 2021, phpday PUG Edition 2022, phpday 2022, phpday 2023, phpday 2024, phpday 2025]
who it's for
php developers, backend developers, Symfony developers, DevOps engineers, engineering managers, open source maintainers, technical writers
topics
PHP 7.1 language features; PHP bytecode static optimization; abstract syntax tree analysis; dockerized unit testing; branching strategies and workflows; Composer dependency management; Kubernetes for container orchestration; feature toggle implementation; JWT authentication patterns; face detection in PHP; recommendation engine implementation; overriding Symfony components
| title | author | length |
|---|---|---|
| Faces | 01m | |
We want to thank all the #phpDay 2017 speakers! You are awesome!! | ||
| Recap | 03m | |
phpDay is aimed to IT managers, developers and innovators. Each year it renews the opportunity to link to new business partners. We'll show new development… | ||
| Code Manifesto | Graham Daniels | 54m |
The industry is grossly lacking diversity and the problem is both a pipeline and a culture issue claiming only 12% of computer science degrees go to women and… | ||
| The most exciting features of PHP 7.1 | Enrico Zimuel | 50m |
Release notes note that PHP 7.1 ships with about 12 new features, 300+ bug fixes, 30 new functions and 56 new global constants and shows concrete behaviors… | ||
| 'Writing code that lasts'...or writing code you won't hate tomorrow | Rafael Dohms | 45m |
Code ages and must be easy to change so it survives: testing gives design confidence, PSR-7 middleware moves validation out of controllers, queues handle slow… | ||
| Static Optimization of PHP Bytecode | Nikita Popov | 45m |
PHP 7.1 adds an SSA-based optimization infrastructure and type inference that enables specialization of opcodes and some constant-folding; the implementation… | ||
| Drupal8 for Symfony developers | Antonio Peric | 42m |
Drupal 8 adopts many Symfony components but not the full stack and uses a dependency injection container as its backbone; routing lives in YAML, controllers… | ||
| The formula to creating awesome docs | Jonathan Reinink | 29m |
Promises a concrete checklist and delivers a runnable toolkit: a live site phppackagechecklist.com and repeatable steps for naming, composer/Packagist… | ||
| Confessions of a Backend Developer | Richard Fussenegger | 27m |
Argues that MVC/ADR leave the model as an ad hoc mess and shows how Clean Architecture (hexagonal/onion) keeps the domain core independent so business logic… | ||
| Climbing the Abstract Syntax Tree | James Titcumb | 41m |
Shows concretely that PHP 7 adds an actual AST between parser and compiler, demonstrates a toy compiler that compiles AST to opcodes and shows measurable… | ||
| Dockerize your unit tests for faster feedback | Michelangelo Van Dam | 49m |
Splits a 10K+ tests suite into module groups and runs them in parallel inside Docker micro instances using phpunit and GNU parallel, dropping end-to-end time… | ||
| Branching strategies: choose wisely to minimise costs | Georgiana Gligor | 49m |
Argument: choosing a branching strategy changes measurable costs across repositories and roles. Evidence: Stack Overflow survey of 16,000 people shows many… | ||
| Managing dependencies is more than running "composer update" | Nils Adermann | 40m |
Explains concrete rules: use composer update with explicit packages and --dry-run to see what will change, update one dependency at a time and run tests… | ||
| Containing Chaos with Kubernetes | Terrence Ryan | 28m |
Shows Kubernetes actually managing desired state: declares counts, pods and replica sets reconcile differences and restart failures (demo kills a pod and it… | ||
| Feature Toggles | Denis Brumann | 27m |
When you develop in a fast cycle and want to continuously deploy or when you have a project with lots of customer specific configurations feature toggles are a… | ||
| Modern PHP Standards and Community | Ben Edmunds | 44m |
Explains concrete changes and practices: PHP 7 makes Exception and Error both implement Throwable so one catch can grab both; recommends using PDO prepared… | ||
| JWT - To authentication & beyond! | Luís Cobucci | 37m |
Explains how Json Web Tokens encode header and claims with base64url not base64, show registered claims count as seven and use iss aud sub iat exp nbf for… | ||
| Face detection in PHP | Michelle Sanver | 31m |
Adds face detection to Rokka.io and hits reality: composer packages detect at most one face, PHP bindings for OpenCV are outdated, and cloud APIs miss small… | ||
| Extremely defensive PHP | Marco Pivetta | 41m |
Argues for concrete rules: no setters and constructor injection so optional dependencies disappear and tests stub fakes or null objects; prefer value objects… | ||
| A recommendation engine in your PHP applications | Michele Orselli | 29m |
An online bookshop prototype uses Prediction.io with an events server and engines (Universal Recommender template) to record view/like/add to basket/purchase… | ||
| Using Open Source for Fun and Profit | Gary Hockin | 43m |
A tiny three-character fix plus copied unit tests added gets merged the next day and becomes the hinge for a career shift: PHP sites, a counter‑strike clan… | ||
| How to open source a PHP package | Jonathan Reinink | 34m |
Walks through a practical PHP Package Checklist with concrete steps: Composer and PSR‑4 autoloading setup, semantic versioning and changelog practices… | ||
| The Science of Code Reviews | Rick Kulpers | 39m |
A concrete claim: code reviews top testing for improving quality according to the SmartBear survey of ~600 professionals, and local survey results show 96% of… | ||
| Overriding Symfony in a million ways | Sarah Khalil | 37m |
Claims that every Symfony default is replaceable and backs it with concrete edits: renaming directories (app → easy_publish), changing getCacheDir/getLogDir… | ||
| A bird's eye view on API development | Frederick Vanbrabant | 41m |
Explains concrete rules and examples: when to return 201 and 202 status codes, how PUT differs from PATCH and why to send a Location header on POST rather than… | ||
| nothing matches | ||