The 3rd edition of our multi-destinations conference, organized by our local PHP users groups and led by AFUP, the French PHP users group

Friday 11th June 2021

09:20
1
Comment dompter un Legacy ? Parlons smoke testing, golden master et même migration progressive.
Talk by Estelle LE CAM in Toulouse (40 minutes)

Une fois notre projet bien lancé on se rend souvent compte qu'on est allé un peu vite ou que nos features ont grossi et nos tests, diminué. Comment maintenant vivre avec son historique et retrouver la maîtrise de son application pour aller sereinement ajouter de nouvelles feature ? La question a été posée chez SAFTI et en amont de notre migration progressive nous avons pu mettre en place plusieurs pratiques de test pour redompter le legacy qui fait notre force. Avec ce retour d'expérience vous trouverez des pistes sur comment vous réconcilier avec votre legacy.

1
Dive in the dependency injection container
Talk by Stéphane Hulard in Tours (40 minutes)

Découvrons ce pattern et comment il fonctionne à travers des exemples réels. En prenant comme base le conteneur intégré à Symfony, mais en essayant d’ouvrir à toutes les solutions offertes par la communauté (aka PSR11), j’espère vous faire découvrir des capacités cachées dans votre application ! Les conteneurs d’injection de dépendance font parti intégrante des frameworks que nous utilisons tous les jours. On peut même dire que c’est le coeur de votre application. Aujourd'hui, on essaie d'automatiser au maximum leur configuration pour faciliter leur usage, mais comme ils permettent de créer, configurer, combiner des objets, ils gagnent à être mieux connus et maîtrisés.

10:05
0
Building a realtime dashboard powered by Laravel and Livewire
Talk by Freek VAN DER HERTEN in Toulouse (40 minutes)

At Spatie we have a Laravel/Livewire powered dashboard that displays interesting data, such as statistics from GitHub, Twitter mentions, the up/down status of our sites, and much more. We've recently opensource the dashboard, so everyone can use it. In this talk, you'll learn how you can set up your own dashboard in no time. After that, we'll take a dive under the hood and you'll learn how it works internally. Finally we'll take a look at the pros/cons that Livewire brings to the table compared to WebSockets.

1
Reconversion professionnelle
Talk by Dinara MUKPAYEVA, Faustine LOUIS in Tours (40 minutes)

Avant, après ? Pourquoi se reconvertir ? Pourquoi le monde du numérique ? Conciliation vie pro et perso ? Retour à l’emploi.

11:15 L'architecture hexagonale ... concrètement
Talk by Fred Blanc in Toulouse (40 minutes)

Souvent présentée comme une bonne organisation du code et surtout permettant de limiter les dépendances, l'architecture hexagonale a fait ses preuves... Mais il y a peu d'exemples concrets et simples, concentrés uniquement sur cette architecture. Remédions à cela !

2
Évolution du web et conséquences
Talk by Romain CLAIR in Tours (40 minutes)

Depuis ses débuts dans les années 90, le web a considérablement évolué. Aujourd'hui, les applications web sont souvent le moyen privilégié de réalisation d'un nouveau projet logiciel. Quelles sont les raisons de ce changement de support technologique aux applications ? Quelles en sont les conséquences pour les développeur·euse·s, les utilisateur·rice·s et les autres acteur·rice·s du cycle de vie d'un logiciel ? Quels impacts sur le domaine informatique en général ? Et qu'en est-il du logiciel libre dans ce nouveau paradigme ? Partageons quelques pistes de reflexion sur l'informatique telle qu'elle est faite et telle que nous la voulons.

12:00
0
Ethique - Data - Performances
Talk by Julien Soleilhavoup in Toulouse (20 minutes)

Bon voilà, on a balancé les trois maronniers du web du moment : Ethique - Data - Performances. Il fut un temps on parlait de faible coût, de qualité et de délai en disant que l'on ne pouvait n'avoir que deux des trois. Est ce que la question se pose pour ces trois-là ? Est ce que porter une attention particulière à l'éthique et aux performances ne va pas appauvrir les données de plus en plus nombreuses à traiter ? Est ce que se concentrer sur le traitement en masse de données de manière performante peut être fait dans un cadre éthique ? Bien sûr tout ça dépend de où vous placez votre éthique, de la quantité de données dont vous avez besoin et de quelles performances. Et surtout : avons-nous les outils pour ça et si oui : lesquels ?

