[:fr]La parole est aux sponsors : Eleven Labs[:]

[:fr]Nous avons le plaisir d’accueillir Eleven Labs en tant que sponsor OR au Forum PHP 2018, l’occasion pour nous d’en savoir un peut plus à leur sujet au travers de cette interview. Thomas Péjout, chargé de communication chez Eleven Labs, réponds à nos questions.

Vous êtes intervenu dans de nombreuses antennes AFUP lors de meetups cette année, qu’est ce qui vous a motivé pour cela ?

La motivation réside dans le fait qu’on est très fiers de faire partie de cette communauté qui nous apporte beaucoup au quotidien, et que c’est en s’impliquant qu’on peut renvoyer l’ascenseur ! Échanger pour et avec la communauté PHP est toujours un énorme plaisir. C’est ce qui nous pousse à faire des talks et à être présents lors des événements AFUP.

Le Forum PHP c’est notre rendez-vous annuel, et c’est toujours avec le même entrain qu’on monte notre stand et qu’on suit les conférences. On en profite pour remercier une nouvelle fois l’AFUP qui fait un travail de dingue pour proposer chaque année une édition toujours plus solide (C’est bon ? On l’a notre rab’ au buffet ?)

(suite…)

[:fr]La parole est aux speakers : Jacques Bodin-Hullin et Maxime Huran[:]

[:fr]Jusqu’au Forum PHP 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

Sylius quelques chocolats plus tard

Maxime et Jacques viennent du Dark Web sous Magento. Après deux mois d'été à prendre en main Sylius pour un grand chocolatier nantais ils reviennent à Paris pour vous faire un retour bourré de pépites. Ces pépites ne seront pas en chocolat mais elles seront une première et belle mise en bouche à ceux qui souhaitent en savoir plus sur ce splendide framework e-commerce ! On va vous donner les clés de la boutique : e-commerce, symfony 4, une équipe de choc', beaucoup de soirée pizzas/bières, des astuces, des fails/success, du continous everything™ top moumoute et surtout du chocolat ! Plein de bonnes choses en somme.

Grace Hopper
25/10/2018
10:15-10:55

Vous êtes tous deux des routiers de la solution ecommerce Magento. Qu’est ce qui vous a poussés à utiliser Sylius ?

Maxime : En effet j’ai commencé Magento en 2013, un peu par hasard au final. Au bout de quelques années on se rend compte que la solution est complète pour des problématiques e-commerce ; même si elle n’est pas parfaite mais aucune ne l’est ; et qu’avec une bonne maîtrise, on peut vraiment répondre à un bon nombre de besoins métiers de la part des e-commerçants. On attendait Magento 2 de pied ferme depuis de nombreuses années, en espérant garder un fonctionnel aussi poussé que Magento 1, et avec une couche technique « mise à jour ». Magento 1 datant de 2008 et le monde du web évoluant tellement vite, cela ne pouvait lui faire que le plus grand bien.
Mais après quelques années à avoir travaillé dessus et plusieurs projet bâtis de A à Z, je me rends compte que c’est tout l’inverse. Le nombre de régressions en terme de bugs par rapport à Magento 1 est juste énorme. Le temps de développement est beaucoup plus long, ce qui rend les projets plus chers aux clients. Au début, je pensais que ce temps était lié au temps de prise en main de cette nouvelle version, mais ce n’est pas le cas. En terme de développement pur, je dirai qu’on est même gagnant, car on a beaucoup moins de lourdeur au niveau des XML de configuration. Mais on perd beaucoup de temps avec la partie front, surtout sur le checkout qui utilise Knockout JS.
Pour ma part, j’estime que Magento 2 est encore une bêta. Le rachat par Adobe me fait penser que cette solution va perdre son côté Open Source et devenir une usine à vendre des licences, mêmes pour des e-commerçants n’en ayant pas besoin. Ce sont toutes ces raisons qui m’ont donné envie de chercher autre chose. Le paysage des frameworks e-commerce n’étant pas bien large, Sylius a attiré mon attention pour plusieurs raisons :

  • Utilisation du framework Symfony :** En ayant entendu parlé très souvent; il y a juste à demander parmi les participants du Forum PHP qui en fait; j’avais vraiment envie de me diriger vers cette techno.
  • Une conception bien réfléchie :** En analysant l’organisation des tables en BDD, on comprend qu’ils ont bien posé et compris les problématiques métier liées au e-commerce. Il manque encore beaucoup de fonctionnel comparé à un Magento, mais ici au moins, on a un socle sain pour venir y ajouter nos briques.
  • Encore plein de choses à faire !** C’est motivant aussi de se dire qu’on peut apporter notre connaissance dans le domaine pour suggérer des évolutions ou des nouvelles idées pour la plateforme.

