AFUP Day 2019 is the new conference organized by AFUP, the French PHP user-group, dedicated to PHP and its ecosystem. On the same day, on Friday, May 17th, the PHP community will attend a full day of talks in three different cities : Lille, Lyon and Rennes. Let's share experiences, let's meet the companies in these areas, let's listen to the best experts in the PHP world all!

Friday 17th May 2019

09:00
3
Keynote d'ouverture (10 minutes)

Bienvenue !

09:20
9
Quel est le rapport entre TCP, UDP et la programmation orientée objet ?
Talk by Frédéric Hardy (40 minutes)

La programmation orientée objet doit permettre la conception de programmes fiables, évolutifs, facilement et rapidement, à l’aide de briques de code réutilisables. Pourtant, il est rare de pouvoir réutiliser du code orienté objet dans un contexte différent de celui pour lequel il a été conçu. De plus, parvenir à faire collaborer des objets qui ne sont pas issus du même écosystème n’est pas forcément trivial. Les programmes ont pris de l’embonpoint en termes de quantité de code et de complexité, et ils sont donc dans la plupart des cas très gourmands en ressources intellectuelles et techniques pour leur conception et leur mise en œuvre. De plus, ils deviennent souvent rapidement difficiles à faire évoluer, et leur fiabilité est incertaine et délicate à maintenir sur la durée, si tant est qu’elle soit suffisante dès leur première mise en production. Le constat est donc cruel : la programmation orientée n’a pas tenu ses promesses ! Quoique… l’Homme a une tendance naturelle à accuser l’outil plutôt que la façon dont il l’utilise. Et si nous laissions le bénéfice du doute à la programmation orientée objet durant cette conférence et que nous en profitions pour remettre en cause la façon dont nous l’appréhendons?? En réalisant un parallèle entre les protocoles de communication UDP et TCP à la base d’Internet et la façon dont nous écrivons du code orienté objet actuellement, j’espère vous faire douter de vous-même et à nouveau vous faire croire aux promesses d’Alan Kay !

10:05
13
Laravel : the good, the bad and the ugly...
Talk by Stéphane Hulard (40 minutes)

En France Laravel fait l'objet de troll, et de critiques sur les patterns utilisés et l'approche technique de son créateur Taylor Otwell. La communauté grandit et de plus en plus de développeurs sont amenés à travailler sur ce framework. Comme pour n'importe quel outil, il faut apprendre à s'en servir ! Je propose de passer un peu sous le capot et de voir comment utiliser la puissance de Laravel en respectant une approche solide dans le développement. Je parlerai d'injection de dépendances, de contrat, de tests, de services car oui il est possible de coder correctement avec ce framework !

11:15 OVH.com from 1999 to 2019
Talk by Flavien Chantelot, Flavien Chantelot (40 minutes)

OVH.com est un site institutionnel de 20 000 pages en plus de 15 langues. Il répond à 1,5M de clients mensuellement et est très régulièrement soumis à différents types d'attaques. Néanmoins, il a traversé les années sans refonte technique majeure ; aujourd'hui encore, c'est un site en xml/xslt tournant sur une infrastructure classique n-tiers. En 2018, nous avons enclenché une migration complète de la génération du contenu à la mise à disposition pour nos clients. Comment avons-nous abordé cet immense défi et quelles étaient les contraintes à prendre en compte pour ce projet ? La conférence abordera les décisions et les implémentations techniques sans rentrer dans l'organisationnel. Elle s'articulera en deux parties. La première se concentrera successivement sur l'historique, la migration vers un CMS Drupal, le choix d'un export statique du contenu avec l'ensemble des problématiques liées (navigation, fonctionnalités, rapidité, taille ...) et enfin sur le déploiement vers une toute nouvelle ferme détaillée en deuxième partie. La deuxième partie concernera la mise en place de l'infrastructure permettant d'héberger les divers sites vitrines d'OVH. Cette infrastructure se doit d’être résiliente par le biais de plusieurs data centres (une centaine de machines), scalable de manière simple, rapide et totalement transparente pour les clients. Pour se faire, nous avons dû quitter les standards et mettre en place des technologies innovantes tels qu'un déploiement basé sur des torrents et une architecture blue/green. La conférence sera animée par Aurélien Damien (DevOps Senior) et Flavien Chantelot (Architecte DevOps).