0
Défi : un "hello world" dans un maximum de langages !
Talk by Alex Rock in Tours (20 minutes)

L'AFUP c'est surtout pour du PHP, mais parfois on voit aussi un peu de JS, parfois du Bash, et d'autres. Pendant la durée de ce talk, je vais essayer de faire une présentation rapide d'un maximum de langages de programmation, récents ou pas et faire un "hello world" avec ! Combien de langages peut-on essayer en aussi peu de temps, à votre avis ? Je prends les paris !

14:00
1
Authentification : peut-on se passer du mot de passe ?
Talk by Mathieu PASSENAUD in Toulouse (40 minutes)

webauthn, certificat, biométrie, clé privée, lien authentifié... Il existe plein d'autres manières de s'authentifier qu'avec l'éternel mot de passe que nous détestons tant. Par un ensemble de démonstrations, nous allons voir comment on peut lier fortement sécurité et expérience utilisateur, tout en les faisant aller dans la même direction. Nous allons aussi couper court à certaines théories ou croyances erronnées afin de convaincre vos utilisateurs d'utiliser des méthodes d'authentification alternatives moins pénibles.

1
HTTP/3: C'est une question de transport !
Talk by Benoit Jacquemont in Tours (40 minutes)

L'annonce de HTTP/3, la nouvelle version du protocol du Web, au début de novembre 2018 en a surpris plus d'un•e. En effet, moins de 4 ans la sépare de HTTP/2, alors que plus de 18 ans s'étaient écoulés entre HTTP/1.1 et HTTP/2 ! En pleine finalisation cette année avec un support des navigateurs principaux, cette version apporte une vraie complémentarité au travail réalisé sur HTTP/2, notamment sur les problématiques de latence. Cette conférence reviendra sur le pourquoi de cette version 3, ce qu'elle apporte et ce qu'elle change, et ce que peuvent en attendre les développeurs et développeuses web. Elle sera l'occasion également de présenter les challenges qui vont se poser à la mise en place de HTTP/3.

14:45
0
Le chat par interface et par email
Talk by Jimmy ESCRICH in Toulouse (20 minutes)

Vous avez un système de chat avec notification par email ? Dans votre business, vous ne souhaitez pas faire passer les adresses emails entre vos clients ? Faites comme sur LeBonCoin, liez le chat au système de mail ! Dans ce talk, nous allons pouvoir comprendre comment ça marche, les tenants et aboutissants en terme d'infra et avoir une démo live du parsing par email.

1
No-code, ou le développement d’applications ouvert à d’autres métiers !
Talk by Pascal MARTIN in Tours (20 minutes)

Construire une application sans coder ? C’est une idée que j’entends depuis le début de mes études… Et c’est la promesse de no-code ! D’ailleurs, pendant que des discours déclarent que nos enfants doivent apprendre à coder à l’école, nous écrivons nous-même déjà des applications no-code ! N’avez-vous pas lancé Excel récemment ? Ces dernières années, l’approche no-code a évolué et devient petit à petit un concept viable. Des entreprises, startups ou mastodontes, se lancent sur ce marché et publient des outils et solutions qui aident à rivaliser avec certaines des applications que nous aurions pu développer nous-même… Je ne parle bien sûr pas (encore?) de supprimer nos métiers… Mais est-ce que no-code ou low-code ne permettraient pas à d’autres profils que les nôtres d’avancer plus rapidement sur leurs projets ? À travers cette introduction, vous découvrirez un pan de l’approche no-code et j’espère vous montrer que le développement d’applications n’est plus réservé qu’aux développeurs… Et que nos langages préférés ne sont plus la réponse à toutes les questions !

15:10
0
BPM, Micro-services et PHP
Talk by Franck ALLIMANT, Gérald ROCHÉ in Toulouse (40 minutes)