Jacques : Magento 1 a été une solution que j’ai appréciée de bout en bout, à condition de faire les choses bien, car elle permettait (et permet toujours en fait) de réaliser des boutiques rapidement et d’une effroyable efficacité (si on vous dit le contraire c’est que la solution n’était pas maîtrisée).

Magento 2 étant un fiasco total il est apparu nécessaire de changer de techno. Evidemment Symfony attire de plus en plus et j’utilisais déjà le framework depuis plusieurs années en perso ou pour des outils internes. Comme l’a dit Maxime, le challenge est présent avec Sylius et je ne vois aucun frein pour que cette solution vienne s’implanter sur le marché du e-commerce !

(suite…)

[:fr]La parole est aux speakers : Fréderic Leguédois[:]

[:fr]Jusqu’au Forum PHP 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

Cessons les estimations !

Alors que les estimations sont à la base des méthodes classiques et que dans le domaine Agile, SCRUM notamment lui accorde une grande importance, nous allons l’espace d’une conférence remettre en cause celles-ci.

Après un bref rappel de différentes méthodes permettant de réaliser des estimations et croyances qui y sont attachées, nous prendrons le temps de réfléchir sur les effets néfastes de ces dernières. Enfin, nous verrons comment dans la réalité des projets, il est possible de s’en extraire.

Conférence iconoclaste, sous la forme d’un one man show, afin de réfléchir (et de rire ?) sur un aspect essentiel de l’agilité.

Ouvert à tout public ayant une première approche des projets de développement logiciel.

Katherine Johnson
26/10/2018
15:15-15:55

En tant qu’agiliste évangéliste, quels sont selon vous les plus grands risques lors de la mise en place de méthodes agiles dans une équipe ?

L’agilité n’est pas tant méthodologique que culturelle. Le rapport à l’incertitude et à l’avenir, qui est une notion importante de l’agilité, ne se définit pas dans une méthode. Mais il est bien culturel : chaque équipe, en fonction des personnes qui la composent, en a une perception différente. Il en va de même pour la notion de collaboration. Pour certaines équipes, il est normal de s’entraider en interne mais aussi à l’extérieur du groupe. A contrario, pour d’autres, le chacun pour soi et le conflit priment, et sont d’ailleurs souvent désignés par de jolis euphémismes tels qu’engagement ou responsabilité.

Donc les personnes sont primordiales. Il est délicat de travailler en confiance avec une personne d’une méfiance extrême. Une personne craintive a besoin de garanties constantes quant à l’avenir avant de réaliser la moindre action, ce qui est difficilement compatible avec la philosophie agile. L’agilité est intuitu personae. Le premier principe du manifeste agile nous le rappelle avec force : « Les individus et leurs interactions plus que les processus et les outils. ». Nous pourrions le reformuler de la sorte : les personnes sont plus importantes que les méthodes. D’ailleurs ce sont bien les personnes qui font les méthodes et non les méthodes qui font les personnes.

D’où un quiproquo régulier sur le fait de vouloir mettre en place des méthodes agiles dans des environnements qui culturellement ne le sont pas, voire sont en opposition avec les valeurs portées par l’agilité. Cela signifie-t-il que la démarche est vaine ? Cela dépend du contexte. Si les succès s’enchaînent, si les rapports humains sont de qualité, que toutes les parties sont satisfaites, que l’équipe prend plaisir à développer le logiciel commandé, que le client reçoit régulièrement les livraisons des fonctionnalités dont il a besoin, alors pourquoi changer ?

En revanche, s’il s’agit d’une situation de crise chronique, que le client est fatigué par un logiciel qui n’évolue que peu ou pas, que les relations sont tendues, que les développeurs sont démotivés, alors peut-être qu’un changement doit être envisagé. Mais il s’agit d’un changement culturel de fond, et non simplement de la mise en place d’une méthode. Dans ce cas, créer une équipe ex-nihilo, avec une forte autonomie, sur une vision commune, avec des valeurs partagées, ça peut-être une possibilité. Les personnes qui rejoindront cette équipe le feront volontairement car elles partagent cette vision.

