ForumPHP, retour sur le cru 2017

Est-ce que le Forum deviendrait corporate ?

Fraîchement revenu sur Toulouse, je profite d'un moment tranquille dans un café place Saint-Aubin pour rédiger ce retour sur le Forum PHP édition 2017.

Le Forum PHP, késako ?

Pour ceux qui ne connaissent pas le Forum PHP où qui en ont vaguement entendu parler, le Forum PHP est LA manifestation nationale organisée par l'association AFUP autour du langage PHP.

Sur deux journées, plus de 600 personnes viennent assister à des conférences et des ateliers préalablement soumis par des speakers bénévoles.

Le Forum PHP a un petit frère, le PHP Tour qui lui change de ville chaque année, la prochaine édition se tiendra à Montpellier en mai 2018.

Le caractère associatif du Forum PHP en fait un événement particulier : très convivial, bienveillant, varié, des tarifs abordables (à partir de 150 € pour 2 jours, c'est très correct), sans oublier la bonne bouffe et la soirée du premier soir qui n'enlèvent rien au plaisir d'y participer ;)

Donc, le Forum PHP, c'est à faire, demandez à votre boss de vous y envoyer l'année prochaine !

Les ateliers

Cette année, il y avait 3 ateliers d'une demi-journée en parallèle des conférences :

  • Un framework basé sur les middlewares, ça donne quoi ? - Matthieu Napoli
  • Principes et patterns du DDD - Alexandre Balme
  • Des lego, des bonnes pratiques et du fun ! - Antoine Lelaisant, Pierre Plazanet

Je n'ai participé à aucun de ces ateliers, ne souhaitant pas manquer certaines conférences.

Les conférences

Je vais revenir sur les conférences qui m'ont branchées cette année.

PHP 7.2 Remi Collet

J'aime le style de Remi (sans le "é") que j'avais déjà vu dans sa conférence Oublions mod_php : tranquille, élégant avec son beau chapeau rouge (Red Hat), c'est la classe pour commencer un Forum.

PHP 7.2

Si le sujet "PHP 7.2" ne dévoile pas d'innovation majeure, il est bienvenu à mon sens.

Depuis la release de PHP 7.0, les gains de performance, puis la 7.1, tout le monde dans l'écosystème PHP a envie de voir ce que l'éléphant a dans le ventre pour la suite : pas question de s'arrêter en si bon chemin.

Du coup, Remi - release manager de cette 7.2 - nous a présenté une série d'améliorations et de nettoyages du langage qui ont pour but de préparer les prochaines releases.

Je vois un rapprochement en terme de pédagogie entre ce que Remi nous a présenté sur les avancées de PHP et ce que la team de Symfony effectue pour les releases mineures du framework : ce n'est pas parce que c'est une sortie mineure qu'il n'y a pas grand chose à dire, au contraire.

Et puis PHP est un langage qui a besoin d'amour, donc, merci pour ces news fraîche sur le projet ;)

Merci @RemiCollet

Les slides

Signaux, process id et PHP - Alexandre Balmes

Dans cette conférence, Alexandre Balmes nous a montré comment jouer avec les signaux pour communiquer avec vos processus PHP.

Signaux process et php

Pour faire simple, lorsqu'en ligne de commande vous tuez un script avec un redoutable Ctrl+C, c'est le système qui arrête brutalement le processus et ne lui donne aucune chance de terminer proprement son action en cours.

Le petit nom du signal Ctrl+C, c'est SIGINT, et vous pourriez en utiliser d'autres qui eux permettent à votre script de s'arrêter proprement, ou attacher une action particulière à un signal.

La où je reste un peu sur ma faim, c'est sur les usages de cette communication entre le système et un script PHP : on sent qu'il y a plein de choses à faire avec ces signaux, mais pour l'instant je vois pas... À creuser !

Merci @pockysta

Le streaming d'API : pourquoi ? comment ? - Audrey Neveu

La grande surprise de ce Forum ! Le sujet semblait déjà sympa, mais la présentation a déchiré ma mère.

Streaming d'api Je suis complètement fan d'Audrey qui nous a guidé avec beaucoup d'humour et du live coding à 300 à l'heure sur ce qu'on pouvait faire avec du streaming d'API.

Pour faire simple - et de ce que j'ai saisi - nous avons plusieurs méthodes à disposition pour faire des applications temps réel et assurer une mise à jour (quasi) instantanée des data chez le client : du polling, des webhooks, du websub, du websocket et enfin du server sent events.

C'est cette dernière méthode que la conférence met en avant pour ses avantages sur les autres : limitation des attaques de type ddos, messages d'update qui ne contiennent que les changements d'état depuis la dernière récupération de données, utilisation du protocole HTTP etc.

Je n'ai pas retrouvé les slides du ForumPHP, mais voici un lien de la conférence donnée au Devoxx

Merci @audrey_neveu

Développer plus rapidement avec Symfony 4 - Kévin Dunglas

Avec Kévin, c'est une conférence gzipée que vous prenez en pleine poire.

C'est dense, ça va vite au début, et ça accélère à la fin.

Symfony 4 Le sujet est pour le moins sexy et le teasing fonctionne : Symfony 4 semble apporter une évolution majeure - mais non cassante - dans la vie du framework.

Nous allons pouvoir revoir nos habitudes, ré-organiser notre code, maîtriser ce que nous injectons, écrire beaucoup moins dans les fichiers services.yml.

Au niveau technique, je suis beaucoup moins fan de l'entrée de certains "bundles" tels que EasyAdmin ou ApiPlatform sous des alias de vérité imposée - admin, api - car je trouve que cela laissera plus longtemps dans l'ombre des initiatives moins connues et quelque part concurrentes.

Par contre, le fait que ces librairies soient couvertes par la core team est rassurant sur leur mise à niveau régulière avec les prochaines versions de Symfony.

Mais bon, pour résumer, on va s'éclater avec Symfony 4.

Merci @dunglas

Les slides

GraphQL, l'avenir du REST ?

François Zaninotto est une personnalité dans l'écosystème PHP.

Après avoir ressucité PropelORM (qui depuis est retourné dans son caveau), il a opensourcé Faker, et fait un tas de choses intéressantes en JS avec sa société Marmelab (NgAdmin et admin-on-rest).

À l'origine, François avait proposé un sujet sur Server-Less qui me branchait vraiment, j'étais un peu déçu du changement en cours de route vers GraphQL, plus largement documenté, mais bon, ce sera sûrement pour le PHP Tour ;)

