[:fr]La parole est aux speakers : Mathieu Santostefano[:]

[:fr]Jusqu’au PHP Tour 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Traduire efficacement une application Symfony

La traduction d'une application est une étape primordiale dans un projet international. Mais sa mise en place est souvent douloureuse, et ça le reste tout au long de la vie de l'application. Un nouveau type d'intervenant entre en jeu en plus des développeurs, chefs de projets, designers, voici maintenant les traducteurs. Comment faire travailler toutes ces personnes efficacement, et garder l'intégrité des traductions de l'application ? C'est ce que je vous propose d'aborder dans cette conférence. Nous verrons ensemble quels outils externes utiliser pour faciliter la traduction aussi bien pour les développeurs, que les traducteurs, mais aussi pour les intervenants en qualité qui sont chargés de vérifier tout ce travail. Nous verrons également comment brancher ces outils au sein de Symfony pour bénéficier d'un workflow de traduction cohérent et simple d'utilisation d'un environnement local à la production. À la fin de la conférence vous n'aurez qu'une envie, mettre à jour vos projets avec ces outils pour enfin vous épargner de longues journées de mise à jours de traductions !

Salle Jarvis
18/05/2018
12:10-12:30

Tu nous parleras de traduction d’application Symfony. Qu’est-ce qui t’a motivé à parler de ce sujet et dans quel cadre as-tu été amené à travailler sur des traductions ?

La mise en place de la traduction d’une application web est quelque chose que j’ai souvent rencontré dans mes différentes expériences professionnelles. Encore plus depuis que je suis chez JoliCode, car je travaille sur plusieurs projets par an.
Récemment, pour un de ces projets nous avons eu besoin de mettre en place la traduction d’une application en 6 langues. Cela a nécessité une quantité importante de travail, car non seulement nous devions traduire l’interface utilisateur, mais également permettre aux éditeurs de l’application de pouvoir saisir du contenu dans plusieurs langues différentes.
J’ai en grande partie contribué à la mise en place de ce système, et c’est ce qui m’a motivé à proposer ce sujet de conférence au PHP Tour Montpellier 2018.

(suite…)

[:fr]La parole est aux speakers : Nicolas Lœuillet[:]

[:fr]Jusqu’au PHP Tour 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Tenter de gagner (un peu) sa vie avec un projet open source

Depuis bientôt 5 ans maintenant, nous sommes une petite équipe qui développe une application web open source, wallabag, codée en PHP. Et depuis le début de cette aventure, je me dis que ça serait chouette d'essayer de tenter de gagner un peu sa vie grâce à ce projet qui nous prend du temps. Il y a un peu plus d'un an, j'ai donc lancé un service libre et payant, https://wallabag.it Je vous propose donc mon retour d'expérience sur la naissance du projet, les différentes étapes, les craintes, les doutes et les réussites, comment je gère tout ça au quotidien, etc.

Salle Morpheus
17/05/2018
12:10-12:30

Peux-tu nous présenter le projet wallabag et quel est ton rôle dans celui-ci ?

wallabag est une application de lecture différée : je n’ai pas le temps de lire un article, je l’archive et je pourrai le consulter plus tard sur mon ordinateur, ma tablette, mon smartphone ou ma liseuse.
La principale fonctionnalité est que wallabag ne conserve que l’article dans une version épurée : c’est-à-dire que le reste de la page HTML n’est pas enregistrée (les publicités, la structure du site, les commentaires, etc.). L’article (et ses images), et uniquement ça.
J’ai commencé ce projet tout seul il y a bientôt 5 ans, quand Google a annoncé la fermeture de Google Reader. Je me suis inquiété de ce qui pouvait arriver si l’outil que j’utilisais à l’époque (Pocket) fermait du jour au lendemain. J’ai donc voulu me créer mon propre outil.
Aujourd’hui, nous sommes une équipe de 4 personnes pour la partie application web, une personne par application smartphone, deux personnes pour l’extension Chrome / Firefox, une dizaine de traducteurs et quelques milliers d’utilisateurs.

(suite…)

[:fr]La parole est aux speakers : Grégoire Pineau[:]

[:fr]Jusqu’au PHP Tour 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

A la decouverte du Workflow

Il est courant de gérer des statuts ou états de produits, dans des sites e-commerce ou éditoriaux. Pour ce faire, il est possible d'agir de façon classique, c'est-à-dire manuellement, ou d'avoir recours à des librairies qui proposent déjà des bases de code. Pour cette présentation, nous aborderons la notion de machine à état et sa définition avant d'envisager, son application, en examinant les librairies open sources existantes. Enfin, à la lumière de Symfony, nous étudierons le nouveau composant "Workflow"