Une « transformation agile » qui imposerait des « recettes miracle », est un contre-sens avec l’agilité qui prône une forte autonomie des personnes et des équipes. La mise en place de méthodes agiles devrait se faire lorsqu’une équipe touche à ses limites, qu’elle pressent que l’agilité pourrait être une voie à explorer, à sa demande.

Pour répondre à la question, un des grands risques lors de la mise en place des méthodes agiles est de vouloir… mettre en place des méthodes agiles, sans considérer ni la culture de l’organisation, ni les personnes qui la composent.

(suite…)

[:fr]La parole est aux speakers : Laurent Victorino[:]

[:fr]Jusqu’au Forum PHP 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

Développeurs de jeux vidéo: les rois de la combine

Où on y parlera de jeux, de développement de jeux, ou de comment un jeu vidéo n’est qu’un amas de bric et de brocs mis bout à bout dans le seul but de duper, tromper, et leurrer le cerveau des joueurs et faire en sorte qu’ils en redemandent.

Katherine Johnson
26/10/2018
17:10-17:40

Tu as déjà donné des conférences à MixIT, événement qui n’est pas lié aux jeux vidéo, et tu viendras également nous en parler au Forum PHP 2018. Pour toi, qu’est ce que les communautés de développeurs jeux vidéo et non-jeux vidéos ont à apprendre l’une de l’autre ?

J’ai toujours trouvé étrange que nous, les développeurs IT/Web et Jeux Vidéo, soyons si proches culturellement (logique, métiers, technos…) et que nous ne nous connaissions pas vraiment même après toutes ces années. Il y a beaucoup de fantasme autour de nos différents métiers et trop peu d’interactions entre nous. Les développeurs de jeux vidéo pourraient fortement bénéficier des méthodes, techniques et technologies utilisées chaque jour par les autres corps de métier du développement. Et vous pourriez bénéficier de notre créativité et réactivité pour rendre tous les superbes logiciels de comptas que vous développez encore meilleurs 😉

(suite…)

[:fr]La parole est aux speakers : Thomas Jarrand[:]

[:fr]Jusqu’au Forum PHP 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

Voyage au centre du cerveau humain ou comment manipuler des données binaires en Javascript

Parcourir l’intérieur de votre cerveau, sur votre téléphone, uniquement avec des technologies web : c’est possible ! Et si je vous montrais comment on fait ?

On en profitera pour se demander : – Une IRM c’est quoi au juste ? – Comment on stocke une image dans un fichier ? – Comment ça marche le binaire pour un humain ? – Javascript sait faire ça !? – À quoi tout cela peut-il nous servir dans nos quotidiens de dev ?

Un talk avec des vrais morceaux de science, des 0, des 1, des exemples concrets et une démo live !

Grace Hopper
25/10/2018
14:30-15:10

Ta présentation au Forum PHP 2018 aura pour support la lecture d’une IRM, comment es-tu arrivé à proposer un tel sujet ?

Tout a commencé avec un besoin client chez élao ! Nous avons travaillé avec l’Université de Bordeaux sur un jeu éducatif à destination de la recherche scientifique sur le cerveau humain. L’un des impératifs de notre prestation, c’était de pouvoir lire les fichiers sources IRM directement dans le navigateur.

Une problématique originale comme celle-ci, c’était passionnant à implémenter pour un curieux comme moi ! J’ai beaucoup appris sur le fonctionnement d’une IRM, sur le moteur Javascript et sur la numérisation de données.

D’où mon envie de partager cette expérience ! ?

(suite…)

[:fr]La parole est aux speakers : Charles Desneuf[:]

[:fr]Jusqu’au Forum PHP 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

Vous n'avez pas besoin de ça !

React, Microservices, GraphQL, REST, DDD... Tous ces buzzwords porteurs de promesses d'un monde meilleur sont sur toutes les lèvres, de toutes les conférences et s'installent petit à petit dans nos projets. Sont-ils vraiment la seule solution à tous nos problèmes ? Au travers de cette conférence à la description taillée pour le SEO nous verrons qu'il existe des alternatives à ces technologies parfois mieux adaptées au contexte dans lequel nous évoluons tous les jours.

Katherine Johnson
25/10/2018
10:15-10:55

Dans une époque où les buzzwords sont légions, ta présentation sera orientée sur le pragmatisme : as-tu des règles que tu te fixes lors d’un choix technologique ?

Avant de faire un choix de techno je pense qu’il est important de bien s’interroger sur le but du projet : connaitre le besoin auquel il répond, savoir qui il sert, quelles sont les différentes contraintes qui l’entourent, quelles sont les qualités nécessaires et celles sur lesquelles on peut se permettre de rogner…

