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
Nicolas Grekas
September 19, 2025
Technology
2
37
Config Formats and Symfony - Let's talk about DX
Config Formats and Symfony - Let's talk about DX
Nicolas Grekas
September 19, 2025
Tweet
Share
More Decks by Nicolas Grekas
See All by Nicolas Grekas
Taming Dependency Injection
nicolasgrekas
1
90
Modern Approaches to Web Security: Stateless CSRF Protection Explained
nicolasgrekas
3
210
What's new in Symfony 7.x
nicolasgrekas
2
110
L'intégration de l'IA dans Symfony
nicolasgrekas
0
47
Lazy Objects in PHP and Symfony
nicolasgrekas
2
330
What's new in Symfony 7.1
nicolasgrekas
2
180
Embracing the Future with Symfony 7
nicolasgrekas
0
200
Symfony, PHP and its Foundation
nicolasgrekas
0
4.2k
Symfony 7: A tribute to Attributes
nicolasgrekas
1
560
Other Decks in Technology
See All in Technology
AI との良い付き合い方を僕らは誰も知らない (WSS 2026 静岡版)
asei
1
340
Java 25に至る道
skrb
3
230
1万人を変え日本を変える!!多層構造型ふりかえりの大規模組織変革 / 20260108 Kazuki Mori
shift_evolve
PRO
6
1.5k
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
1.2k
Git Training GitHub
yuhattor
1
120
Microsoft Tech Brief : Microsoft Fabric × Databricks × Microsoft Foundry が切り拓く Agentic Analytics 革命 ― Microsoft Ignite & Databricks 社 主催 DATA+AI World Tour Tokyo 最新アップデート総括
databricksjapan
0
100
クラウドセキュリティの進化 — AWSの20年を振り返る
kei4eva4
0
120
AIと融ける人間の冒険
pujisi
0
120
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
国井さんにPurview の話を聞く会
sophiakunii
1
410
さくらのクラウドでのシークレット管理を考える/tamachi.sre#2
fujiwara3
1
190
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
82
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
82
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
100
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
89
Making the Leap to Tech Lead
cromwellryan
135
9.7k
BBQ
matthewcrist
89
10k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
150
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
43
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
75
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