Salle Jarvis
18/05/2018
15:15-15:55

Cela fait maintenant plus d’un an que tu es membre de la core team de Symfony. Peux-tu nous en dire plus sur ce rôle ?

J’ai rejoint Sensio en 2010 et très rapidement j’ai pris goût à l’open source. J’ai commencé par contribuer sur les projets que j’utilisais tous les jours : Twig, Silex et Symfony.
Puis en 2016, à la suite de l’intégration du composant workflow dans Symfony, j’ai été promu « core contributor ». Être core contributor n’a pas vraiment changé mon quotidien dans la mesure où je suivais déjà de près le développement de Symfony. Désormais je dois maintenir le composant workflow. Je dois par exemple re-lire, commenter, finir les pull-requests envoyées par les autres contributeurs mais aussi répondre aux questions que les développeurs ont. Et enfin résoudre les tickets : bug ou features.
Depuis 2017, je travaille chez JoliCode et grâce à du temps alloué à l’open-source je peux continuer à maintenir ce composant.

(suite…)

[:fr]La parole est aux speakers : Richard Hanna[:]

[:fr]Jusqu’au PHP Tour 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

E-Learning sans Internet, ou presque

Retour d'expérience sur le développement d'une progressive web app en mobile-first et offline-first pour que des étudiants africains puissent accéder à des cours d'université en tenant compte des problématiques de connectivité. On verra des sujets variés comme gérer des contenus et une navigation en offline et échanger des données avec un serveur sans connexion Internet (oui, oui !).

Salle Jarvis
17/05/2018
12:10-12:30

Tu as travaillé sur un projet offline-first pour des étudiants en Afrique. Ce projet a-t-il changé ta vision sur l’accès à la technologie ou étais-tu déjà sensible à ce sujet ?

Je savais que dans certains pays l’usage du web était vraiment différente de ce que nous connaissons en Europe. Par exemple, en Afrique ou au Moyen-Orient, Facebook ou WhatsApp sont les principaux accès au « web » car ils sont intégrés à la plupart des forfaits.
Ce qui m’a frappé en travaillant sur ce projet c’est que finalement accéder à la technologie et à Internet est aujourd’hui plus facile que d’accéder aux études supérieures. En effet, dans la plupart des pays africains, 3 étudiants sur 4 ne pourront pas suivre les cours d’université faute de places. Alors que ces jeunes sont majoritairement équipés de smartphones.

(suite…)

[:fr]La parole est aux speakers : Julien Pauli[:]

[:fr]Jusqu’au PHP Tour 2018, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Nommer les choses ? Oui : avec le DNS

On l'utilise tous les jours, il est devenu transparent sauf lors d'attaques de grande ampleur ou d'erreur de config : le DNS est un des premiers services a avoir été crée pour gérer l'Internet. Après un petit historique, nous nous attarderons sur les détails techniques du DNS. Comment ça marche ? Comment le mettre en place chez soi ? En entreprise ? Sur un projet ? Que peut-on faire avec le DNS ? Comment notre langage favori (PHP) intérragit-il avec le DNS ? Basé sur un exemple réel en prod, un petit atelier pratique de mise en place d'une zone DNS avec un maitre, un esclave et quelques resolvers PHP sera de mise pour que tout le monde comprenne bien comment fonctionne ce service indispensable sur Internet

Salle Jarvis
18/05/2018
10:15-10:55

En tant qu’ancien release manager de PHP, quelle est ta vision sur les dernières sorties de PHP ?

PHP suit son chemin : le web professionnel. Il s’enrichit, particulièrement en ce qui concerne l’objet ; et supporte les dernières nouveautés importantes du moment, comme il l’a toujours fait.
On nous promet du JIT dans PHP 8 , le chemin est encore long, mais PHP 7 le prépare : la refactorisation du moteur, du gestionnaire de mémoire, et des principales structures ; tout au long de la vie de la branche 7 , prépare la branche 8 et son moteur JIT qui nous fournira encore de meilleures performances !
(suite…)

[:fr]La parole est aux speakers : François Zaninotto[:]

[:fr]Jusqu’au Forum PHP 2017, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

GraphQL, l'avenir du REST ?

REST est devenu un standard pour les APIs web. Mais malgré sa popularité, il est plein de défauts. Son successeur existe et il vient de Facebook. Venez découvrir en détail le principe, la mise en oeuvre et l’écosystème de GraphQL. Vous repartirez de cette conférence avec la réponse à la question : dois-je utiliser GraphQL pour mon prochain projet ?

Qu’est qui t’a motivé à proposer ce sujet ?

