[:fr]La parole est aux speakers : Nicolas De Boose[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

La clean architecture : pourquoi ? Comment ? Pour qui ?

Les frameworks et librairies externes sont une bénédiction pour les développeurs : cela nous permet de gagner du temps, d'utiliser du code (généralement) de qualité, et de nous concentrer sur ce qui est vraiment important: la vraie logique qui rapporte de la valeur!

Cependant, tout vient avec un coût...

A y regarder de plus près : qui est vraiment "le plus important" dans l'histoire? Le framework dicte ses lois: Vous devez "extend" ses classes, rajouter ses annotations, suivre sa structure de dossiers, etc... C'est une sorte de mariage forcé. Au début, tout est beau... Mais un mariage, c'est fait pour durer ! Quand la "mariée" décide de déprécier et ensuite supprimer ce que vous aimez chez elle (ou pire : elle n'est plus maintenue), vous vous retrouverez paralysé avec une version obsolète, par peur de casser votre fameuse logique métier...

Ca ne peut plus durer ! Dans ce talk, on parlera de tout ce que j'aurais aimé qu'on me dise sur la clean architecture avant de commencer

Comment controler le framework, plutôt que lui ne vous contrôle ? Comment arriver à ce que le framework et vos librairies ne soient qu'un détail d'implémentation ?

Vous aurez en prime :

  • Du code clair
  • Une architecture claire, qui fonctionne sur du back-end comme du front-end
  • Du code facilement testable unitairement... Plus besoin de "booter" votre framework pour tester vos vues
  • Plus aucune peur de passer de mettre à jour une librairie, voire de la changer
Grace Hopper
24/10/2019
10:15-10:55

Comment as-tu connu la Clean Architecture ? Quelles ont été tes ressources, quels livres ont pu t’inspirer ?

J’ai découvert la Clean Architecture en parcourant le blog et les vidéos de Robert Martin/Uncle Bob. À l’époque, je n’avais pas entièrement compris toutes les subtilités de cette architecture et il n’y avait pas encore beaucoup de ressources disponibles à ce sujet. Je n’y ai donc pas porté beaucoup d’attention.

Il y a deux ans, je suis passé sur un projet assez conséquent écrit en Typescript. L’idée était de ne pas adopter un framework. J’en ai profité pour me pencher plus sérieusement sur cette clean architecture. J’ai re-regardé la vidéo d’Uncle Bob et relu son article plusieurs fois. Je suis aussi tombé sur un de ses repo git qui contient 2-3 exemples intéressants ainsi que sur une de ses conférences. Son livre apporte aussi quelques réponses, mais il est dispensable. Enfin, il y a également quelques articles/vidéos intéressant(e)s de développeurs IOS et Android qui m’ont aidé à y voir plus clair (comme celle-ci ou celle-ci).

Pour me faire la main, j’ai commencé un side project où je me suis mis quelques contraintes (le front et l’api doivent partager la même logique). À force de faire des essais/erreurs et de questionner Google sur des thèmes très spécifiques, je suis arrivé à affiner mes connaissances. Ce n’est pas toujours évident si on veut en extraire l’idée de base car les gens changent parfois un peu l’architecture selon leur envie ou besoin.

(suite…)