Les micro services sont partout, mais ce n'est pas grave, on sait les orchestrer. Mais les processus métier ? Comment les implémenter, les monitorer, suivre leur avancement ? Les outils de Business Process Management répondent à ces besoins. À Open Studio, nous avons mis en œuvre un BPM pour construire les process métier de nos clients, en intégrant des micro-services PHP et Python. Et ça marche !

0
Drupal Headless & Front VueJS
Talk by Vincent TOULLEC in Tours (40 minutes)

La but de cette présentation est de montrer comment utiliser Drupal en mode Headless (API), grâce à son module JSONAPI. La démonstration inclut : Une introduction au CMS Drupal La présentation du module JSONAPI et des critères de sélection/tri de contenu L'utilisation d'une application Front en VueJS, qui viendra consommer les contenus de Drupal pour alimenter les contenus en Front. La démonstration de l'alimentation de l'application VueJS en contenu, avec des critères de filtrage. Les points suivants restent à être approndis, pour en faire une démonstration Formulaire de connexion à Drupal, en mode REST. La création de contenus Drupal, via l'application VueJS La conférence n'inclut pas la présentation de l'installation de Drupal et de VueJS.

16:20
0
Développez un site e-commerce Headless avec Sylius
Talk by Olivier ALLAIN in Toulouse (40 minutes)

Sylius a souvent l'image d'une solution classique pour faire des boutiques e-commerces basiques, mais il peut faire beaucoup plus. Sylius en mode Headless c’est possible ? Pourquoi ? Comment ? Au travers d'exemples tirés de retours d'expériences nous répondrons aux questions précédentes et vous aurez sûrement un nouveau point de vue sur Sylius après cette conférence.

3
Des composants responsives sans media queries
Talk by Benoist LAWNICZAK in Tours (40 minutes)

Le temps du pixel perfect est bel et bien révolu, et avec l'avènement des design system nous avons tendance à penser composants plutôt que pages. Le problème est que les composants devraient s'adapter à n'importe quel contexte là où les media queries ajustent les choses en fonction du viewport. Nous verrons lors de cette conférence les possibilités offertes par le CSS moderne pour réaliser des composants flexibles qui s'adaptent sans utiliser les media queries.

17:05
0
Le tooling maison au service de la cohésion d'équipe
Talk by Loïc CAILLIEUX in Toulouse (40 minutes)

Quand j'ai démarré ma carrière dans une agence de communication, j'ai passé 3 jours à configurer un environnement debian afin de pouvoir commencer à coder en PHP. Selon les parcours, les rencontres et le mode de transmission que vous avez connus, vous aurez avec vos collègue une approche plutôt "Juste débrouille-toi" - car tout•e dev est capable de faire ce qu'un•e autre dev a fait - ou "Saint-Bernard bienveillant•e" - car il y a un salut à expliquer ce que vous avez patiemment appris. Et au milieu du quotidien des devs, il y a le tooling, les outils que vous mettez en place pour mieux travailler ensemble. Dans cette conférence, nous allons voir comment le tooling est une solution pour faciliter la communication et le transfert de compétences dans une équipe et pourquoi il n'est pas nécessaire de savoir configurer un poste de travail de A à Z pour être un•e bon•ne développeur•euse. Pour l'illustrer, je vous présenterai un POC d'un utilitaire maison développé avec Symfony : Gug. Gug nous rend service jusque dans la création de stacks docker ou la préparation d'une préprod, et c'est bien du PHP ;) Et Gug, c'est ton pote, alors tu peux lui demande ce que tu veux ;)

1
Code d'équipe: clé de qualité et de solidarité
Talk by Hélène MAITRE-MARCHOIS in Tours (40 minutes)

Je voudrais partager avec l'éco-système php des façons de travailler en équipe et des problématiques liées à la dynamique de groupe qui peut, si elle est correctement utilisée, amener à une qualité de code et surtout une solidarité et une motivation importante chez les équipes de développement. La réflexion collective autour du produit que l'équipe est en train de construire peut amener une dimension supplémentaire dans notre quotidien. Ayant été PO et Scrum Master dans différentes équipes, je m'appuierai sur mes expériences et sur celles des développeurs de Fairness pour illustrer mes exemples.