Graphql

GraphQL est une spécification de Facebook pour permettre un requêtage performant de ressources, notamment en proposant des possibilités d'aggrégation et de sélection partielle des données qui vous intéressent, le tout sur protocole HTTP.

Sur le papier, c'est d'enfer, et tout le monde s'y met, difficile ce qu'il restera à REST d'ici un à deux ans.

Ce qui est bien avec PHP, c'est qu'on est jamais en avance, donc on a le temps de voir venir les premières implémentations de serveur GraphQL. Drupal 8 a un module GraphQL en cours de développement, ce sera l'occasion d'en reparler.

Pour revenir à la conf', le style est mordant, empli d'un humour pince sans rire, tout le monde se reconnaît dans les allusions, et les visuels entre les slides techniques détendent les zygomatiques pour faire passer la pillule de notre devoir de changer nos habitudes.

Graphql

Sur le fond, le sujet mériterait d'être développé plus longuement, notamment sur l'implémentation dans un projet, la gestion côté serveur, l'aggrégation de plusieurs sources de données - tient, pourquoi pas du REST ? - je suis certain que le public du Forum aurait aimé entrer dans le détail d'une techno qui arrive très tard dans l'écosystème PHP.

C'est donc une opportunité pour une prochaine conférence :)

Merci @francoiz

Faut-il faire du travail de qualité ? - Jean-François Lépine

C'est la conférence qui dérange, juste ce qu'il faut pour réfléchir à la place de la qualité dans notre quotidien de développeur.

Je résumerais à la hache que la qualité doit être une notion objective, mesurable et partagée par les acteurs d'un projet, et enfin, qu'on ne peut pas bien faire dans tous les domaines.

Jean-François fait du bien à tout le monde quand il dit qu'on ne peut améliorer que 2 axes parmis ceux-ci

Qualité