Une fois que l’on en connait un peu plus sur le contexte j’ai tendance à conseiller de sélectionner les outils les plus simples et/ou connus par l’équipe qui permettent de répondre au besoin. Bien sûr rien n’empêche qu’il faille revoir la copie plus tard et rajouter petit à petit d’autres technos avec l’évolution des besoins et une meilleure compréhension de ce qui est attendu du projet.

Il arrive parfois que le contexte prenne en compte des besoins extérieurs au seul scope du projet. Par exemple il peut être intéressant pour une entreprise de commencer à utiliser une techno sur un projet qui ne va pas particulièrement en bénéficier pour pouvoir se faire la main dessus ou permettre d’attirer des nouveaux profils dans l’équipe.

(suite…)

[:fr]La parole est aux speakers : Damien Seguy[:]

[:fr]Jusqu’au Forum PHP 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

Comprendre le fonctionnement de l’analyse statique

L’analyse statique est un domaine en pleine explosion, surtout en PHP. Relire du code à la vitesse de l’ordinateur requiert des outils théoriques puissants : contrôle de flux, dépendance des données, arbre de syntaxe abstraite, graphe de dépendances acycliques !

Si tout cela semble bien loin de PHP, vendez découvrir comment ils fonctionnent en PHP. Ce sont les outils les plus efficaces pour détecter ces mêmes erreurs que l’on retrouve en production, mais bien avant même que le code ne compile. Nous verrons comment ces différentes approches peuvent être exploitées pour construire une analyse de code destinée à traquer les erreurs qui vous gênent le plus.

Grace Hopper
26/10/2018
14:30-15:10

Avant toute chose pourrais-tu nous définir ce qu’est l’analyse statique ?

L’analyse statique, c’est la relecture de code automatisée. Relire son code et celui des autres fait partie des tâches quotidiennes d’une équipe de développement. Avec une relecture formelle de code, on peut éradiquer jusqu’à 70% des bugs.

L’analyse statique effectue un travail systématique sur le code source : elle travaille sans se fatiguer sur des millions de lignes de code. On peut l’appliquer à un commit ou un projet complet. On peut aussi la faire tourner pendant qu’on fait une réunion.

Elle capitalise surtout le savoir-faire de nombreux experts. Un outil comme exakat contient plus de 700 analyses différentes : il y a celles qui sont classiques ou cruciales, celles qui pourront être considérées plus tard, et celles qui nous en apprennent sur nous-même. C’est fascinant.

(suite…)

[:fr]La parole est aux speakers : Kevin Dunglas[:]

[:fr]Jusqu’au Forum PHP 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

Boostez vos applications avec HTTP/2

HTTP/2 permet d’améliorer jusqu’à plus de 50% le temps de chargement des pages web. Saviez-vous qu’il est désormais très facile d’optimiser vos applications PHP et Symfony pour tirer partie de ses fonctionnalités avancées ?

Au programme :

  • une présentation historiquement contextualisée des différentes versions du protocole HTTP ;
  • un état des lieux du support du protocole dans l’écosystème PHP ;
  • un guide présentant comment servir vos applications PHP et Symfony avec h2, en utilisant Nginx, Apache et Docker ;
  • de nombreux exemples de codes montrant comment utiliser HTTP/2 pour améliorer le temps de chargement de vos assets et de vos API grâce à la bibliothèque WebLink, à Twig et à Symfony
  • des exemples expliquant comment tirer parti du protocole via curl puis Guzzle en tant que clients
Katherine Johnson
26/10/2018
16:25-17:05

Ces derniers mois tu as visité plusieurs antennes AFUP pour présenter des sujets dans leurs meetups. Peux-tu nous parler de cette expérience ?

C’est super de rencontrer une communauté aussi dynamique, et présente sur tout le territoire, pas uniquement à Paris.

À chaque fois l’accueil était parfait et les rencontres très enrichissantes. Et puis c’est toujours un plaisir de découvrir la gastronomie et la bistronomie locale !
Les meetups sont de très bonnes occasions pour tester de nouveaux «  »talks » » et se faire la main devant un public sympa et peut-être un peu moins exigeant que sur les gros évènements nationaux.

D’ailleurs, l’AFUP Lille est toujours à la recherche de nouvelles têtes pour ses meetups, avis aux amateurs !

(suite…)

[:fr]La parole est aux speakers : Aurélien David[:]

