Planning

Thursday, April 9th

  Track A
08:00
08:45
Accueil (retrait des badges) - Petit-déjeuner
08:45
09:00
Discours d'ouverture
09:00
09:40
10 ans déjà... quid de Symfony 3.0 ?
Fabien Potencier
09:45
10:25
Développer avec le SyliusResourceBundle
Arnaud Langlade
10:25
10:45
Pause
10:45
11:25
Repousser les limites : HTTP cache et utilisateurs connectés
David Buchmann , Jérôme Vieilledent
11:30
11:40
Laisse pas traîner ton log !
Olivier Dolbeau
11:40
11:50
Retour d’expérience : attention chérie, ça va trancher
Bastien Jaillot
11:50
12:00
Symfony et Sonata Project chez Canal+
Thomas Rabaix
12:00
12:10
ElasticSearch dans une infrastructure Symfony2
Nicolas Badey
12:10
12:20
OpenClassrooms - Le pattern View Model avec Symfony2
Kuzniak Romain
12:20
13:45
Déjeuner
13:45
14:25
Meetic backend mutation with Symfony
Joris Calabrese
14:30
14:50
Faites plaisir à vos utilisateurs : surveillez votre prod
Grégoire Pineau
14:50
15:10
Symfony Debug et VarDumper, ou comment debugger comfortablement
Nicolas Grekas
15:10
15:30
Pause
15:30
16:10
Construire des applications API-centric avec Symfony
Kévin Dunglas
16:15
16:55
Le DIC, ce chef d'orchestre!
Adrien Brault
16:55
17:15
Pause
17:15
17:55
Docker dans le développement web et l'intégration continue
Jérémy DERUSSÉ
18:00
18:10
Une API et une admin en moins de 10 minutes ? Challenge accepted!
Jonathan Petitcolas
18:10
18:20
Retour d'expérience sur l'édition d'un "Enterprise Software" basé sur Symfony
Nicolas Dupont
18:20
18:30
Symfony pour construire des sites e-commerce de nouvelle génération
Manuel Raynaud
18:30
18:40
BackBee - The NextGen Content Manager
Mickaël Andrieu , Charles Rouillon
18:40
19:00
Session de clôture
19:00
22:00
After SymfonyLive Paris 2015 : Cocktail !

Le DIC, ce chef d'orchestre! — français

Adrien Brault

L'utilisation du conteneur d'injection de dépendances (DIC) se résume pour les applications les plus simple a créer des fichiers de configuration XML/YAML. Cependant sa force réside dans la flexibilité qu'il permet d'apporter à la configuration, et l'intégration d'un bundle dans une application. Dans cette présentation, nous reviendrons sur les caractéristiques importantes du conteneur d'injection de dépendance dans une application Symfony, puis nous verrons des exemples d'utilisation plus avancée. Je souhaite vous donner quelques clé pour créer de meilleurs bundles réutilisable et donner plus de flexibilité à votre application.

Symfony Debug et VarDumper, ou comment debugger comfortablement — français

Nicolas Grekas

Il n'y a que des bugs faciles à résoudre ...quand on a de quoi les cerner ! Le développeur PHP dispose de toute une panoplie d'outils pour tracker les situations les plus rocambolesques. Depuis ses débuts, Symfony n'a eu de cesse d'améliorer l'expérience du développeur en proposant des solutions d'accompagnement robustes et génériques. Les connaissez-vous suffisament ? Lors de cette présentation, je vous donnerai les clefs des mécanismes de debugging présents dans Symfony : VarDumper, Web Debug Toolbar, logs, gestionnaire d'erreur fatales et d'exceptions, etc.

Faites plaisir à vos utilisateurs : surveillez votre prod — français

Grégoire Pineau

