Catégorie AFUP Day 2019

La parole est aux speakers : Antoine Deprez et Brice Taillardat (AFUP Day 2019 Rennes)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Coder proprement en PHP en 2019

Il s'agit ici de présenter PHP non plus comme un langage de bidouille comme il était possible de faire avant 2004 mais comme une solution pérenne et performante pour nombre de besoins. Les détails abordés portent notamment sur la V7.1 (nullable et void), visibilité des constantes de classes etc... Les exemples porteront notamment sur Facebook avec HipHop, HHVM ou Hack et les framework robustes et leurs intérêts principaux.

Bref, il s'agit ici de démontrer la force du langage et d'en profiter pour troller nos amis javaistes. Le ton est humoristique et permet à tous de se rappeler la puissance mais aussi pourquoi PHP a cette réputation et d'y mettre un terme définitivement.

La Fabrique
17/05/2019
12:00-12:20

Depuis des années maintenant, PHP s’est industrialisé et professionnalisé. Pensez-vous que ces changements ont été suffisamment perçus dans les communautés ne pratiquant pas PHP ?

Les communautés de développeurs et développeuses ne pratiquant pas PHP considèrent toujours ce langage comme un langage « amateur » uniquement destiné à réaliser des sites personnels : PHP est poursuivi par son histoire. Les autres communautés, telles que les javaistes, voient que PHP évolue constamment, mais selon elles il s’agit plus de rattraper le retard sur les autres langages que d’ajouter des fonctionnalités. De plus, encore aujourd’hui, beaucoup de PHP « old school » est écrit et déployé en production. Tous accordent toujours à PHP sa souplesse et sa facilité d’accès, mais ne voient pas les arguments pour l’adopter.
Lire la suite

La parole est aux speakers : Stéphane Hulard (AFUP Day 2019 Lyon)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Laravel : the good, the bad and the ugly...

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 !

SupInfo
17/05/2019
10:05-10:45

La communauté Laravel, pourtant très active à l’étranger, est peu présente en France. À ton avis, pourquoi est-ce le cas ?

Effectivement, la communauté grandit de manière incroyable à l’étranger et les conférences sont de plus en plus nombreuses aussi à l’international : Inde, Pakistan, USA, Japon, Royaume Uni, … De mon côté ça fait maintenant quelques années que je connais ce framework et son image en France s’améliore peu à peu, même si on vient de loin ! Je pense que nous avons, parmi nos compatriotes développeurs, des personnes très compétentes et attachées aux pratiques de développement ainsi qu’à leur respect. Je ne dis pas que Laravel ne les respecte pas mais il y a, dans son fonctionnement interne, beaucoup de choses très différentes de ce à quoi nous sommes habitués par ailleurs.
Aussi, j’imagine que les français sont un peu chauvins et préfèrent utiliser Symfony qui a ses racines dans notre beau pays.

Plus sérieusement, je pense que c’est une question d’implantation. Les développeurs, quand ils sont habitués à un outil, ne vont pas se jeter sur le premier venu pour en changer, en tout cas pas en PHP. Symfony a une bonne notoriété, est utilisé sur des projets très variés et la communauté française est très dynamique. Ce n’était pas forcément le cas dans d’autres endroits du monde, les outils utilisés étaient plus vieillissants, plus variés. Je pense que Laravel a trouvé écho dans plusieurs communauté aussi bien dans sa simplicité que sa philosophie.

Je vois quand même de plus en plus de développeurs qui connaissent Laravel (même si parfois ils ne le disent pas très fort 😉).
Lire la suite

La parole est aux speakers : Kévin Verschaeve (AFUP Day 2019 Lille)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Retour d'expérience : La migration d'un Zend Framework 1.12 vers Symfony

MorningCroissant.fr est un site de location de logement longue durée. La première version du site, faite en ZF 1.12 commençait à être de moins en moins maintenable : non testée, code non optimisé, bugs... La refonte devient nécessaire, et le choix s'est dirigé vers Symfony 3 (dernière version majeure au moment du démarrage de la refonte). Nous verrons ensemble quelles sont les étapes qui ont fait de cette migration un succès, presque sans douleur.

Auberge Stéphane Hessel
17/05/2019
10:50-11:10

C’est ta première conférence à l’AFUP. Qu’est-ce qui t’a poussé à proposer un sujet ?

J’ai fait un ligthning talk au SymfonyLive Paris en 2018 où j’avais eu pas mal de retours positifs, et j’y ai passé un bon moment. Il ne me manquait plus qu’à passer sur une conférence un peu plus longue. Ça faisait un moment que je voulais donner une conférence, sans jamais avoir de sujet que je trouvais intéressant ou que je maîtrisais suffisamment (selon moi en tout cas). Puis j’ai travaillé sur un projet, plusieurs personnes m’ont dit que parler de cette migration Zend vers Symfony, sous forme de retour d’expérience, pourrait être intéressante. Alors, quand un membre de l’organisation de l’AFUP Day m’a demandé si je voulais parler à l’AFUP Day de Lille, je me suis lancé.

