Cette année encore, Bedrock participait au Forum PHP où était proposé une grande diversité de conférences. Des sujets techniques et d’autres, plus génériques, étaient abordés : Symfony 6, Git, environnement, sous-représentation des femmes dans l’informatique… Avec Sofia LESCANO, Benoit VIGUIER sur les planches et une quinzaine de participantes et participants dans le publique, l’occasion de rencontrer à nouveau la communauté PHP en chair et en os a été saisie avec une certaine impatience.

Plusieurs conférences ont retenu notre attention et auront un impact à court terme sur nos projets :

Suite à la conférence “Les exceptions : le trou dans la raquette du typage” de Baptiste LANGLADE, la bonne gestion des exceptions nous semble primordiale. Nos équipes sont donc en train de tester le bundle Innmind/Immutable pour mettre en place le pattern Monad (Maybe et Either) afin d’améliorer la gestion d’absence de données à différents niveaux de nos outils.

La conférence “Des tests unitaires pour nos règles de conception” de Frédéric BOUCHERY mettait en lumière l’importance de documenter, expliciter et tester les règles de conception d’un projet. La mise en place d’ADR (Architectural Decision Records) et des tests unitaires associés est une bonne pratique que nous souhaitons développer au sein des équipes. Nous attendons avec impatience le bundle que Klaxoon devrait bientôt open-sourcer: il permettra de tester facilement nos règles de conceptions avec PHPUnit et d’automatiser une partie de la revue technique.

Anne-Laure DE BOISSIEU et Amélie DEFRANCE ont rappelé quelques règles fondamentales d’accessibilité pour nos sites Internet pendant “Accessibilité et SEO : et si on relevait le niveau ?”. Nous espérons désormais améliorer l’accessibilité de notre back-office. Par exemple : retravailler le contraste couleur de certains écrans ou ajouter du contenu dans nos balises HTML pour faciliter la compréhension.

Pendant leur conférence “Kairoi, et PHP se réconcilie avec les tâches planifiées”, Emeric KASBARIAN et Jérémy JAMES nous ont expliqué que leurs clients ont un même besoin : “Déclencher une action automatique à un moment précis, sans aucune limite dans le temps”. Par exemple : “supprimer, automatiquement, un panier d’achat au bout de 15 minutes”. Après de longues recherches, il n’existe rien sur le marché pour répondre à un tel besoin. Et nous, BedRock, confirmons : nous avons le même besoin et n’avons rien trouvé non plus. Kairoi est donc né. C’est une application serveur Rust de planification de tâches, avec son propre protocole (inspiré de celui de Redis) qui permet de :

  • Récupérer des évènements à planifier
  • Connaître l’état d’un l’évènement
  • Le déclencher au moment opportun
    • soit sur un protocole AMQP
    • soit sur un shell

Le Forum PHP est l’occasion de parler de sujets pointus techniquement, mais aussi une occasion d’échange et de partage autour de sujets plus transversaux. Notre domaine, l’IT, comme bien d’autres, est sensible au sujet de l’écologie. Deux axes de réflexion ont été évoqués pendant deux conférences.

En ouverture, François ZANIOTTO nous a partagé avec entrain sa recherche de mesures fiables des dépenses énergétiques. Elle l’a menée à développer GreenFrame, un outil en cours de construction chez Marmelab, qui a pour but de cibler au plus près la consommation énergétique afin de tendre “Vers la sobriété numérique”.

Hélène MAITRE-MARCHOIS a sû mettre en perspective le rôle de chaque développeuse et développeur en insistant sur le fait que la responsabilité du dérèglement climatique n’est pas forcément là où on l’attend. Avec “Comment sauver la planète en ne faisant rien”, elle entend faire prendre conscience que si, la production et consommation de contenu représentent des pôles sur lesquels en tant que tech, nous pouvons agir. Le renouvellement du parc reste une cause prépondérante dans l’impact écologique. Le renouvellement accéléré par le foisonnement de nouvelles fonctionnalités, trop souvent inutiles, est une obsolescence programmée. Utile, Accessible, Durable. Voilà trois notions simples qui peuvent, pourtant, nous permettre de faire la différence.

