Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Config Formats and Symfony - Let's talk about DX
Search
Nicolas Grekas
September 19, 2025
Technology
71
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
140
Modern Approaches to Web Security: Stateless CSRF Protection Explained
nicolasgrekas
3
250
What's new in Symfony 7.x
nicolasgrekas
2
170
L'intégration de l'IA dans Symfony
nicolasgrekas
0
79
Lazy Objects in PHP and Symfony
nicolasgrekas
2
410
What's new in Symfony 7.1
nicolasgrekas
2
220
Embracing the Future with Symfony 7
nicolasgrekas
0
240
Symfony, PHP and its Foundation
nicolasgrekas
0
5.6k
Symfony 7: A tribute to Attributes
nicolasgrekas
1
590
Other Decks in Technology
See All in Technology
事業課題から技術的負債に向き合う
sansantech
PRO
2
2k
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
160
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
2.1k
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
140
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
32
28k
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
140
Railsのように考える: See through the Master
snoozer05
PRO
4
1.2k
HHKBエバンジェリストになる方法
941
0
110
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
870
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
3
1.8k
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
110
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Ethics towards AI in product and experience design
skipperchong
2
380
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
430
Designing Powerful Visuals for Engaging Learning
tmiket
1
570
Skip the Path - Find Your Career Trail
mkilby
1
230
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Faster Mobile Websites
deanohume
310
32k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
530
Bash Introduction
62gerente
615
220k
Facilitating Awesome Meetings
lara
57
7.1k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
460
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