Dans ma société, nous avons développé plusieurs prototypes sur GraphQL ; ces prototypes nous ont ouvert les yeux sur le potentiel immense de cette technologie.
Alors j’ai commencé à creuser les motivations des créateurs de GraphQL, et je me suis rendu compte que nous souffrons au quotidien de l’architecture REST, mais sans vraiment se l’avouer. GraphQL, c’est un peu comme un copain bien intentionné qui vous tape sur l’épaule pour vous dire : eh, mais tu t’embêtes beaucoup là, avec ta roue carrée. Tu ne veux pas utiliser les roues rondes plutôt ? J’ai voulu partager cette révélation !
Depuis, nous utilisons GraphQL en production, avec beaucoup de bonheur.

(suite…)

[:fr]La parole est aux speakers : Marc Hugon[:]

[:fr]Jusqu’au Forum PHP 2017, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Maisons du Monde et l'architecture orientée services

Le site www.maisonsdumonde.com a ouvert il y a 11 ans. Il y a un peu plus d'un an, pour assurer une croissance importante et créer une expérience client unifiée, nous avons fait le choix de migrer vers une architecture logicielle orientée services et de faire converger nos applicatifs e-commerce et de prise de commande en magasin. Nous reviendrons un peu plus précisément sur les choix que nous avons fait (gestion des versions, git, déploiement, logs applicatifs, ...), et nous vous présenterons quelques changements majeurs dans nos méthodes de travail, que nous n'avions pas forcément tous anticipés mais qui s'avèrent très efficaces.

Il y a 3 ans lors du Forum PHP 2014 tu nous présentais la mise en place des tests fonctionnels chez Maisons du Monde, y-a-t-il eu du nouveau de ce côté chez vous ? Cette couverture de tests vous a-t-elle aidés dans la mise en place de l’architecture orientée services que tu nous présenteras cette année ?

Nous continuons à maintenir l’utilisation de tests fonctionnels tels que présentés il y a 3 ans. Ils nous permettent de nous rassurer avant les mises en production qu’on continue à pratiquer quotidiennement. La seule nouveauté, c’est que nous testons l’abandon de Cucumber au profit de testcafe. On vous proposera un retour dès qu’on aura assez avancé sur ce sujet…
Pour répondre à votre question, ces tests sont utiles dans le cadre d’une refonte technique orientée services, car ils sont complètement agnostique de la partie technique. Ils se contentent d’utiliser un navigateur et d’appeler une URL pour interagir avec la page retournée. Ils ne voient pas les services qui sont créés. Ils nous permettent donc d’assurer une partie importante de la non régression.

(suite…)

[:fr]La parole est aux speakers : Sébastien Lavenant[:]

[:fr]Jusqu’au Forum PHP 2017, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Les interfaces, l’ADN de votre application

Tout comme l’ADN, qui permet l’identification d’une personne, les interfaces représentent la signature structurelle de votre application. Nous en utilisons tous, mais les exploitons nous au mieux ? Que se soit pour l’injection de services, les tests, l'exposition d’API, ou bien d’autres usages, elles sont au coeur de notre quotidien. Je vous propose de découvrir comment profiter des possibilités offertes par l’utilisation de ce formidable outil : l’interface.

D’où vient l’idée de donner une conférence sur les interfaces ?

Lors de mes dernières participations à des conférences PHP, j’ai constaté que la grande majorité des conférences portaient sur des sujets souvent liés aux technologies du moment. Les sujets fondamentaux y sont parfois délaissés. Il me paraissait intéressant de présenter un thème qui semble connu de tous, mais qui est pourtant sous-exploité. Beaucoup de choses peuvent correspondre à cette définition et, les interfaces m’ont paru être un sujet particulièrement approprié.

(suite…)

[:fr]La parole est aux speakers : Sophie Beaupuis[:]

[:fr]Jusqu’au Forum PHP 2017, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Le langage objet passé, présent futur

Comment en est-on arrivé à la nécessité d'un langage orienté objet ? Quelle était le besoin et l'idée de départ ? Cette conférence a pour but de répondre à ces questions et de questionner aussi le présent, notre façon de "faire de l'objet" dans PHP aujourd'hui. Enfin nous aborderons pour finir deux visions de l'objet plus récentes : le motif "Objet nu" et la programmation orientée à l'Est.

Après plusieurs années de consulting, y-a t-il des erreurs récurrentes que tu a rencontré sur les projets PHP ?

Oui, je retrouve souvent :
– Le fait que les développeur oublient toujours que le site aura plus d’un seul utilisateur concurrent.
– Le fait de ne jamais penser à la dimension (taille et nombre) des données et à leurs relations.
– Le manque de robustesse de l’application vis à vis de la défaillance d’un service tiers.
– Le peu d’intérêt des développeurs pour ce qui se passe en production.
– L’absence de réflexion générale sur l’architecture dans de très nombreux cas.