Nicolas GREKAS, principal engineer Symfony, nous a parlé de l’écosystème de ce framework à travers de sa conférence “Symfony 6 : le choix de l’innovation et de la performance”. Il nous a présenté le calendrier de livraisons et de maintenance des différentes versions, avec la sortie d’une nouvelle majeure prévue tous les deux ans. Chaque majeure voit la suppression du code déprécié dans la version précédente. Par exemple, Symfony 6 est un Symfony 5.4 sans ses dépréciations. Les dernières versions avant une majeure (comme la 4.4 ou 5.4) sont assurées d’avoir un support à long terme. Pour les prochaines versions de Symfony, l’accent est mis sur la compatibilité avec PHP8. Puisque la majorité du travail consiste à remplacer les annotations @return par un typage natif, Nicolas a parlé de l’outil patch-type-declarations qui automatise cette tâche.

Pour finir cette série de conférences, nous avons suivi l’incroyable histoire de WorkAdventure, lors de “WorkAdventure de la genèse à aujourd’hui : Retour d’expérience sur 1 an d’univers virtuels” présenté par David NÉGRIER) : le résultat d’un hackathon fait pour pallier l’ennui des confinements, qui est devenu le support d’événements majeurs l’année dernière.

Photo de l'équipe Bedrock

Les speakers Bedrock

Lors de cette édition, deux Bedrockers ont eu l’opportunité de présenter un sujet, l’occasion pour nous de demander à Sofia LESCANOFaites confiance aux développeurs.euses de votre équipe : voyez plus loin que les fonctionnalités” et Benoit VIGUIERFiber : la porte ouverte sur l’asynchrone” comment ils ont vécu cet événement.

Comment vous est venue l’idée de soumettre un sujet de conférence, et comment avez-vous abordé sa préparation ?

Sofia: Cela faisait longtemps que j’avais ce sujet en tête, et l’idée de refaire des événements en présentiel m’a fait me lancer. Pour moi les tech meetings étaient une grande découverte et un rituel que j’apprécie vraiment et je voulais partager cela avec la communauté. Pour la préparation, j’ai été accompagnée par Matthieu Napoli avec le programme de mentoring de l’AFUP et par mes collègues de Bedrock. Photo de Sofia Benoit: Le PHP asynchrone est un sujet qui m’occupe beaucoup à Bedrock, j’ai donc suivi attentivement la RFC Fiber. L’idée d’en faire un sujet de conférence est venue en me rendant compte que, même au sein de nos équipes, il n’était pas évident pour tout le monde de comprendre tout ce que cet outil pouvait changer. Et puis, refaire un événement en présentiel me manquait vraiment ! La préparation de ce format court était nouveau pour moi, heureusement j’ai pu faire quelques répétitions à Bedrock et à l’AFUP Lyon pour bien ajuster mon timing.

Maintenant que l’événement est derrière nous, que retenez-vous de cette expérience ?

Sofia: C’était une très belle expérience et les échanges que j’ai pu avoir suite à ma conférence ont été très intéressants. C’est très enrichissant d’échanger avec la communauté et de voir que des pratiques similaires ont lieu ailleurs et pouvoir les enrichir dans les deux sens. Photo de Benoit Benoit: C’était un vrai plaisir de pouvoir échanger avec de vraies personnes, sans écrans interposés ! Côté speaker, l’organisation était au top et j’ai eu pleins d’échanges prometteurs sur le potentiel des Fibers. Côté conférences, j’ai vu plein de choses intéressantes, ça donne toujours matière à réfléchir, que l’on partage le point de vue exposé ou non. Merci encore à l’AFUP pour avoir mis toute cette énergie au service d’un si bel événement.

Le forum, particulièrement cette édition en présentiel, c’est retrouver toute une communauté qui partage la même passion. Encore merci aux conférencières et conférenciers, merci aux organisatrices et organisateurs… Et à l’année prochaine !