[:fr]Jusqu’au Forum PHP 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

Maintenir et faire évoluer une API GraphQL

Comment éviter de casser une API pour ses clients ? Comment continuer de la faire évoluer, le tout sans subir une maintenance trop lourde ? La solution n'est pas simple… Reprenons les bases : l'évolution d'une API consiste à s'efforcer de maintenir le corps de la requête / réponse, les paramètres de la requête, ses fonctionnalités générales, en ne les brisant que lorsque cela est absolument nécessaire. Ce concept n'est pas nouveau, mais il faut le dire, GraphQL va bien nous faciliter la tâche. Voyons ensemble comment mettre en place une API GraphQL évolutive, nous apportant plus de flexibilité et de liberté, tout en évitant (en théorie) aux clients d'avoir à migrer leur application vers une nouvelle version complètement différente.

Katherine Johnson
25/10/2018
11:25-12:05

Tu nous parleras d’API GraphQL lors du Forum PHP 2018. Depuis combien de temps avez-vous cette API en production et quelle est l’envergure du projet ?

Avec mon équipe, on a commencé par tester GraphQL en janvier 2016, avec un simple PoC pour exporter des données dans un fichier CSV directement depuis une requête GraphQL… Après avoir expérimenté avec les deux implémentations en PHP youshido-php/GraphQL et webonyx/graphql-php, on a rapidement été convaincu des bénéfices. Nous avons finalement opté pour le bundle Symfony overblog/GraphQLBundle qui se base sur la seconde implémentation. Aujourd’hui cette API GraphQL est consommée par notre frontend en production et permet à toutes les plateformes de Cap Collectif de fonctionner. Que de chemin parcouru !

Depuis plusieurs de nos clients ont envie d’utiliser notre API pour réaliser des intégrations, telles que :

– L’affichage en temps réel du nombre de participants à une consultation;
– Synchroniser l’application d’agenda de la ville avec notre module d’agenda;
– etc…

Il était grand temps pour nous de documenter et d’ouvrir l’accès à ces données ! Ma conférence va traiter des problématiques liées à la sortie de notre API GraphQL publique.

(suite…)

[:fr]La parole est aux speakers : Nuno Maduro[:]

[:fr]Jusqu’au Forum PHP 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

Illuminez les applications de console avec Laravel Zero

C'est toujours sympa d'écrire de petits scripts à utilisations uniques, mais on a parfois besoin de créer une vraie application console, qui prend des arguments et respecte les conventions UNIX pour l'input, l'output et le reporting d'erreurs.

Pour cette présentation, nous utiliserons Laravel Zero, un micro framework qui s'appuie sur une version non officielle et modifiée de Laravel qui donne un point de départ parfait pour votre application console.

Vous y apprendrez les philosophies et idées à la base du framework. Nous aborderons aussi les points les plus importants de Laravel Zero, à savoir l'installation optionnelle d'Eloquent, l'utilisation du scheduler de Laravel ou l'intégration avec Collision.

La présentation incluera une session de live coding de 30m où vous apprendrez à utiliser Laravel Zero pour créer des applications consoles avec des usages réels.

Au terme de la présentation, vous serez capable de développer des applications console à la vitesse de l'éclair. Ces applications peuvent être utilisées pour des tâches récurrentes, par exemple des cronjobs ou des imports. Vous pourrez profiter de Laravel Zero, le micro framework basé sur les composants de Laravel pour utiliser vos fonctionnalités favorites de Laravel et créer des applications consoles élégantes et bien structurées.

Grace Hopper
26/10/2018
16:25-17:05

La communauté Symfony est forte en France. Peux-tu nous dire pourquoi tu as choisi Laravel ?

Peu de temps après avoir terminé mon master, je cherchais en ligne pour en savoir plus sur PHP. Un des premiers sites apparus dans Google était laracasts.com. J’ai particulièrement apprécié Laracasts car ce site vous fait comprendre que les mots comme testing, solid, repositories, ioc, etc, ne sont que des mots. Et tout ce qui était compliqué est devenu si simple.

Laracasts a aussi des leçons sur Laravel, et c’est pour cette raison que je me suis intéressé à ce framework. Je pense aussi que je m’identifie beaucoup aux idéaux de la communauté Laravel, et surtout à l’aide constante et la valorisation de l’expérience des développeurs.

Au fil du temps, j’ai commencé à créer des projets open source et à contribuer au core du framework Laravel. J’ai aussi un package avec le nom collision qui fait partie du framework Laravel.

(suite…)