Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Config Formats and Symfony - Let's talk about DX
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Nicolas Grekas
September 19, 2025
Technology
52
2
Share
Config Formats and Symfony - Let's talk about DX
Config Formats and Symfony - Let's talk about DX
Nicolas Grekas
September 19, 2025
More Decks by Nicolas Grekas
See All by Nicolas Grekas
Taming Dependency Injection
nicolasgrekas
1
110
Modern Approaches to Web Security: Stateless CSRF Protection Explained
nicolasgrekas
3
220
What's new in Symfony 7.x
nicolasgrekas
2
120
L'intégration de l'IA dans Symfony
nicolasgrekas
0
54
Lazy Objects in PHP and Symfony
nicolasgrekas
2
370
What's new in Symfony 7.1
nicolasgrekas
2
190
Embracing the Future with Symfony 7
nicolasgrekas
0
210
Symfony, PHP and its Foundation
nicolasgrekas
0
4.7k
Symfony 7: A tribute to Attributes
nicolasgrekas
1
570
Other Decks in Technology
See All in Technology
Embeddings : Symfony AI en pratique
lyrixx
0
460
Datadog で実現するセキュリティ対策 ~オブザーバビリティとセキュリティを 一緒にやると何がいいのか~
a2ush
0
190
AIがコードを書く時代の ジェネレーティブプログラミング
polidog
PRO
2
270
スクラムを支える内部品質の話
iij_pr
0
260
Data Enabling Team立ち上げました
sansantech
PRO
0
270
Webアクセシビリティは“もしも”に備える設計
tomokusaba
0
160
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
2
17k
2026-04-02 IBM Bobオンボーディング入門
yutanonaka
0
200
I ran an automated simulation of fake news spread using OpenClaw.
zzzzico
1
900
プロダクトを育てるように生成AIによる開発プロセスを育てよう
kakehashi
PRO
1
600
あるアーキテクチャ決定と その結果/architecture-decision-and-its-result
hanhan1978
0
310
TUNA Camp 2026 京都Stage ヒューリスティックアルゴリズム入門
terryu16
0
670
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
85
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
260
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
180
A designer walks into a library…
pauljervisheath
211
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
160
Test your architecture with Archunit
thirion
1
2.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
350
sira's awesome portfolio website redesign presentation
elsirapls
0
210
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
230
The Curious Case for Waylosing
cassininazir
0
290
We Have a Design System, Now What?
morganepeng
55
8.1k
Transcript
Config Formats and Symfony Let's talk about DX @nicolasgrekas 20
Years of Symfony! Let's celebrate at SymfonyCon Amsterdam 2025 November 27 – 28, 2025
Making the Symfony Experience *Exceptional* June 18, 2014 • Ryan
Weaver
Being Aggressive, Focusing on Beginners June 18, 2014 • Ryan
Weaver
Hello symfony/flex - 2017 services: _defaults: autowire: true autoconfigure: true
public: false App\: resource: '../src/*' exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}' App\Controller\: resource: '../src/Controller' tags: ['controller.service_arguments'] @nicolasgrekas
config/services.yaml services: _defaults: autowire: true autoconfigure: true public: false App\:
resource: '../src/*' exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}' App\Controller\: resource: '../src/Controller' tags: ['controller.service_arguments'] @nicolasgrekas
config/routes.yaml controllers: resource: path: ../src/Controller/ namespace: App\Controller type: attribute @nicolasgrekas
config/routes.yaml controllers: resource: attributes type: tagged_services @nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
Options paralysis @nicolasgrekas YAML? XML? PHP? No Config?
@nicolasgrekas
@nicolasgrekas
Drop ext-xml requirement Drop XML support! Being Aggressive, Focusing on
Beginners
Self-impact Analysis @nicolasgrekas Services and bundles Routes Validation constraints Serializer
metadata Translations PhpStorm plugin et al. debug:lint command
@nicolasgrekas
@nicolasgrekas
Self-impact Analysis @nicolasgrekas Services and bundles Routes Validation constraints Serializer
metadata Translations PhpStorm plugin et al. debug:lint command
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
Self-impact Analysis @nicolasgrekas Services and bundles Routes Validation constraints Serializer
metadata Translations PhpStorm plugin et al. debug:lint command
@nicolasgrekas
Options paralysis @nicolasgrekas YAML? XML? PHP? No Config?
config/services.yaml # $schema: ../vendor/symfony/dependency-injection/Loader/schema/services.schema.json services: _defaults: autowire: true autoconfigure: true
App\: resource: '../src/*' @nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
@nicolasgrekas
Options paralysis @nicolasgrekas YAML XML? PHP? No Config?
@nicolasgrekas
@nicolasgrekas
PHP FTW @nicolasgrekas • Autocompletion • Static analysis • Symbol
referencing • Automated patching (still compile-time only)
10ths of Symfony contributors Ondrej for phpstan Roman for JetBrains
Forever Ryan for the inspiration et al. Damn this Community is Awesome! @nicolasgrekas Let's celebrate at SymfonyCon Amsterdam 2025 November 27 – 28, 2025
The future is ours to build, all together! @nicolasgrekas Let's
celebrate at SymfonyCon Amsterdam 2025 November 27 – 28, 2025
symfony.com/slack Mutual aid Kindness CARE team @nicolasgrekas Let's celebrate at
SymfonyCon Amsterdam 2025 November 27 – 28, 2025