À accepter aussi, un jQuery dans votre dépôt en plein milieu des assets peut faire le job en lieu et place de 130 mégas de node_modules/, j'essaierai de m'en rappeler (mais c'est duuuur).

Une conférence à revoir en tout cas, le message est simple mais mérite une seconde passe.

Merci @Halleck45

Les slides

Log me now - Kévin Gomez

Dans cette conférence, Kévin Gomez nous a montré comment construire un format de logs adapté aux besoins du développeur et du métier.

Log me now

C'est un sujet auquel je donnerai plus d'attention après avoir vu cette conférence.

J'ai apprécié l'idée de proposer un scénario de résolution (sous la forme d'une clé "action") directement dans le log. Ceci pourra permettre au développeur qui analysera ce log de fixer un bug lié à un script qu'il n'a peut-être pas codé.

Pour information, Kévin est l'auteur de la librairie RulerZ qui permet d'appliquer des règles de filtrage écrite une fois et applicables dans différents scénari (pomm, doctrine, tableaux...).

Je vous invite à (re-)voir les slides de la conf' sur RulerZ

Merci @KPhoen

Les slides

Le language objet passé, présent futur - Sophie Beaupuis

Cette fois, nous avons pris de la distance avec PHP pour nous intéresser aux objets conceptualisés il y a une cinquantaine d'année.

Nous avons aujourd'hui l'habitude de remplir nos classes de getters et de méthodes qui renvoient des valeurs basées sur d'autres objets reçus en paramètre.

Sophie nous montre que l'on peut supprimer ces getters et valeurs de retour en confiant à l'objet la mission de se modifier lui-même.

On limite les erreurs liées à ces valeurs de retour dont le contenu n'est pas certain.

L'exemple pris sur scène avec des volontaire est parlant : un groupe de 4 personnes doit mettre son nom sur un bloc notes.

Première option, un participant demande le nom des 3 autres et inscrit le sien.

Seconde option, le bloc note circule de main en main et chaque participant se charge d'inscrire la donnée qu'il possède.

Dans le deuxième cas, le risque d'erreur est plus faible, et la complexité du process est réduite.

La confidentialité des données est également améliorée.

On parle de programmation orientée à l'est, getter = ouest, setter = est, c'est smart ;)

Je suis certain que d'ici 20 à 30 ans, ça fera un carton en PHP !

Merci @so_php_ie

Les slides

Slideshow Karaoké

Si on vous propose un jour de participer à un slideshow Karaoké, dites non. Trop dangereux !

Sur une série de slides foutraque, un speaker doit improviser un talk de 5 minutes. Et 5 minutes où chaque nouveau visuel vient casser le contenu que vous vous efforcez de construire sur le précédent, c'est long :)

Nous, du côté des spectateurs, on s'est bien marré.

Slideshow Karaoké

Merci aux speakers désignés :)

La réunion des Antennes locales AFUP

Ce Forum a été l'occasion de faire une réunion entre les responsables des antennes AFUP partout en France et le bureau de l'AFUP.

Si 2017 a vu monter de nouvelles antennes, le travail de communication et de coordination entre ces antennes devrait permettre de faciliter l'organisation d'ApéroPHP (meetup PHP) et de faire venir des speakers d'autres antennes.

Les antennes AFUP

Trouvez une antenne AFUP près de chez vous

L'Élephpant AFUP

Tout le monde l'attendait, il paraît même que la douane ne voulait pas le laisser passer parce qu'ils sont trop mignon, mais ce Forum a été l'occasion de présenter le tout nouvel élephpant AFUP.

On a le notre sur Toulouse, vous le verrez au prochain ApéroPHP ;)

Elephpant AFUP

Alors, ce cru 2017 ?

J'ai passé un très bon moment à Paris durant ces deux jours.

L'organisation est niquel, l'équipe de bénévoles aux petits soins, et les participants sont vraiment ouverts à la discussion.

C'est peut-être le plus important dans ce genre d'événement : profitez de leur présence pour rencontrer d'autres développeurs, des speakers, les core contributeurs de votre projet open source préféré, il sont (aussi) là pour ça !

Pourtant, je regrette un peu la programmation de cette édition, un peu trop corporate, j'espère voir plus d'innovation et de cas pratiques sur un prochain forum.

Adhérer à l'AFUP

L'AFUP est une association, vous pouvez y adhérer pour 25 €, c'est un moyen de participer à la vie de l'association.

Mai 2018, direction Montpellier

Le prochain événement de l'AFUP, c'est le PHPTour, et il aura lieu les 18 et 19 mai 2018 à Montpellier.

Pour nous toulousains, c'est top, et comme disent les montpelliérains, ça tombe bien, les 18 et 19 mai prochain, il fera beau à Montpellier :)

Derniers articles