Lire la suite

La parole est aux speakers : Gabriel Pillet (AFUP Day 2019 Lyon)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Alice et Bob sont sur un bateau

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.

SupInfo
17/05/2019
16:50-17:30

Un jeu d’essai correspond à des données métiers. Souvent, on constate que les clients ont du mal à tester une application avec des données fictives. Arrives-tu à faire en sorte que tes clients prennent le temps de produire un jeu d’essai qui veut dire quelque chose pour eux avec lequel ils pourront tester leur appli ?

Le problème principal, qui est le sujet de fond de cette conférence, c’est qu’aucun des acteurs du projet ne prend généralement le temps de se poser sur la question du jeu d’essai. Si c’est le développeur qui fournit le jeu d’essai à la va-vite, il y a de grandes chances pour le client ne s’y retrouve pas (M. Foobar, c’est qui ?!), si au contraire c’est le client qui fournit les données (un extrait anonymisé de la base de production par exemple), c’est le développeur qui va avoir du mal à faire le tri, extraire la logique, trouver un sens à ces dizaines de milliers de lignes réparties dans une centaine de tables obscures qu’on lui demande d’assimiler.

La solution est pourtant « simple », c’est un travail d’équipe qui doit réunir tous les acteurs du projet et qui doit prendre un temps non négligeable sur la réalisation du projet, surtout au début du projet.
Lire la suite

La parole est aux speakers : Grégoire Hébert (AFUP Day 2019 Lille)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Ensemble vers une IA NEAT plus ultra

Vous entendez parler d'IA depuis quelques temps, mais ça reste obscur pour vous. Comment ça marche, que se cache-t-il derrière ce mot ? Si lire des livres blancs ou des papiers de doctorants, ce n'est pas votre truc, que la doc de tensorflow n'est qu'un gros amas de mots, et si vous avez vu des présentations peu claires utilisant le même vocabulaire sans vraiment vous donner une idée de comment fonctionne et implémenter une IA chez vous ... Cette présentation est faite pour vous. À son issue, vous serez capable de jouer avec une IA, simple, mais qui vous servira de porte d'entrée dans ce beau monde qu'est le machine-learning.

Auberge Stéphane Hessel
17/05/2019
12:25-13:05

Ta conférence à l’AFUP Day portera sur le machine learning : qu’est-ce qui t’a donné envie de découvrir cette technologie ?

Il y a quelques années maintenant, j’avais des collègues dont le bureau était orné d’un petit aquarium et de son poisson rouge. Je voulais la même chose, mais sans l’encombrement ni l’inconvénient d’en prendre soin dans la mesure où je ne pouvais pas être systématiquement présent pour le nourrir ou le nettoyer. J’ai tout de suite eu l’idée d’un espèce de tamagotchi, mais je ne voulais ni avoir à m’en occuper, ni que ce soit juste une animation. Ça a été mon premier pas pour apprendre. En fait je crois que c’est plus vieux que ça même. je me rappelle avoir été scotché dans le jeu Arma II de l’adaptabilité de l’IA : pour l’époque c’était top !
Lire la suite

La parole est aux speakers : Vincent Lainé (AFUP Day 2019 Rennes)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Préparer son application php pour l’exécution dans un environnement contenerisé

À travers cette session je vous propose de venir réfléchir aux challenges qui découlent de l'utilisation d'une solution de conteneurs. Nous aborderons quelques unes des questions principales ainsi que leur(s) solution(s) au travers d'exemples utilisant Kubernetes.

La Fabrique
17/05/2019
15:10-15:50

Toi qui as une forte expérience .NET, trouves-tu les applications PHP plus ou moins simples à conteneuriser ? Quelles sont les principales différences ?

Les challenges de la conteneurisation sont majoritairement les mêmes quel que soit le langage car ils sont principalement liés à l’environnement dans lequel l’application s’exécute plutôt qu’au code de l’app. C’est d’autant plus vrai si on parle d’un nouveau projet qui démarre avec docker comme cible !

En fonction des frameworks et des librairies disponibles, ces challenges peuvent être plus ou moins faciles à relever mais PHP et .NET sont tous deux bien équipés pour cela grâce à leur communauté.

La principale différence que j’ai pu voir entre une app .NET Core et PHP qui s’exécute dans un conteneur est lorsque que l’application est un serveur http (API REST par exemple). PHP est intimement lié à un serveur externe (apache ou nginx) alors que .NET Core embarque son propre serveur http (basé sur libuv) ce qui évite la configuration et le maintien d’un composant supplémentaire.
Lire la suite

La parole est aux speakers : Freek Van Der Herten (AFUP Day 2019 Lille)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Supercharging queues in Laravel with Horizon

Out of the box Laravel comes with decent support for queues. Laravel Horizon takes this one step further. Horizon is two things: a server side part that adds intelligence to your queues (think autobalancing), and a client side part to see the content of the queues.

