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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Nicolas Grekas
September 19, 2025
Technology
54
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
130
L'intégration de l'IA dans Symfony
nicolasgrekas
0
62
Lazy Objects in PHP and Symfony
nicolasgrekas
2
380
What's new in Symfony 7.1
nicolasgrekas
2
200
Embracing the Future with Symfony 7
nicolasgrekas
0
220
Symfony, PHP and its Foundation
nicolasgrekas
0
4.9k
Symfony 7: A tribute to Attributes
nicolasgrekas
1
570
Other Decks in Technology
See All in Technology
エムスリーテクノロジーズ株式会社 エンジニア向け紹介資料 / M3 Technologies Company Deck
m3_engineering
0
180
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.5k
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
220
サイボウズ、プラットフォームエンジニアリング始めるってよ ― プラットフォームチームの事業貢献と組織アラインメントの強化
ueokande
0
120
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
47k
クラウドネイティブ DB はいかにして制約を 克服したか? 〜進化歴史から紐解く、スケーラブルアーキテクチャ設計指針〜
hacomono
PRO
6
1.1k
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
5
1.6k
AIAgentと取り組むKaggle
508shuto
2
170
データモデリング通り #5オンライン勉強会: AIに『ビジネスの文脈』を教え込むデータモデリング
datayokocho
0
290
Purview 勉強会報告 Microsoft Purview 入門しようとしてみた
masakichixo
1
440
"スキルファースト"で作る、AIの自走環境
subroh0508
0
580
React Compiler導入から21ヶ月、いま始めるならこうやる
astatsuya
2
220
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
190
How to make the Groovebox
asonas
2
2.2k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
290
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
690
For a Future-Friendly Web
brad_frost
183
10k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
Ruling the World: When Life Gets Gamed
codingconduct
0
230
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
300
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
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