Développer une application Symfony est maintenant chose commune, mais en connaissez-vous vraiment le comportement en production ? Combien de “fatal error” avez-vous générées aujourd'hui ? Quel est le temps de réponse moyen ? Quelle est la charge absorbée ? Au programme : des éléments sur la gestion des erreurs en prod, la configuration et la customisation de Monolog, le stockage des logs avec elastic search et la visualisation kibana, l’alerting avec sentry et enfin la télémétrie avec graphite, pour vous donner des pistes et savoir où intervenir avant que trop d'utilisateurs ne se plaignent, ou pire, vous abandonnent.

Retour d'expérience sur l'édition d'un "Enterprise Software" basé sur Symfony — français

Nicolas Dupont

Akeneo PIM est un outil de gestion de catalogue produits open-source basé sur Symfony et Doctrine. Le développement a démarré il y a deux ans, l'équipe produit a évolué de 2 à 12 personnes, nous proposons une version communautaire et une version entreprise, utilisées par des clients grands comptes au sein de leur SI. En tant qu'éditeur, nous nous concentrons sur le développement des nouvelles fonctionnalités et la maintenance, les développements spécifiques étant réalisés par un réseau de partenaires intégrateurs. Durant cette conférence, sous la forme d'une rétrospective, nous souhaitons présenter notre retour d'expérience technique et méthodologique sur la création de ce produit. Nous présenterons les avantages d'utiliser Symfony comme socle technique, comment rendre une application extensible et maintenable, les écueils techniques que nous avons rencontrés ainsi que les choix techniques que nous ferions aujourd'hui avec l'expérience acquise.

Retour d’expérience : attention chérie, ça va trancher — français

Bastien Jaillot

Vous vous sentez comme un membre d’équipage dont le navire est sur le point de se briser ? Votre environnement de travail est si triste que vous n’avez plus confiance en l'humanité ? Google vous propose une solution : http://goo.gl/I4jM4n Notre histoire, se déroule au sein d’une équipe technique au bord de l'apoplexie tant en terme humain que technique. Elle va progressivement remonter la pente et gagner ses lettres de noblesses pour enfin brandir son glaive et s’écrier “For The Victory!”. Comment passer d’un monolithe à une architecture microservices (à base de composants Symfony2) ? En quoi l’arrivée d’un chef de projet et de nouveaux process nous a sauvé la mise ? En quoi l’attention porté sur l'humain a favorisé l’émergence d’un collectif technique ? Comment favoriser l’insertion d’une nouvelle personne dans l’équipe ? En quoi l'utilisation pragmatique de technologies reconnues et émergeantes (elk, docker) nous a aidé au jour le jour.

Docker dans le développement web et l'intégration continue — français

Jérémy DERUSSÉ

Les containers sont venus bousculer le monde de la virtualisation, et Docker est devenu un outil incontournable. Nous verrons comment l'utiliser avec Symfony et surtout comment l'ajuster pour résoudre les problèmes courants, améliorer les performances ainsi que l’expérience du développeur. Nous nous intéresseront également à son utilisation dans le processus d'intégration continue, nous verrons comment Docker peut simplifier et améliorer l’exécution des tests fonctionnels.

Symfony et Sonata Project chez Canal+ — français

Thomas Rabaix

La présentation abordera l’usage de Symfony2, l’organisation du code et l’usage du projet Sonata chez Canal+ pour répondre aux enjeux de la refonte d’une partie de la plateforme web. La plateforme présente de nombreux challenges techniques: SDK, API privée, API publique restful+hal, création de contenus riches, 5 applications différentes avec une base de code commune, etc … Nous expliquerons également comment il a été possible d’améliorer certaines parties de Sonata ainsi que l’approche choisie pour la création de certains composants transverses.

Construire des applications API-centric avec Symfony — français

Kévin Dunglas

