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
2
44
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
100
Modern Approaches to Web Security: Stateless CSRF Protection Explained
nicolasgrekas
3
210
What's new in Symfony 7.x
nicolasgrekas
2
120
L'intégration de l'IA dans Symfony
nicolasgrekas
0
51
Lazy Objects in PHP and Symfony
nicolasgrekas
2
360
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.5k
Symfony 7: A tribute to Attributes
nicolasgrekas
1
570
Other Decks in Technology
See All in Technology
It’s “Time” to use Temporal
sajikix
3
220
プラットフォームエンジニアリングはAI時代の開発者をどう救うのか
jacopen
7
3.8k
Agent ServerはWeb Serverではない。ADKで考えるAgentOps
akiratameto
0
120
SLI/SLO 導入で 避けるべきこと3選
yagikota
0
100
Tebiki Engineering Team Deck
tebiki
0
27k
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
1.1k
AlloyDB 奮闘記
hatappi
0
150
Claude Code のコード品質がばらつくので AI に品質保証させる仕組みを作った話 / A story about building a mechanism to have AI ensure quality, because the code quality from Claude Code was inconsistent
nrslib
13
8.6k
CyberAgentの生成AI戦略 〜変わるものと変わらないもの〜
katayan
0
270
Claude Code 2026年 最新アップデート
oikon48
14
11k
20260311 ビジネスSWG活動報告(デジタルアイデンティティ人材育成推進WG Ph2 活動報告会)
oidfj
0
350
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
230
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Practical Orchestrator
shlominoach
191
11k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Exploring anti-patterns in Rails
aemeredith
2
290
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
130
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
140
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
86
Visualization
eitanlees
150
17k
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