[:fr]La parole est aux speakers : Paula Čučuk[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

When you get lost in API testing

If you are not writing tests yet, you should start. Tests will improve the quality of your code, reduce bugs and probably force you to think more about design and quality. Actually, the hardest thing is to start and figure out which type of tests to write.

So you start researching and you find a lot of different materials and get even more confused.Even when you decide what type of tests to use, it can be hard to decide how to test some specific logic in your app.

Don’t give up! We have some tips we learned along the way that will hopefully make your life easier. In this talk you will hear about different test types and when to use them. We’ll also show some tools for checking quality of your test. See you in Paris! 🙂

Grace Hopper
24/10/2019
14:30-15:10

Which tools did you try for API testing? What are the important points to consider?

Back when I started writing tests, I actually tried different frameworks like Behat, PhpUnit and PhpSpec. Even though PhpUnit suited me the most, I still believe that the framework choice is not that important, as long your tests are easy to maintain and they make sure that your code works as expected.

When it comes to tools, there are a few tools that check the test quality and suggest possible improvements, and I actually use Code Coverage and Infection (mutation testing) on a daily basis.

All in all, I don’t believe that it’s crucial to pick a certain tool or a framework, you just have to be persistent because writing tests can be confusing at the first glance. Once you master it, development and code maintenance will become easier, but also much faster.

(suite…)

[:fr]La parole est aux speakers : Mickaël Andrieu [:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Concevoir des applications PHP résilientes en 2019

Vous souhaitez créer une architecture en micro services, ou une API REST et un joli front en React parce que c'est à la mode. Mais que se passe-t-il quand l'un de vos micro services tombe, ou si un de vos appels à votre API met un peu trop de temps à répondre ?

En gros, comment gérez-vous vous la résilience de vos applications ?

En vingt minutes, je vous montrerai comment faire : notamment à l'aide d'une librairie PHP que j'ai créée et qui est intégrée dans le projet Open Source PrestaShop.

Vous comprendrez comment fonctionne un "Circuit Breaker", comment le configurer et comment le tester.

A la fin de cette session, vous aurez les clés pour ne plus craindre les problèmes de réseau. Et vous aurez acquis un nouveau réflexe: penser au pire, pour garantir le minimum vital à vos utilisateurs.

Katherine Johnson
24/10/2019
12:10-12:30

Entre résilience et surarchitecture, as-tu quelques pistes pour trouver un équilibre qui semble juste ?

On peut mettre en place la résilience à différents niveaux, que ce soit au sein du logiciel que l’on développe ou imaginer prendre en compte les risques au niveau de l’infrastructure. La bonne nouvelle pour le développeur/se, c’est que si les design patterns liés comme le Circuit Breaker sont difficiles à concevoir, leur utilisation est simple ! Mon unique conseil, c’est de commencer : une fois le réflexe pris chaque équipe saura évaluer le degré de criticité à appliquer sur une situation donnée et un bon architecte saura décider s’il faut régler ce problème au niveau du logiciel, de l’infrastructure, voire les deux ! À ce propos, ne ratez pas la conférence de Pascal Martin !

(suite…)

[:fr]La parole est aux speakers : Sylvain Combraque[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Gérez le Traefik de vos services

Depuis quelques années nous ne développons plus des grosses applications monolithiques mais nous préférons les découper en plusieurs services afin de pouvoir déployer chaque service indépendamment les uns des autres et possiblement ne pas casser le coeur de l’application.

Nous voulons aussi déployer de nouveaux services et aussi rajouter des instances de services déjà déployés afin d'accroître la tenue de charge du serveur contenant notre application et cela à chaud, sans redémarrage du reverse-proxy. De plus nous aimerions avoir possiblement plusieurs applications totalement différentes, par exemple un serveur Teamspeak, un site web avec une API en PHP, un front en ReactJS, un petit serveur web en Go, et une instance d'un serveur web Tomcat.

Enfin nous voulons pouvoir déployer l'application très rapidement. Nous devrions avoir différents systèmes d'exploitation pour gérer tout cela, cependant grâce à Docker, à l'orchestration de Docker Swarm et la gestion des services grâce à Traefik nous allons le faire facilement.

Grace Hopper
25/10/2019
16:25-17:05

Tu vas nous présenter une conférence sur Traefik. Quelle est sa force par rapport à d’autres reverse proxy comme Nginx ou Varnish ?

Nginx et Varnish étaient très bien pour le déploiement d’applications monolithiques. Aujourd’hui c’est différent, on sépare notre application en plusieurs services indépendants ou non et on souhaite les déployer indépendamment les uns des autres, déployer plusieurs instances de ces services et retirer des instances sans avoir à redémarrer le reverse-proxy. Traefik permet de changer la configuration du mapping des services à chaud, ce qui est très pratique.

(suite…)

[:fr]La parole est aux speakers : Valentine Boineau[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Symfony Checker is coming

Avez vous déjà entendu parlé de l'AST ? Peut-être pas... Le CFG et le SSA ? Encore moins ! J'aimerais vous présenter ces résultats d'algorithmes trop cools utilisés dans l'analyse de qualité de code avec lesquels j'ai eu l'occasion de travailler via un projet : le SymfonyChecker.

Grace Hopper
25/10/2019
12:10-12:30

Dans la description de ta conférence, tu mentionnes AST, CFG, SSA : as-tu des références à conseiller pour maîtriser ces concepts ?

C’est via mon tuteur, Titouan Galopin, que j’ai abordé ces différents sujets. J’avoue qu’à part farfouiller sur Internet je n’ai pas de réelles références en tête. Titouan a dû apprendre avec plein d’articles différents, je vais essayer d’en récolter quelques-uns d’ici le Forum PHP 2019 pour pouvoir les indiquer aux gens qui seront intéressés.

(suite…)

[:fr]La parole est aux speakers : Alex Rock[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Neuroatypie et IT : quelques conseils

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
  • Vos questions, remarques et interrogations
Grace Hopper
24/10/2019
16:25-17:05

Tu avais présenté ce talk lors de l’AFUP Day 2019 à Lyon, en format 20 minutes. Tu le présenteras cette fois-ci en format 40 minutes : comment comptes-tu enrichir ce sujet ?

Alors en 20 minutes j’avais tenté d’être le plus concis possible, et ça m’a finalement mené à faire une phase de questions/réponses assez longue… Là, je souhaite enrichir le sujet avec bien plus d’explications sur deux neuro-atypies particulières qui sont au centre de ma conférence. Et, une fois de plus, consacrer du temps à la fin aux questions/réponses.

(suite…)

[:fr]La parole est aux speakers : Julien Pauli[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

What's new with OPCache ?

OPCache, le cache d'OPCodes par défaut de PHP, évolue aussi vite que PHP lui-même. Après quelques rappels sur ce qu'est OPCache, nous passerons en revue ses fonctionnalités actuelles: cache, pré-cache, optimiseur, modèles de mémoire partagée, etc...

Nous verrons les différentes passes d'optimisation qu'OPCache opère sur les scripts, et nous rappelerons les différents paramètres de configuration d'OPCache, et comment les optimiser pour différents projets en production.

Katherine Johnson
24/10/2019
15:15-15:55

Ta présentation portera sur opcache. Quel niveau / prérequis sera nécessaire pour y assister ?

Il faut connaitre PHP, et idéalement savoir comment les langages de haut niveau sont fabriqués.

(suite…)

[:fr]La parole est aux speakers : Cindy Liwenge[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

Accueillir des junior·e·s en reconversion : comment éviter l'échec

Avec la multiplication des formations accélérées, on observe depuis quelques années une augmentation du nombre de développeur·euse·s en reconversion. Ces profils présentent une diversité importante et des compétences professionnelles riches. Toutefois, malgré l'apparente bienveillance de notre milieu, accueillir des junior·e·s en reconversion n'est pas aisé. Les premières expériences de ces développeur·euse·s sont déterminantes et, parfois, découragent certain·e·s, jusqu'à l'abandon. Comment réussir l'intégration des junior·e·s en reconversion ? Comment prendre en compte et valoriser leurs différences ? Et surtout : comment les retenir ?

Lors de ce talk, je partagerai mes expériences et les histoires (vraies) de succès et d'échecs. Grâce à ces REX et en nourrissant mon discours de références, je donnerai des pistes pour permettre aux équipes en place de préparer le terrain et de passer des paroles aux actes.

Grace Hopper
24/10/2019
12:10-12:30

Ta conférence porte sur le sujet du recrutement de profils en reconversion : qu’est-ce qui t’a poussée à soumettre ce sujet ?

Je suis moi-même une développeuse en reconversion. Ma propre expérience m’a inspirée. J’ai eu des wins comme des difficultés lorsque j’ai entamé ma carrière de développeuse. En échangeant avec d’autres personnes en reconversion, je me suis rendue compte que les formations accélérées ont pris notre milieu de vitesse. Je souhaite décomplexer les équipes tech, les encourager à choisir des profils comme le mien et aider les personnes en reconversion à trouver leur place.

(suite…)

[:fr]La parole est aux speakers : Frédéric Bouchery[:]

[:fr]Jusqu’au Forum PHP 2019, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

PHP Pragmatic Development

On ne va pas se mentir, DDD c'est bien, mais pas franchement facile à appréhender quand on débute. Et c'est bien là tout le problème : il n'y aurait que des développeurs seniors et des architectes sur nos projets, tout irait pour le mieux. Quand on parle d'expérience développeur (DX), il est donc nécessaire de prendre en considération ces jeunes inexpérimentés qui peuvent vite se perdre et enrayer notre belle machinerie.

Héritage, traits, injection de dépendances, agrégation, programmation évènementielle, programmation orienté aspect, etc. faisons le point sur les architectures actuelles en PHP et retrouvons un peu de pragmatisme pour le bien de nos projets et de notre santé mentale.

Katherine Johnson
24/10/2019
09:30-10:10

C’est une conférence que tu as déjà donnée à l’AFUP Day 2019 : quels retours as-tu eu de cette première prestation et quelles évolutions as-tu prévues pour le Forum PHP 2019 ?

Je n’ai pas eu l’occasion de beaucoup échanger avec les personnes présentes, car j’étais le dernier à passer et beaucoup sont partis rapidement. Les seuls retours que j’ai pu avoir étaient sur la forme ludique de ma prestation, et quelques adhésions par des personnes déjà convaincues par l’approche réfléchie du développement. Mais rétrospectivement, j’ai décidé de modifier en grande partie le contenu et la forme de cette présentation. J’ai introduit de nouvelles idées et je ne commence plus par la petite scène où j’ai fait croire à l’auditoire que j’ai changé le sujet de ma conférence. De nouvelles idées viennent renforcer sensiblement mon discours, et me semblent plus claires. Bref, c’est une nouvelle conférence.

(suite…)