PhpTour 2018 par Camille

Premier Jour

Le 24 et 25 mai 2018 se déroulait la dernière édition du PHP Tour.

Étant stagiaire chez Kiboko, je n’imaginais pas avoir la chance de pouvoir me rendre à ce genre d’événement. Après 5h de voiture, nous voilà au Gaumont Odysseum, à Montpellier, qui a été réquisitionné pour l’occasion.

L’équipe Kiboko en route pour le PHP tour 2018

Après une razzia sur les stands des sponsors, c’est le sac pleins de goodies que nous assistons à la première conférence de la journée.

Nikolas Grekas nous explique comment Symfony 4 a pu tirer le maximum du potentiel du moteur de PHP7.

Arrive ensuite Jean Pasdeloup et Romain Cottard, qui nous résument 5 ans d’évolution de l’import du catalogue Deezer.

Puis vient la conférence qui pour moi a été la plus intéressante de la journée :

“Bienvenue dans la matrice !” de Benoit Jacquemont, qui travaille chez Akeneo. Il nous montre différents outils systèmes qui peuvent nous permettre d’intercepter et d’analyser les échanges entre les processus et le noyau Linux.

Une conférence technique, mais Benoît, très pédagogue, a su bien vulgariser ce qui se passait derrière un programme, comment les processus interagissaient entre eux, et comment trouver des solutions à des problèmes qui semblent à première vue très compliqués à résoudre.

Moi qui avais une vision très surfaite de comment fonctionnait un programme, j’ai pu grâce à cette conférence acquérir une vision un peu plus globale de la “Matrice”.

Nous découvrons peu de temps après le Speak de Nicolas Loeuillet, qui nous présente son projet, Wallabang, et son retour d’expérience sur le parcours qu’il a effectué lors de cette aventure. Il répond également à la fameuse question : Peut-on gagner sa vie avec un projet Open-source?

La réponse? Ça semble à première vue compliqué, mais pas forcément impossible.

La pause

Petite pause déjeuner, histoire de reprendre des forces pour l’après-midi, puis compétition inter-entreprise de BabyFoot, où nous avons malheureusement dû nous incliner face à l’adversité.

14h00 : reprise des hostilités avec Joel Wurtz, qui nous explique comment faire de l’asynchrone avec PhP de manière simple, sans finir avec le cerveau qui fume, et surtout sans callbacks (Et oui c’est possible !).

C’est à ce moment de la journée que j’ai du faire le choix cornélien, entre la conférence “Un autre regard sur la validation” de Quentin Pautrat, et “CQRS, Fonctionnel, Event Sourcing & DDD (Domain Driven Design)” d’Arnaud Lemaire.

J’ai fini par choisir le speak d’Arnaud car je ne connaissais aucun des concepts énoncés ci-dessus.

Au programme beaucoup de théories sur des concepts architecturaux assez complexes, à une cadence très soutenue (environ une centaine de slides en 40 minutes, autant dire qu’il fallait s’accrocher, surtout après avoir bien mangé).

Mais le sujet était plus qu’intéressant et permettait d’entrevoir différentes approches d’un projet, de choisir la bonne manière d’organiser son code suivant le besoin, et surtout d’expliquer des concepts qui peuvent paraître très nébuleux aux premiers abords.

Un peu d’Ethique

Enfin, pour finir cette belle journée, Laurent Chemla nous a proposé une conférence-débat sur un sujet plus que polémique en ce moment, j’ai nommé : Le respect de la vie privée,  et plus particulièrement la responsabilité des développeurs par rapport à celle-ci.

Et en plus il distribuait des macarons.

Apéro communautaire

Consommations offertes par l’Afup, ça c’est cool.

Deuxième jour

Lever à 8 heures, on attaque avec Kévin Dunglas , que je suis sur les réseaux sociaux déjà depuis un bon moment.

Il nous montre les différences entre les architectures REST et GraphQL, l’alternative proposée par Facebook. Démonstrations à l’appui, il nous explique les avantages, les inconvénients, le tout à travers son framework : Api Platform.

Toujours au top, des explications toujours clairs, un vrai plaisir d’assister à ses talks.

Caching with PSRS

Hannes Van De Vreken nous présente ici les différences entre le PSR-6 et le PSR-16, comment le mettre en place sur nos  applications, et chose très importante :  Comment bien gérer son cache.

Petite pause

On fait le plein de café et de viennoiseries, et on y retourne !

Un peu d’événements dans un monde linéaire

Une autre de mes conventions préférées, car la gestion des événements a longtemps été un concept assez abstrait pour moi, et Julien Vinber a su éclairer les choses grâce à des exemples très complets.

Il nous montre aussi les différences entre la gestion d’événements synchrones et asynchrones (RabbitMQ)

Et pour la fin…

Et pour finir ce PHP tour, on se retrouve avec Romain Monceau qui nous présente son retour d’expérience de l’utilisation de doctrine pour traiter des processus lourds, de type import de gros volumes de données et des problèmes qui en découlent à travers un exemple qui nous parlera à tous :

L’import d’un immense catalogue de bières dans notre base de données !

A travers cet exemple léger, on a pu voir que changer notre manière de développer peut apporter d’énormes gains de performance, ce qui sur de gros volumes peut nous faire gagner un temps précieux.

Ma vision de ce tour

C’est le premier événement de ce genre auquel j’assiste et sûrement pas le dernier. Outre les conférences toutes très intéressantes, ce que j’ai préféré dans ce tour, c’est de pouvoir rencontrer et de surcroit échanger avec d’autres développeurs qui ont pour la plupart beaucoup plus d’expériences que moi, et de voir à quel niveau ils ont pu arriver et surtout l’ampleur des projets qu’ils entreprennent .