Regardez le replay si vous avez participé à cette conférence . Sinon, Achetez un billet pour découvrir toutes les vidéos
Symfony : 20 ans d'évolution vers la simplicité (Fabien Potencier)
Cette conférence retrace l'évolution de Symfony sur 20 ans, en mettant l'accent sur les efforts constants d'amélioration de l'expérience développeur. De l'abandon de Silex à l'introduction de Symfony Flex, puis aux avancées récentes comme Symfony UX et les recettes de mise à jour, l'objectif a toujours été de simplifier le développement. La présentation explore également des approches innovantes pour créer des applications Symfony minimalistes, avec des exemples concrets pour les applications web et console. Trois niveaux d'utilisation de Symfony sont présentés pour illustrer le propos : - Symfony Hello : pour des applications simples et l'apprentissage. - Symfony Solo : un compromis entre simplicité et fonctionnalités complètes. - Symfony Team (le framework complet) En conclusion, la conférence célèbre la communauté Symfony et son rôle essentiel dans la création d'un framework puissant et convivial, et se termine par quelques réflexions sur l'impact des LLM sur le développement.
Le Composant Symfony Mapper (Antoine Bluchet)
Le mapping est quelque chose que l'on retrouve dans de nombreux frameworks sur le web dans tous les langages de programmation. Doctrine, par exemple, possède un système de mapping assez complexe pour transformer la représentation de la base de données relationnelle en votre entité. Après avoir parcouru l'historique de quelques années de discussion et de recherches de la communauté Symfony autour de ce domaine, nous allons étudier les besoins d'un tel composant dans Symfony. Nous analyserons en quoi il est différent du Serializer de Symfony, et quelles sont les solutions offertes par les frameworks populaires sur le Web. Enfin, nous présenterons le nouveau composant Mapper que j'ai proposé et ses différents usages entre la conception de l'API jusqu'aux cas d'utilisation quotidiens.
Postgres pour vos besoins NoSQL (David Buchmann)
Postgres est connu pour ses capacités SQL. Mais en fait, Postgres est aussi très capable de gérer du JSON. Je vais expliquer comment utiliser les fonctions JSON des versions récentes de Postgres pour gérer vos données moins structurées. Je vais aussi montrer l'utilisation des fonctionnalités JSON depuis Doctrine.
Passkeys pour une authentification fluide et sécurisée (Rémi JANOT)
Dites adieu aux mots de passe fragiles et aux processus de connexion fastidieux ! Les passkeys et webauthn, une nouvelle technologie d'authentification native des navigateurs et systèmes d'exploitation, promettent une expérience utilisateur fluide et sécurisée. Dans cette conférence, nous explorerons le potentiel de webauthn pour votre site web en abordant les sujets suivants : - Présentation des passkeys - Présentation de webauthn - Intégration de webauthn dans les applications Symfony : démonstration pratique et bonnes pratiques - Cas d'utilisation concrets : authentification client, paiements sécurisés, gestion de comptes - Impact sur la sécurité et l'expérience utilisateur : vers un futur sans friction et sans compromis
Symfony UX : Points forts de 2024 et perspectives d'avenir (Simon André)
Symfony UX est un ensemble de composants conçus pour créer des interfaces front-end riches avec Symfony. Ce mois de décembre, il a fêté ses 4 ans (Joyeux anniversaire UX !). Quelle année 2024 pour Symfony UX ! Nous passerons en revue tout ce qui s’est passé : nouveaux composants (Icon, Map), améliorations apportées à TwigComponent et LiveComponent, et nous discuterons de la philosophie et des orientations adoptées par l’équipe Symfony UX. Ensuite, nous explorerons l’avenir de Symfony UX en 2025, incluant une ou deux surprises !
Rôles & permissions : développez une marque blanche avec du Feature Flipping (Florian Bogey)
Les rôles et les permissions permettent de gérer d'une manière très fine les droits des utilisateurs : ce sont donc deux composants essentiels de la sécurité d'une application web. Nous ferons dans un premier temps un focus sur leurs différences et intérêts avant de voir comment les intégrer de manière très simple dans Symfony. Puis, nous verrons, au travers d'un retour d'expérience, comment tirer parti des rôles et permissions pour mettre en place une marque blanche, du "Feature Flipping" et un système de profils utilisateurs dans une application web. Découvrez comment les implémenter dans votre base de code, mais aussi des exemples d'outils à mettre en place dans votre CI et votre monitoring afin d'être sûr de ne pas avoir de raté.
API Platform sans Doctrine (Jérôme Tamarelle)
API Platform est l’outil de référence pour créer des APIs perfectionnées, avec une intégration fluide à Doctrine et à diverses sources de données. Mais que faire si l’on souhaite accéder à d’autres types de bases de données ou optimiser les requêtes pour des cas d’usage spécifiques ? Est-il possible de se passer de Doctrine ?
Développer plus vite grâce à FrankenPHP (Kévin Dunglas)
L’une des forces de Symfony est son mécanisme de cache (les fichiers stockés dans "var/cache") qui permet aux composants du framework tels que le conteneur d’injection de dépendance et le routeur ainsi qu’à de nombreux bundles d'être ultra-rapides en production. Cependant, pendant le développement, la régénération de ce cache peut entraîner des lenteurs et rendre le travail des programmeuses et des programmeurs pénible. En effet, à chaque fois qu'un fichier PHP, un fichier de configuration ou un template Twig est modifié, tout ou partie du cache doit être régénéré. La dernière version de FrankenPHP contient une nouvelle fonctionnalité qui, couplée au mode worker, peut changer la donne : les watchers. Après avoir présenté le fonctionnement du mécanisme de cache de Symfony, et comment en tirer partie dans nos applications et bundles, nous découvrirons comment utiliser les watchers et le mode worker de FrankenPHP pour que les changements apportés à notre code soient reflétés quasi-instantanément dans notre navigateur, et ainsi nous éviter la frustration des temps de chargement long en dev.
Où sont passées les femmes de l'histoire de la tech ? (Laura Durieux)
Ada Lovelace, Hedy Lamarr, les "ENIAC Girls," Grace Hopper, Joan Clarke... Issu du rôle de calculatrice, le métier de développeur était initialement considéré comme un travail de femmes, tandis que la conception matérielle était vue comme un travail d'hommes. Mais qui sont ces femmes qui ont façonné le monde de la technologie ? Pourquoi entend-on si peu parler d'elles ? Avec Laura Durieux, vous tenterez de rétablir les faits petit à petit et de fournir des modèles inspirants en tech, dont vous avez toujours eu besoin.
Async avec Messenger, AMQP et Mercure (Grégoire Pineau)
Générer des PDF, des CSV, ou faire des traitements lourd lors du traitement d'une requête HTTP impacte lourdement les performances de l'application. Pour pallier ce problème nous pouvons avoir recours à l'utilisation d'un système de asynchrone. Le composant Messenger sera un super allier pour nous faciliter cette tache. Cependant, comment prévenir le client que son PDF est prêt ou que son import de données est fini ? Mercure nous simplifiera la tache pour notifier le client en temps réel. Et si notre site est une SPA, pouvons nous tirer parti de ces composant pour rafraîchir notre application avec seulement 3 lignes de code JS ? Venez le découvrir !
Atteindre la qualité d'une SPA avec HTMX et Twig (Damien Alexandre)
Découvrez comment HTMX peut transformer votre façon de développer en apportant la puissance et la flexibilité des Single Page Applications (SPA) à vos projets Symfony, sans écrire de JavaScript !
Du lego de composants pour un bundle Gotenberg ! (Hubert Lenoir, Adrien Roches)
Générer un document PDF est un besoin commun dans nos projet, notamment pour de l’e-commerce, depuis que wkhtmltopdf est déprécié, il est difficile de trouver une librairie simple à utiliser / installer pour générer des PDFs. Parmi les outils disponibles, nous avons choisi de nous concentrer sur Gotenberg. Le SDK natif ne nous a pas semblé offrir une Développeur eXpérience(DX) optimale pour une intégration Symfony. Nous avons donc décidé de nous lancer dans la création « from scratch » d’un Bundle dédié avec une DX adaptée aux développeurs Symfony... et aux utilisateurs de PHPStorm ! Du fulgurant HttpClient au méconnu Webhook, voyons comment la myriade de composants Symfony peuvent nous aider à faire de la génération PDF une tâche rapide et simple à mettre en place. Pour ce faire, nous nous sommes posé quelques questions que nous couvrirons ensemble ! * Comment exposer une configuration simple et sémantique ? * Comment s’assurer d’une bonne auto-complétion ? * Comment faciliter le debug ? * Comment maximiser l’efficience de la mémoire ? * Comment faire de la génération asynchrone facilement ? Viendez et découvrez comment générer des PDF’s devient désormais aussi simple que d’utiliser Twig !
Tirez profit de Messenger pour améliorer votre architecture (Tugdual Saunier)
Symfony Messenger est principalement vu comme un composant pour déléguer des traitements en tâche de fond. Mais est-il réellement limité à ce cas d'utilisation? Dans cette présentation nous verrons à travers une session de refactoring comment l'utilisation de Messenger peut avant tout être bénéfique à l'architecture et au découplage de nos applications.
Développer avec API Platform 4, ça change quoi ? (Mathias Arlaud)
Énormément d'eau a coulé sous les ponts depuis la version 2.6 d'API Platform. En effet, ce framework permettant de réaliser des APIs a une première fois fait peau neuve lors de son passage en 3.0, en redéfinissant totalement la DX et la manière dont il est possible de l'utiliser. Et en septembre dernier, API Platform s'est à nouveau grandement renouvelé, proposant de nombreuses améliorations et de nouveaux points d'extensions. Ainsi, comme vous pourrez vous en douter, utiliser API Platform en version 4 n'a plus rien à voir avec son utilisation en version 2.6. Et donc, une manière de faire en version 2.6 est très probablement obsolète, voire invalide en version 4, car elle irait à l'encontre du framework. Nous verrons donc ensemble ce que veut dire développer une API avec API Platform dans sa version 4, et quels paradigmes de développement absolument éviter afin d'éviter de se battre contre le framework.
Les Nouveautés de Symfony 7.3 (Nicolas Grekas)
Symfony 7.3 sera bientôt la dernière version stable de votre technologie web préférée. Dans cet exposé, j'aimerais prendre le temps de passer en revue les principales nouvelles fonctionnalités apportées par la communauté au cours des 12 derniers mois de cette version. Nouveaux composants, nouvelles bonnes pratiques permettant un code plus déclaratif, etc. Ne manquez pas cet exposé pour rester à la pointe de la technologie et célébrer ensemble cette belle étape.
Bonus : Les 8 Lightning Talks ()
Benjamin Clay - 00:22 **User-Agent : Plongée dans l'histoire d'un header web mystérieux** Savez-vous ce que raconte votre navigateur aux sites web que vous visitez ? Derrière une ligne de texte étrange se cache une histoire fascinante des débuts d'internet, pleine de rivalités et d'astuces pour que les sites s'affichent correctement sur tous les écrans. Découvrez comment le "User-Agent" a évolué, des premiers navigateurs comme Mosaïque aux géants actuels comme Chrome, en passant par des techniques parfois surprenantes pour assurer la compatibilité. Benjamin Georgeault - 04:48 **Simplifiez vos formulaires Symfony grâce aux attributs PHP 8** Découvrez comment les attributs PHP 8 peuvent révolutionner la création de formulaires dans Symfony. Oubliez les FormTypes traditionnels et concentrez-vous sur vos DTO : des attributs directement dans vos classes vous permettront de définir et configurer vos formulaires de manière intuitive et concise. Validation, events, transformers... explorez le potentiel de cette approche pour un développement plus rapide et agréable. Grégoire Pineau - 12:06 **MCP : Unifier les outils pour les LLM** Démonstration de MCP, un protocole qui permet aux LLM d'interagir avec le monde extérieur en leur fournissant des outils. L'orateur montre comment MCP permet à un LLM de créer un livre dans une base de données et explique le fonctionnement du protocole. Imen Ezzine - 16:12 **Gitingest : Libérez la Puissance des LLM avec Votre Code GitHub** Découvrez Gitingest, l'outil révolutionnaire qui transforme votre code GitHub en un format optimisé pour les LLM. En quelques clics, convertissez vos dépôts en Markdown structuré et générez des prompts intelligents pour une analyse de code, une documentation et une collaboration assistées par IA. Simplifiez l'intégration des LLM dans votre workflow et exploitez leur plein potentiel pour des revues de code automatisées, l'onboarding de nouveaux développeurs et bien plus encore. Jacques Bodin-Hullin - 22:18 **ShapeUp : Quand Scrum Devient Triste, l'Histoire de Dave, Alice et Huguette** Dave, Alice et Huguette font du Scrum, mais quelque chose ne va pas. Entre les estimations floues en points et une vélocité capricieuse, ils cherchent une autre voie. Découvrez comment la méthode ShapeUp, adaptée par Monsieur Biz, transforme leur manière de travailler en se concentrant sur des cycles courts et concrets, des "cacahuètes" à construire, pour finalement voir des "feux d'artifice" de satisfaction. Une présentation éclair pour comprendre comment cette approche peut révolutionner le quotidien des équipes web. Jérémy Romey - 26:03 **Il y a 20 ans : Retour sur SfContext, le cœur magique de Symfony 1** À l'occasion des 20 ans de Symfony, replongeons-nous dans l'histoire de ce framework en explorant SfContext, une classe centrale de Symfony 1. Découvrez comment ce "singleton" aux multiples facettes permettait d'accéder à tout, de la gestion des formulaires à l'envoi d'emails, et comment son héritage a façonné les versions actuelles de Symfony. Mathieu Ledru - 30:27 **Flow : Orchestrez vos données visuellement avec PHP !** Découvrez Flow, une librairie PHP innovante pour l'orchestration de données. Basée sur les principes de la programmation fonctionnelle et du Flow-Based Programming, Flow vous permet d'assembler votre code de manière intuitive et d'exploiter la puissance de l'asynchrone pour des traitements de données efficaces. Mathieu Santostefano - 37:30 **Agents IA génératifs : La révolution 2025** Découvrez comment les nouveaux outils d'IA générative en PHP, comme LLM Chain, Elhant et Neuron, simplifient l'intégration de l'intelligence artificielle dans vos applications. Apprenez comment enrichir les réponses des modèles de langage avec vos propres données grâce au RAG et comment les agents IA, pilotés par le protocole MCP, peuvent interagir avec votre environnement pour automatiser des tâches et transformer votre travail. 2025 sera l'année où ces technologies deviendront incontournables !
Avez-vous raté SymfonyLive Paris 2025?
Rejoignez-nous lors d'une prochaine conférence !