Au cours de ce talk, je présenterai une architecture moderne qui permet de construire des applications performantes, évolutives et interopérables : un modèle de données dérivé du vocabulaire Schema.org généré avec PHP Schema ; une API REST hypermedia et auto-découvrable (JSON-LD + Hydra) réalisée avec DunglasJsonLdApiBundle (sa première version sera dévoilée lors du Symfony Live) ; sérialisation et validation avancées des données grâce aux nouvelles fonctionnalités du composant Serializer de Symfony 2.7 et du Validator ; authentification stateless (cookie-less) avec JSON Web Token et LexikJWTAuthenticationBundle ; clients divers et variés avec AngularJS, Guzzle, Twig, des applications mobiles natives, des logiciels métiers etc ; BDD et web acceptance testing avec Behat, Mink et Behatch Le talk sera didactique et accessible aux développeurs Symfony de tous niveaux. La construction d'une micro-application suivant cette architecture sera présentée pas à pas.

Une API et une admin en moins de 10 minutes ? Challenge accepted! — français

Jonathan Petitcolas

Créer une API REST... Une mission simple en apparence, mais pouvant s'avérer chronophage, et ce même avec certains bundles reconnus tels le FOSRestBundle. Heureusement, d'autres bundles existent, privilégiant les conventions par delà la configuration, ce qui est le cas du StanLemon/RestBundle (https://github.com/stanlemon/rest-bundle). Développons ensemble, en une dizaine de minutes, une API REST pleinement fonctionnelle, et implémentons y une interface d'administration basée sur ng-admin (https://github.com/marmelab/ng-admin).

Symfony pour construire des sites e-commerce de nouvelle génération — français

Manuel Raynaud

Le modèle très populaire "catalogue de produits en ligne" est largement adressé par des solutions génériques telles que Magento, Prestashop ou Shopify. Depuis quelques années sont arrivés des services tels que AirBnB ou Uber qui représentent la nouvelle génération de sites e-commerce. Ces projets sont des applications connectées de commerce électroniques, elles sont au cœur d'un écosystème e-commerce complexe comprenant les terminaux mobiles, des systèmes de réservation, des objets connectés,.. Or, ces sites innovants sont développés from scratch car les solutions génériques proposent une réponse pour le plus grand nombre mais n'offrent pas la flexibilité et l'interopérabilité attendue. Thelia, en intégrant des composants Symfony, permet à la fois d'avoir les briques nécessaires pour un site ecommerce tel que la gestion du catalogue ou du panier. Mais il permet aussi d'étendre ses capacités grâce à l'ajout du container Symfony ou de l'Event Dispatcher.

Laisse pas traîner ton log ! — français

Olivier Dolbeau

Dites stop aux fichiers de logs qui traînent sur vos machines ! Nous verrons comment faire pour tirer pleinement parti de vos logs grâce à Monolog et surtout à la stack ELK (Elasticsearch / Logstash / Kibana).

Meetic backend mutation with Symfony — français

Joris Calabrese

Comment Meetic opère son changement technologique sur son SI. De la création d’API jusqu’à la mise en place d’une démarche qualité tout en passant par l'adoption du Behavior Driven Development, vous saurez tout sur notre parcours, sur les problématiques que nous avons rencontrées, les solutions que nous avons mises en place ainsi que sur le chemin qu'il nous reste à parcourir afin d’appréhender l’avenir avec la plus grande des sérénités. Les thèmes abordés seront : - Comment aborder des changements majeurs sur notre SI sans impacter notre performance globale ? - Migration d'un code monolithique vers des API REST en Sf2, - Exemple de microservices : AB Test, GEO, Permission, Configuration. - Déploiement avec Composer, Satis, Sf2 et Capistrano sur des centaines de serveurs, - Démarche Qualité (Back, Front, App) : nos métriques, outils du marché, outils interne, gestion aux changements. - Méthodologie : Agilité, DevOps, TDD, BDD. - Next steps : Kafka, Continuous Delivery.

BackBee - The NextGen Content Manager — français

Mickaël Andrieu , Charles Rouillon

Backbee est un CMS reposant sur des composants Symfony et Doctrine. Il offre aux contributeurs des sites une expérience ergonomique inédite leur assurant une prise en main rapide et une large autonomie de mise à jour de leurs contenus. La définition souple des droits, des processus de publication et la mise en version systématique des contenus leur assure de plus une grande sécurité éditoriale. BackBee est distribué sous licence open source GPL3.

Développer avec le SyliusResourceBundle — français

Arnaud Langlade

Au cours de son développement Sylius, l'équipe s’est rendu compte qu’elle dupliquait énormément de code pour gérer ses CRUDs. Ne voulant pas réinventer Symfony ou utiliser un admin generator, elle décida de créer un bundle simple et flexible: SyliusResourceBundle. Je présenterai comment gérer ses CRUDs avec ce bundle en écrivant le minimum de code et, surtout, sans en dupliquer! Il a été pensé afin de pouvoir supporter plusieurs types de drivers (DoctrineORM, PHPCR). De plus, il permet de construire rapidement une API grâce au FOSTRestBundle. Je mettrai en avant l’ensemble des composants utilisés par ce bundle comme Doctrine. Il facilite la configuration le ResolveDoctrineTargetEntitiesPass ainsi que la création de MappingDriver. Il utilise aussi l’EventDispatcher: des évènements sont soulevés lorsque une action est exécutée sur une ressource. Il apporte aussi de nouveaux FormType ou FormExtension comme la CollectionExtension qui permet de gérer ses forms collection (js inclus).

OpenClassrooms - Le pattern View Model avec Symfony2 — français

Kuzniak Romain

Le pattern View Model est un pattern simple qui permet d’apporter des solutions à beaucoup de problèmes : - Découpler la logique métier de la présentation - Permettre le refactoring - Faciliter les tests - Permettre de paralléliser le travail front et back - Construire des ressources api ... Nous verrons pourquoi et comment utiliser le pattern View Model avec Symfony2 et comment nous l'utilisons chez OpenClassrooms

Repousser les limites : HTTP cache et utilisateurs connectés — français

David Buchmann , Jérôme Vieilledent

Tu utilises le cache HTTP mais tu te heurtes à ses limites ? Nous présenterons différentes manières de cacher du contenu personnalisé. Au travers du concept du "user context", nous verrons comment mutualiser du cache entre des utilisateurs connectés et partageant le même profil de permission. Nous étudierons également les Edge Side Includes (ESI) et comment cacher des fragments différemment. Ces concepts sont rendus possibles avec Varnish et le composant HttpCache de Symfony, grâce à FOSHttpCacheBundle, que des projets comme le CMS Open Source eZ Publish utilisent.

ElasticSearch dans une infrastructure Symfony2 — français

Nicolas Badey

Durant cette présentation je vous parlerai d'ElasticSearch avec Elastica et son intégration dans Symfony2. Je commencerai par une présentation de la technologie puis je présenterai nos cas d'utilisations qui ne se limitent pas uniquement à une fonctionnalité de recherche en ligne, j'y intégrerai les nouvelles fonctionnalités d'ElasticSearch comme les Aggregations et Suggester. J'aborderai aussi les problématiques d'ETL via une commande Symfony2, toujours basé sur notre retour d'expériences et notre besoin de performances.

10 ans déjà... quid de Symfony 3.0 ? — français

Fabien Potencier

La première version Open-Source de Symfony est sortie il y a 10 ans en octobre 2005. La sortie de Symfony 3.0 est prévue pour fin novembre 2015. Comment la core team gère-t-elle cette nouvelle version ? Comment pouvez-vous rendre vos applications "compatibles" avec Symfony 3.0 dès aujourd'hui ? Qu'attendre de cette nouvelle version majeure ? Autant de questions auxquelles j'apporterai des réponses.

SensioLabs

92-98, Boulevard Victor Hugo
92115 Clichy Cedex - France
+33 1 40 99 82 89
support [at] sensiolabs.com

© 2015 SensioLabs - About