(suite…)

[:fr]La parole est aux speakers : Kévin Dunglas[:]

[:fr]Jusqu’au Forum PHP 2017, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils aborderont lors de leur conférence !

La conférence

Développer plus rapidement avec Symfony 4

Symfony est un framework universellement reconnu pour sa qualité, sa fiabilité et sa capacité à propulser les gros projets "entreprise". Mais depuis quelques années, Symfony s'est également doté de nombreuses fonctionnalités permettant de développer toujours plus rapidement des applications web. Symfony 4 propose des améliorations majeures dans ce domaine grâce à une refonte profonde de la configuration par défaut du framework qui va changer profondément la manière dont nous développons des applications. Au cours de cette présentation, j'aborderai :

  • Les grands concepts et les nouveautés de Symfony 4: micro-framework par défaut, 12-factor app, nouveaux composants...
  • Flex, le nouvel installateur surpuissant de Symfony qui peut également installer et configurer automatiquement bibliothèques et bundles 
  • La nouvelle structure de répertoire simplifiée (et sans bundle) de Symfony 4
  • L'autowiring (qui est désormais activé par défaut), qui permet l'injection automatique des dépendances sans avoir à écrire aucune configuration (fini le YAML et le XML)
  • Le système de contrôleurs, amélioré et assaini
  • "Encore", le nouveau système de gestion des assets (JS, CSS) basé sur Webpack
  • Les intégrations officielles des bibliothèques Doctrine (ORM), API Platform (API Rest) et EasyAdmin (générateur d'admin)
  • Comment utiliser facilement Symfony 4 avec Docker du poste de dev jusqu'au déploiement dans le Cloud, grâce à un squelette dédié A la fin de ce talk, vous saurez comment utiliser Symfony aussi bien pour vos gros projets que pour vos prototypes, vos petites applications et vos "week-end projects", tout en vous permettant de basculer d'un mode à l'autre.

Tu va nous parler de la version 4 de Symfony et tu es membre de la Core Team. Quel a été ton rôle dans cette release ?

Symfony 4 – qui sortira courant novembre – va changer de manière profonde la manière de développer des applications.

L’objectif assumé pour cette version est de simplifier la prise en main du framework ainsi que d’accélérer le processus de développement ; mais sans transiger avec ce qui a fait la réputation de Symfony : extensibilité, modularité et fiabilité.

Pour se faire, énormément de nouvelles fonctionnalités ont été introduites, les plus notables sont :
Symfony Flex : un nouvel installateur pour les composants Symfony, les bundles et les bibliothèques PHP qui permet de partir d’une structure légère de type micro-framework et d’ajouter sans effort des briques fonctionnelles avancées tel qu’un ORM, un système de gestions des logs, une interface d’administration ou encore une API.
L’amélioration du mécanisme d’injection de dépendances et l’activation du mode « autowiring » par défaut, qui permet de ne plus avoir à écrire de configuration et de « refactorer » facilement les applications.
Une approche « Cloud Native » qui va de paire avec un retour aux sources d’Unix (configuration par variables d’environnement, logs écrits directement sur stderr…). Résultat : une bien meilleure intégration avec Docker, Kubernetes et les plateformes du type Google Container Engine, SensioCloud ou encore Heroku.
L’apparition de Symfony Encore, le premier composant écrit en JavaScript de Symfony, qui permet de très facilement intégrer NPM/Yarn, Webpack ou encore React dans un projet.
Une comptabilité plus importante avec HTTP/2 (composant Weblink).

Malgré toutes ces nouveautés, la rétro-compatibilité avec les versions précédentes du framework reste au coeur de nos préoccupations. Il est donc possible de migrer aisément une application Symfony 3 vers Symfony 4, ainsi une application qui fonctionne sans erreur d’obsolescence avec Symfony 3.4 fonctionnera également avec Symfony 4.0.

Le travail sur cette version a été titanesque. C’est le fruit de contributions de plusieurs centaines de développeurs. Le rôle de la Core Team est surtout de relire et de merger ces contributions.
Pour ma part, j’ai surtout travaillé sur la partie simplification de l’expérience développeur et la compatibilité avec Docker.
Ceux qui ont assisté à ma présentation au Forum PHP de l’an dernier devraient avoir une impression de déjà vu : les outils et façons de faire que j’avais présentés ont depuis été intégrés directement dans le core de Symfony et seront activés par défaut dans Symfony 4.

(suite…)