~/conference

Dutch PHP Conference 2018

titleauthorlength
Controlling The VariablesThijs Feryn01h 10m
Claims that luck is controllable by finding and controlling the variables and gives concrete tactics: hustling to buy a sold-out Rolling Stones ticket (which…
Talk on
All aboard the Service BusRobert Basic41m
CQRS splits write and read logic so a single use case like updating a product price becomes a small validated command object handled by one command handler…
Talk on
Behat for characterisation on testsMichael Heap45m
Shows how Behat captures existing API and UI behavior so teams can refactor big, running systems with confidence — used to refactor 5+ year old apps by first…
Talk on
Docker without docker- understanding the basicsNiklas Dzösch37m
A tiny Go program is written that forks itself, sets Linux namespace clone flags and reexecs a child to get new UTS PID mount namespaces, then chroots into a…
Talk on
How to tame a :unicorn_face:Andreas Heigl46m
Explains why characters break, how Unicode grows (initial 65,536 code points, later >1,048,576 across 17 planes), and why emojis in 2010 force use of…
Talk on
Moving from legacy to event-driven with KafkaJeroen van der Gulik50m
A legacy ERP with business logic in stored procedures is migrated without touching production by observing DB changes, emitting them as events into Kafka…
Talk on
Application metrics with PrometheusRafael Dohms50m
A practical walkthrough of instrumenting PHP services with Prometheus to drive decisions: a feedback pipeline is built with counters and histograms, metrics…
Talk on
Browser APIs: the unknown Super HeroesRowdy Rabouw37m
Covers concrete browser APIs, where they work and how they behave: geolocation (getCurrentPosition, watchPosition — HTTPS required; marker on Google Maps)…
Talk on
Cryptography For BeginnersAdam Englander46m
Explains concrete choices for web apps: use password_hash/password_verify (or Argon2i) instead of raw hashes, prefer libsodium (PHP 7.2) for encryption, and…
Talk on
Knowing your state machinesTobias Nyholm37m
Explains that state machines are simple directed graphs and shows concrete implementations: a Cron-driven email reminder using the state pattern versus a…
Talk on
OMG MySQL 8.0 is out! Are we there yet?Gabriela D'Avila Ferrara36m
MySQL 8.0 makes concrete changes you can use now: utf8mb4 as the default charset, binary logging on by default and a new auth plugin using TLS, plus a…
Talk on
Zombies and BinaryChristopher Pitt38m
Minecraft is used to model real electronics and programming: it demonstrates redstone torch inversion to build NOT gates, wire attenuation to 15 blocks and…
Talk on
Se7en Deployment SinsPhilipp Krenn49m
Seven concrete deployment mistakes with examples and fixes: adding huge dependency trees (AWS SDK was split because pulls were massive), containers that…
Talk on
When testing makes no senseMiro Svrtan43m
Argues that automated tests are worthwhile only when the cost to fix a bug exceeds the cost to test, gives concrete contrasts: a tiny web app can be fixed in…
Talk on
The Silex SunsetAlexander M. Turek44m
Silex reaches end of life so migration to Symfony is practical and attainable: replace Silex Application with Symfony Kernel, register existing service…
Talk on
Technically DDDPim Elshoff46m
Practical DDD approach: start by shipping a guard in the entity to enforce a business rule (e.g., meetings cannot end before they start, program slots cannot…
Talk on
Write history, keep a diaryJachim Coudenys46m
Using Git as a diary lets code history answer “when” and crucially “why”: commit messages store intent so future debugging and feature tracing works. Practical…
Talk on
Zero Downtime Database Migrations and DeploymentsOndrej Mirtes34m
Claims a live ecommerce stack with 300,000 daily visitors and deploy 10–30 times a day, using decoupled, backward‑compatible migrations: add new column, deploy…
Talk on
Building teams, what can we learn from professional sportsHans Dubois41m
Teams progress through forming storming norming performing and the storming phase breaks projects unless the group defines goals, decision rules and feedback…
Talk on
The Creative DeveloperRenato Mefi33m
Argues that common cognitive biases skew developer estimates and decisions, using concrete examples: estimating a 3-endpoint REST API in a day, treating 99%…
Talk on
Advanced Laravel: Avoid unified data modelsShawn McCool42m
Argues against one giant User model and shows a working Laravel conference app that splits responsibilities into feature-scoped Eloquent models (auth, speaker…
Talk on
Agility in Software Engineering - Concepts and MisconceptionsChris Holland42m
Argues that change, not process or stack, is software’s biggest threat and that disciplined test-driven development (TDD) plus clean code and patterns turns…
Talk on
Guided by Examples - Software Driven by RequirementsJon Acker40m
Describes a pipeline: impact mapping → example mapping → executable specifications → code, using BDD to turn concrete examples into working behavior. Uses…
Talk on
Monitor Your PHP Applications with Logs, Metrics, Pings, and TracesPhilipp Krenn44m
Live demo of an Elastic stack that collects logs, metrics, pings and traces from a SilverStripe app on cheap AWS instances: filebeat, metricbeat, packetbeat…
Talk on
Object reorientationChris Riley42m
Refactors a 1,000‑line nested switch into small rule classes that implement the mod 11 and related checks, extracts about 14 rules from the spec, and expands…
Talk on
The Science of Code ReviewsRick Kuipers45m
A practical playbook: builds an open‑source Meetup clone to test review habits, shows pair programming and mob programming as tight feedback loops and…
Talk on
Content Security Policies: Let's Break StuffMatt Brunt46m
Explains how Content Security Policy actually works: it blocks injected scripts (LastPass script-injection example), caused a production rollout to break until…
Talk on
Dr Sheldon Cooper Presents: Fun with FlagsMichael Heap47m
Dr Sheldon Cooper Presents: Fun with Flags by Michael Heap No no, not country flags, feature flags! Feature flags are a powerful technique that allows teams…
Talk on
Journey through "unhappy path" - Dealing with exceptional conditionsNikola Poša32m
Avoid returning nulls and optional dependencies; prefer a special case object for absent domain entities and throw exceptions where business rules are…
Talk on
From dev to prod with GitLab CIStephan Hochdorfer38m
Shows how to set up GitLab + GitLab CI end to end using Docker-based gitlab-runner + Docker executor, .gitlab-ci.yml stages and variables (CI_COMMIT_REF_SLUG)…
Talk on
Making the most out of MySQLGabriela D'Avila Ferrara40m
MySQL 5.7 adds concrete behaviors: DDL changes use either in-place vs copy alter algorithms so some ALTERs are instant metadata flips while others copy the…
Talk on
Mastering message QueuesTobias Nyholm39m
Advocates a hexagonal app core that communicates only via messages on a bus, implemented with Symfony Messenger and pluggable transports like RabbitMQ AMQP…
Talk on
Microservices vs The Distributed MonolithChris Riley48m
Describes why a brittle monolith refactored into many tiny services easily becomes a distributed monolith: a bloated shared library, synchronized deployments…
Talk on
Progressive Web AppsMike Oram32m
Progressive Web Apps use a Web App Manifest plus a Service Worker to control fetches, caching and background sync; real results: Tinder cuts cold-load from…
Talk on
The Path of Secure Digital IdentityKaty Anton34m
Provides a three-tier rule: classify data by risk then match authentication and session controls. Level 1 allows single-factor passwords; use use password_hash…
Talk on
The way we teach techJeroen van der Gulik41m
Argues teaching must be concrete and iterative: start with make it work make it good make it fast, use a real bug (logging example) to teach env vars…
Talk on
Time is an illusion (lunchtime doubly so)Andreas Heigl43m
Time zones are political and change often: the tz database is at version 2018.5 here, PHP shows 143 historic transitions for zones, and the abbreviation CEST…
Talk on
Unleash your web skills on nativeRowdy Rabouw41m
NativeScript lets web developers use HTML, CSS and JavaScript to produce real native UI on iOS and Android by mapping markup to native controls and running JS…
Talk on
What raising 3 kids taught me about working with usersDerek Binkley41m
Uses parenting lessons to extract concrete tactics: create a glossary of terms to end confusion, force priorities with MoSCoW (must/should/could/want), and…
Talk on
A LAMP Stack Professional’s Journey to AI: Meet Johnny the Deployer!Georgiana Gligor53m
A PHP-built devops chatbot called Johnny the Deployer connects Slack (via Botmaster) to Jenkins and JIRA and uses Watson NLU to parse intents and entities…
Talk on
A self-describing APIVictor Bolshov33m
A small PHP library generates Swagger/OpenAPI specs from controllers that implement a single interface and a static getSwaggerPaths method, letting a CI…
Talk on
Are you out of memory, or have plenty to spare?Joshua Thijssen41m
Linux tools like top/htop, free, slabtop and pmap report different slices of memory so raw VIRT numbers mislead: a process can reserve 1 GiB of virtual address…
Talk on
Coding Horrors - A Horror Film Fan's Guide to PHP Coding NightmaresMark Baker45m
Covers concrete PHP mistakes and fixes: storing dates as varchar dates in DMY that break range queries (use DATE/DATETIME types), N+1 database loops and slow…
Talk on
Decomposing a live application with confidenceLuís Cobucci40m
Company decomposes a live, profitable monolith by piping duplicated feedback into Kafka, applying event storming and context mapping, and building streaming…
Talk on
Designing for AutonomyMatthias Noback44m
Argues that autonomy comes from publishing facts not RPC: services emit events, other services build local state and respond, so systems survive slow or down…
Talk on
Machine learning and trend analysis in PHPMichael Cullum45m
Overview of concrete methods and outcomes: PHP code uses the PHP ML library to train models with a simple four-step flow (data, train, ask, predict), running…
Talk on
Shipping Better Software Faster, and Having Fun Doing ItChris Holland45m
Claims that test-driven development plus a decoupled service/repository architecture speeds delivery while reducing pain, demonstrated by a Ride Hailing kata…
Talk on
The not so simple mail transport protocolJos Elstgeest42m
Explains how SMTP lacks authorization and shows concrete fixes: SPF via DNS TXT records, examples of records and the real caveats such as SPF limits: 10 DNS…
Talk on
AssertTrue(isDecoupled(“my tests”))Dave Liddament45m
Decoupling tests cuts maintenance cost by preventing tiny UI or schema changes from turning half the suite red. Examples: brittle Selenium UI tests become…
Talk on
IoC containers beyond constructor injectionHannes Van De Vreken41m
Shows that an IoC container does more than constructor injection by demonstrating concrete tactics: use a reflection container to auto-resolve constructors…
Talk on
Modern JavaScript: Moving Beyond jQueryDerek Binkley44m
Argues for structured browser-side code instead of sprawling jQuery handlers, demonstrating a small attorney-list prototype that uses ES6 scope (let), JSON…
Talk on
Opening Keynote : The New RevolutionSamantha Quiñones55m
Chronicles the actual origin and growth of the Internet from Oct 29 1969 first remote login over two BBN-built IMP routers connecting UCLA and SRI through the…
Talk on
Testing Strategy with the Help of a Static AnalyzerOndrej Mirtes45m
Argues that you don’t need 100% coverage because PHPStan plus modern PHP type hints and phpstan‑strict catch many pre‑runtime bugs, so tests concentrate on…
Talk on
Being a remote developerMiro Svrtan40m
Remote work broadens hiring and lets teams hire rare talent across borders but creates real gaps in gossip, launches and onboarding; fixes that worked include…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.