In this short, practical talk we'll install Horizon into a Laravel app and play around with it.

Auberge Stéphane Hessel
17/05/2019
14:45-15:25

Your company, Spatie, has published more than two hundred open source repositories. How did you maintain these many packages ?

Luckily most of the packages are currently quite stable. I think that there aren’t that many big bugs in there. We also try to limit the scope of each package. Mostly we only take on PRs that add functionality that we need ourselves. Every week I take some time to run through all new issues and PRs that have come in. Most of them can be resolved in that time. I’m also not the only one that does this work, my whole team helps out with the maintenance. Because some of the package have become quite popular we get a lot of help from the community as well. We a bug is reported it’s not uncommon that we quickly get a good PR that solves it. For some of the packages contributors stepped up to became the primary maintainer.
Lire la suite

La parole est aux speakers : Julien Deniau (AFUP Day 2019 Lyon)

Jusqu’à l’AFUP Day 2019 Lyon, 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

Explorez votre code avec de l'analyse statique

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.

SupInfo
17/05/2019
15:15-15:35

Ta conférence porte sur l’analyse statique, comment en es-tu venu à ce sujet et pour couvrir quel cas ?

PHP 7 a amené de grosses amélioration sur le typage de données.

Je trouvais vraiment dommage de ne pas profiter de ce typage pour détecter des erreurs potentielles avant la mise en production, comme le ferait un compilateur.

Qui plus est, sur une base de code existant, c’est finalement assez dur de migrer sur le typage (retour de fonction ou paramètres), sans risquer de tout casser, même avec un code bien testé.

Grâce à l’analyse statique, je peux maintenant convertir mes classes une par une sans crainte, sans parler du fait que j’ai pu détecter un grand nombre de bugs !
Lire la suite

La parole est aux speakers : Frédéric Bouchery (AFUP Day 2019 Rennes)

Jusqu’à l’AFUP Day 2019 Lyon, 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.

La Fabrique
17/05/2019
17:05-17:45

De nos jours des architectures comme DDD, CQRS et l’event sourcing sont à la mode. Pour toi, ces patterns de développements permettent-ils réellement d’avoir un gain sur les applicatifs développés ?

CQRS est un pattern d’architecture qui mérite en effet que l’on s’y attarde, car il permet vraiment de découpler des éléments qui sont bien trop souvent mélangés. Il force les développeurs et développeuses à penser différemment et à rendre son application beaucoup plus scalable. Couplé à l’event sourcing, cela permet, entre autres, d’offrir une bonne capacité d’évolution, en permettant plus facilement la reprise de données, qui est toujours une galère quand on veut faire évoluer son modèle. DDD, qui n’est pas une architecture, mais une méthode de conception, vient normalement faciliter le travail dans une architecture CQRS. Le problème dans cette architecture, c’est qu’elle est difficilement mélangeable avec des architectures plus classiques. De plus, si un développeur ou développeuse maîtrise mal certains concepts, il risque facilement de gripper la machine et au final d’en faire une application beaucoup plus difficile à faire évoluer que ce que promettait l’approche initiale. CQRS, c’est génial, ça permet d’avoir des applications plus évolutives et performantes, mais elle peut introduire de la complexité qui nécessite une plus grande expérience si on ne veut pas que le château s’écroule.

Lire la suite

La parole est aux speakers : Julien Pauli (AFUP Day 2019 Lille)

Jusqu’à l’AFUP Day 2019 Lille, 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

Fonctionnement de l'executeur dans la machine virtuelle PHP

Nous allons voir comment PHP fait pour exécuter notre code, en interne. Ce n'est pas magique, le code de PHP est exécuté dans une machine virtuelle logicielle, codée en utilisant le langage C. C'est globalement la même chose concernant tous les langages interprétés (comme Python, Java, Ruby ou Go).

Comment sont gérées les variables ? Les appels de fonctions ? Les boucles ?

Nous parlerons des différents exécuteurs, et de la manière dont l'extension OPCache vient optimiser le code avant de le passer à l'exécuteur. Nous donnerons des recommandations et désamorcerons certaines idées reçues.

Pour suivre ce sujet, il suffit de connaître le langage PHP et d'avoir des notions globales en programmation. Le but étant de vulgariser pour qu'à la fin on puisse avoir une bonne idée générale sur le fonctionnement interne de la partie la plus complexe et la plus critique du coeur de PHP.

Auberge Stéphane Hessel
17/05/2019
09:20-10:00

Quels conseils donnerais-tu aux personnes souhaitant s’informer sur les nouveautés de PHP / son fonctionnement interne ?

De lire les mailing-lists internes , de lire le wiki des RFC, qui est d’ailleurs analysé et présenté de manière « cool » aux utilisateurs sur https://externals.io/
De venir se connecter sur #php.pecl sur Eris FreeNet aussi , c’est ici que les développeurs internes de PHP discutent « en live » de leur PR, de leur RFC, etc…

Lire la suite