12:00
5
Je ne connais aucune autre femme qui fait du PHP, au secours !
Talk by Marine Gandy (20 minutes)

Réflexions et retour d'expérience sur l'importance de la représentation des femmes et le syndrome de l'imposteur. Lors de ma réorientation, il n'y avait pas beaucoup de filles, et encore moins qui voulaient poursuivre en tant que développeuses back-end. Même après 3 ans d'expérience professionnelle, je ne connais que trop peu de femmes avec le même profil que moi. Comment dépasser ce sentiment de ne pas être à sa place et améliorer la représentation pour les suivantes ?

12:25
4
Table ronde (30 minutes)

Précisions à venir

14:30
10
L'architecture progressive
Talk by Matthieu Napoli (40 minutes)

MVC, CRUD, ORM, SOA, DDD, CQRS, event sourcing, architecture hexagonale, micro-services… J'ai toujours couru après la solution optimale mais je n'ai encore jamais vu le projet parfait. Fini de courir. L'architecture progressive se place en approche plutôt qu'en solution. En partant du constat qu'il est plus facile d'écrire du code que de le comprendre, l'objectif premier ne sera plus du code flexible et extensible. Ce sera du code supprimable ! Pour y arriver nous appliquerons les principes phares de la programmation orientée objet (haute cohésion et faible couplage) à un échelon différent : les modules. Cette approche est libératrice : nous n'avons plus à opposer SQL et ORM, CRUD et DDD, façades et injection de dépendances ! Nous pouvons produire de la valeur ajoutée en mettant en face la qualité et l'effort approprié.

15:15 Explorez votre code avec de l'analyse statique
Talk by Julien Deniau (20 minutes)

PHPStan est un analyseur statique de code pour PHP. Découvrez comment vous pouvez, grâce à lui, rendre votre code moins buggué, plus simple et plus facile à comprendre.

15:40
9
Les merveilles méconnues du SQL
Talk by Laetitia Avrot (40 minutes)

Le SQL est un langage très puissant. Si vous avez suivi les évolutions de la norme SQL, vous devriez savoir ce qu'est une CTE (y compris une CTE recursive), les aggrégations avancées (window function, cube, rollup...) et les différents types de jointures (même les jointures latérales). Mais les avez-vous essayées ? Cette conférence se focalisera sur ces nouvelles fonctionnalités, comment elles sont décrites dans la norme et comment elles sont implémentées dans PostgreSQL avec des exemples concrets. À la fin de cette conférence, vous devriez être capable d'utiliser toutes ces merveilles du SQL et de les expliquer à vos collègues pour que leurs yeux à eux aussi se mettent à briller!

16:50
6
Alice et Bob sont sur un bateau
Talk by Gabriel Pillet (40 minutes)

TOP 3 des phrases que j'aimerais ne plus entendre sur un projet web : "Je vais prendre un café pendant que l'import tourne…", "Le mot de passe de l'utilisateur admin, c'est azerty1234 ?" et "T'as qu'à utiliser un dump de la base de prod.". Si 99% des projets dans le web servent principalement à manipuler des données quelconques, comment se fait-il que l'on délaisse autant la partie "jeu d'essai" de nos projets ? Et puis d'ailleurs c'est quoi un (bon) jeu d'essai ? Nous verrons ensemble les bonnes pratiques pour bichonner nos données dans les différents environements du projet (dev, test, préprod et prod) et des astuces pour faciliter leur création avec Alice et Faker.

17:35 Neuroatypie et IT : quelques conseils
Talk by Alex Rock (20 minutes)

Un nouveau courant est né dans le monde de l'IT : recruter des neuro-atypiques, parce que leurs "capacités" seraient "meilleures". Mais pourquoi ce mouvement est-il né, et la combinaison "neuro-atypie / IT" est-elle vertueuse ? Nous allons ensemble aborder ce sujet encore trop méconnu et le mettre en condition dans notre activité professionnelle. Le déroulé de la conférence sera le suivant : Description de ce qu'est l'autisme et ce que sont les neuro-atypies Présentations des cas de recrutement d'autistes dans l'IT, qui les fait, et pourquoi Des conseils pour améliorer les relations humaines avec les personnes neuro-atypiques

18:00
5
Keynote de clôture (10 minutes)

À bientôt !