phpday 2022
2022-05-19..2022-05-20
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 engineers, maintainers of legacy PHP applications, software architects, engineering managers, QA and test engineers, open source maintainers
topics
PSR-18 HTTP client abstraction; Pest test runner on PHPUnit; building test suites from scratch; PHPStan strictness and baselines; legacy-to-event-sourcing migrations; CQRS and DDD for PHP; OpenAPI API and client generation; monorepo practices and bounded contexts; Rector automated PHP refactors; CI, parallel testing and pipelines
| title | author | length |
|---|---|---|
| PSR-18: Abstracting HTTP clients in PHP | David Buchmann | 46m |
Defines how to send PSR-7 requests without binding code to a specific client and specifies exact behavior: one method that returns a response or throws… | ||
| PHP's Kitchen Nightmares | Stefan Koopmanschap | 45m |
Keeps focus on specifics: quantify technical debt, run composer update regularly and a security checker in CI, use Rector to automate upgrades, and apply the… | ||
| Introducing PEST: a delightful PHP Testing Framework | Nuno Maduro | 49m |
A lightweight test runner that sits on top of PHPUnit and is installable via Composer, Pest presents a concise API (no classes or boilerplate), an expectation… | ||
| Living the Best Life on a Legacy Project | James Titcumb | 41m |
Argues for refactoring only when business value outweighs risk, using iterative, tiny changes and tests-first characterization to reduce breakage; recommends… | ||
| PHP + ES + CQRS + DDD = ? An integrated strategy | Alessandro Lai | 58m |
Claims a practical path to add DDD + CQRS + Event Sourcing to an existing PHP codebase: use the EventSauce library, serialize events to JSON in a single events… | ||
| Docs or it didn't happen | Milana Cap | 38m |
Argues that documentation makes or breaks open source projects and shows how WordPress handles it: migrated from Wiki to WordPress to stop spam but creates… | ||
| How I sliced your app | Marco Pivetta | 57m |
Argues for starting with a monorepo and splitting code by bounded contexts not layers, shows how to enforce one‑way dependencies with dab track and… | ||
| Never stop learning - curiosity and cross pollination drives innovation | Pauline Vos | 37m |
Stories link concrete inventions and borrowings: a 1941 patent for frequency-hopping spread spectrum uses a player piano roll of 88 frequencies, fails to be… | ||
| Fantastic functions and where to find them | Freek van der Herten | 55m |
Shows concrete hacks and libraries: demonstrates invade using PHP reflection to read private properties and call private methods (works in demo), builds a Fork… | ||
| How to build a test suite from scratch | Armando Caprio, Tobia Zanarella | 24m |
Builds a functional test suite for a Phalcon app using PhpUnit and Phalcon integration, focuses on functional tests over E2E, uses real MySQL with per-test… | ||
| Tuning PHPStan to Maximum Strictness | Ondrej Mirtes | 01h 00m |
Shows how to push PHPStan from level defaults into production-ready strictness by flipping configs and enabling packages so code becomes more predictable and… | ||
| Your Tests Won't Save You | Chris Hartjes | 44m |
Claims automated tests cut user-found bugs by 40–90% but add 20–40% to delivery time; tests alone don’t prevent people, process, or deployment errors… | ||
| Web API and client generation using OpenAPI specification | Enrico Zimuel | 52m |
Demonstrates that an OpenAPI spec can be parsed to produce real PHP client libraries that actually work against Elasticsearch and Enterprise Search, with… | ||
| Lessons Learned Live Coding in Public | Gary Hockin | 43m |
Names actual tools and workflows: uses make files to standardize start test deploy, demos a BattleSnake JSON handler converted into immutable value objects via… | ||
| nothing matches | ||