Aller au contenu
AFUP AFUP Day 2025 Baromètre Planète PHP PUFA
 

Lightning-talks

Description

Vous connaissez le principe ! 5 minutes, une présentation par un de nos visiteurs, un speaker invité, un membre de l'équipe...
Appel à sujets à venir dans les prochains jours ! 

Conférence donnée lors du PHP Tour Montpellier 2018, ayant eu lieu les 17 et 18 mai 2018.

Informations complémentaires

Vidéo

Le speaker

BUREAU AFUP

Transcript

Pour ceux qui ne connaissent pas le principe : c'est cinq minutes par orateur et on enchaîne six talks à la suite.

Juste après on vous libérera et vous pourrez aller à l'apéro, en centre-ville, au Circus, je re-précise pour ceux qui auraient pas potassé, parce que je sais qu'en général la bière ça attire du monde ! Pour cette session de lightning-talks ce soir, on a Benoît Jacquemont, Thomas Dutrion, Charles-Edouard Coste, Richard Hanna, Aurélien David et pour finir Pascal Martin et Cédric Mourizard.

Je n'ai pas présenté leurs sujets, ils le feront très bien tout seuls.

Tout de suite, je laisse la place à Benoît Jacquemont.

Bonsoir à tous ! Un talk très rapide sur un moteur PHP que vous connaissiez peut-être : PH7.

C'est le moteur PHP sur lequel vous tombez par hasard lorsque vous trompez dans Google en tapant "PHP 7".

Des moteurs PHP, vous en connaissez certainement : il y a le Zend Engine, HHVM (j'en connais une petite dizaine), et celui-là est intéressant parce qu'il est orienté embarqué.

C'est une start-up tunisienne qui a été contactée en 2011 par un conglomérat français, pour implémenter PHP au sein des routeurs, qui ont des ressources assez limitées en termes de CPU et de mémoire.

Donc ils ont ré-implémenté un moteur PHP dédié à l'embarqué, et on va voir que l'embarqué a deux sens dans ce cadre-là.

Déjà c'est une bibliothèque C, c'est-à-dire que si vous voulez faire du PHP avec ce moteur là, il va falloir...

Alors là on voit pas forcément super bien mais tout en haut, en vert, vous avez un bout de code PHP, intégré dans une constante en C, interprété par le pré-processeur.

Puis vous avez l'initialisation du moteur, la compilation du contenu du programme PHP et l'exécution.

Alors comment on s'en sert ? On va compiler le code qu'on vient de voir, et ça va faire un binaire, qui va intégrer le code PHP.

Donc on a embarqué le code PHP à l'intérieur d'un binaire. C'est cool ! Voilà le résultat est là, quand on lance le binaire qui contient le code PHP, on a le code PHP qui s'exécute.

Alors ce qui est assez cool c'est qu'on peut embarquer PHP dans n'importe quel programme.

Le problème, c'est que certains l'ont fait.

Et je vous présente de quoi faire du PHP dans NodeJS.

Donc PH 7 permet d'avoir un module installé via NPM et qui permet d'exécuter du PHP, côté back en Node JS.

Si un jour votre employeur vous force à être full stack, y'a toujours moyen de coller un peu de PHP dans le truc.

Alors ça va un peu plus loin, parce que le moteur en question est compliant ANSI C, c'est-à-dire qu'il est très standard et qu'on peut le compiler avec à peu près n'importe quoi, et certains l'ont intégré avec libOGC (est-ce que ça parle à quelqu'un ?).

LibOGC c'est Open GameCube, donc un petit malin s'amusait à faire un serveur web, qui intègre PHP tout en faisant tourner ça dans l'OS de la GameCube et de la Wii, qui sont des OS qui ne sont pas du tout ouverts mais avec lesquels on peut maintenant compiler des outils.

Un dernier point : c'est de l'embarqué au sens qu'il est vraiment fait pour être efficace en termes de ressources, puisque pour faire tourner PH7 vous avez besoin de 2 mégas de rame.

Donc certains sont allés plus loin et ont fait ce qu'on appelle des firmware-based, c'est-à-dire qu'au lieu d'avoir un système avec un OS intégré, vous compilez un programme, et c'est votre programme qui s'exécute au démarrage du matériel.

Donc il y a un projet en cours qui s'appelle PHP4MCU qui a pour but de faire tourner PHP sur un ESP-8266.

Est-ce que parmi vous y en a qui connaissent l'ESP-8266 ? C'est un microcontrôleur qui coûte 1 ou 2 $, et qui intègre du Wifi.

Donc dans le microcontrôleur, vous avez tous : la partie CPU, la mémoire, etc.

Vous avez juste à mettre une pile et vous avez PHP qui peut tourner sur du MCU.

Par contre, ne pensez pas que vous allez pouvoir faire tourner vos programmes, vous n'allez pas prendre un Drupal ou un eZ Publish et le poser dessus ça et espérer que ça marche.

C'est du PHP mais il y a des petites différences.

Déjà c'est du PHP 5.3 malgré son nom, il n'y a pas de namespace (ils ont une PR pour le faire mais n'en ont pas vu l'intérêt), par contre, on peut faire du static type hinting avec ce système, et pour l'embarqué c'est sympa de savoir exactement ce qu'on va avoir comme comme type.

Les tableaux sont passés par référence (ce serait cool que ce soit le cas en PHP, ça ressemblerait aux objets).

Et je terminerai par le comble du troll : ça tourne à moins de 2 mégas mais ils ont support natif de UTF-8.

Voilà, merci.

Bonsoir. Je vais vous parler d'enseigner PHP simplement.

Je suis développeur web, principalement, mais je suis aussi enseignant intervenant dans des écoles, et j'ai eu la chance aussi d'enseigner à l'université en Ecosse donc c'était assez sympa.

L'autre part de mon boulot c'est d'être futur associé dans une ESN, et donc de recruter des profils.

Et je trouve que les profils sont vraiment pas qualifiés et que mes étudiants sont vraiment pas bons.

Ce que je vais dire peut paraître méchant et critique mais ce ne sont que des opinions personnelles.

L'idée c'est d'essayer d'aller plus loin, de voir avec vous comment on peut s'améliorer.

J'ai fait un DUT informatique, je n'ai pas aimé, je suis allé à la fac en Ecosse, j'ai adoré. Pourquoi ? Simplement parce que à l'IUT j'avais beaucoup d'heures hyper théoriques et je déteste les maths ; arrivé en Ecosse j'avais très peu d'heures mais beaucoup de projets et j'ai beaucoup appris.

En gros : apprendre sans des profs, c'est mieux ! Du coup, quand d'anciens profs m'ont proposé d'enseigner en Ecosse, j'ai dit oui.

Vu que j'avais détesté l'enseignement traditionnel, je me suis dit "c'est le moment, essaie de faire ce que tu peux".

J'ai pu enseigner le développement web à Napier, en Ecosse, sauf que je ne parlais pas anglais, c'était galère ! J'ai pu enseigner en France du Zend Framework, c'est un framework très compliqué à expliquer aux étudiants.

Maintenant j'essaie d'enseigner des trucs plus simples : j'enseigne l'orienté objet plutôt que des frameworks, et j'essaie d'enseigner les serveurs web.

Globalement, les contraintes que j'ai c'est qu'à l'université, j'enseignais avec une autre personne, et c'était extrêmement compliqué parce qu'on n'avait pas les mêmes méthodologies.

Lui expliquait vraiment la syntaxe là où j'essaie d'expliquer les concepts et on a perdu les élèves.

En école c'est un peu mieux parce que je suis tranquille dans mon cours je peux faire ce dont j'ai envie, l'inconvénient c'est qu'ils ont chacun leur machine, donc j'ai énormément de Windows et on galère.

Donc la question que je vous pose ce soir c'est : qu'est-ce qu'on devrait enseigner ? Partout où je suis prestataire, où j'essaie de recruter, je n'arrive pas à trouver les ressources qu'il me faut, parce que les étudiants sont mal formés.

Voilà les sujets que j'ai isolés, qui me paraissent importants, globalement on les retrouve un peu partout.

Notamment, les gens m'ont dit qu'on devrait éventuellement étudier les projets legacy, parce qu'on en a énormément dans le monde du travail.

Je me suis dit qu'une autre source serait de regarder ce qu'on fait dans les certifications : logiquement elles sont là pour quelque chose donc leurs thèmes sont potentiellement des sujets d'intérêt.

Alors j'ai regardé les certifications, j'ai pas mis celle de Laravel, mais dans l'idée y'en a une.

J'ai regardé les certifications qui existent, plus ou moins intéressantes.

On retrouve ces thèmes là dans Symfony, alors bon c'est des thèmes assez génériques, notamment les forms, la sécurité, tout un tas de choses. On a les mêmes thèmes avec Zend Framework.

Si je reviens un petit peu en arrière, c'est encore une fois à peu près les mêmes sujets.

Donc peut-être que si on retrouve tous ces sujets là partout, c'est qu'ils ont un intérêt.

En conférence, en user groups, on retrouve encore les mêmes sujets, donc est-ce qu'on devrait enseigner ça ou pas ? La question c'est : est-ce qu'on leur enseigne la théorie, puis on les guide vers ce dont on discute ici, ou est-ce qu'on leur enseigne les bonnes pratiques quitte à les perdre parce qu'ils n'auront pas les bases théoriques ? C'est un peu l'impasse dans laquelle je suis en ce moment, donc si vous avez des réponses, venez me voir ce soir à l'apéro, comme ça je pourrais enseigner mieux.

Déjà merci au staff, c'est pas tous les jours qu'on peut faire une présentation au Multiplex devant autant de monde ! Je vous parler un peu de MVC dans Symfony 3.4.

Alors je sais que Symfony 4 est sorti mais moi j'aime bien les LTS donc on va rester là-dessus.

Ce qui me gêne un peu c'est que quand on dit qu'on fait du Symfony on dit que c'est une structure MVC, mais on voit rarement la partie vraiment Vue.

Pour la présentation, je m'appelle Charles-Edouard Coste (tout ça on s'en fout un petit peu).

En général je mets les présentations en Creative Commons donc vous pouvez les repomper.

Là c'est un petit peu moche on a dû faire un export en PDF, mais pour 5 minutes j'allais pas m'embêter.

Donc ça c'est un contrôleur tiré de la doc de Symfony en ligne, vous pouvez y aller.

Un truc tout bête : on a fait une action et on retourne un objet response : HTTP foundation response.

Il y a la variante avec le Helper render qui fait à peu près la même chose, c'est juste que là on lui donne l'adresse d'un fichier twig à compiler et dans lequel injecter les variables.

Le problème c'est que si on essaie de faire de la négociation de contenu : j'ai un contrôleur je retourne un résultat mais dans un cas je veux renvoyer une page HTML, mais dans un autre cas je veux faire un JSON.

Généralement on se retrouve avec ce code là et si le client accepte du text/html, on va retourner la page HTML.

Sinon, s'ils acceptent du application/json, on va lui retourner un JSON.

Ceux qui ont connu eZ Publish et les e-components : il y avait ce qu'on appelle le MVC tools.

Donc ça, c'est tout le workflow et, évidemment, sur la doc de Symfony, vous avez à peu près la même chose, mais là, ce qui m'intéresse c'est que vous avez les classes qui sont passées d'étape en étape, et il y a une petite distinction qu'on ne voit pas dans Symfony, c'est qu'on a un eZ MVC result.

On a : request, result et response, deux choses importantes.

Mais dans Symfony, généralement on ne travaille qu'avec un response, donc on oublie que le contrôleur est censé de retourner un résultat.

Réponse versus résultat : par exemple, si je fais "combien font 1 + 2" le résultat c'est 3, c'est pas une page HTML.

Par contre, après, je vais mettre ce résultat dans une page HTML ou dans un json Dans Symfony, on a des événements (si vous faites du Symfony, vous connaissez) : donc on a l'événement Kernel.view qui est déclenché quand le contrôleur retourne un objet qui n'est pas une réponse.

Si vous vous amusez à faire un contrôleur qui retourne un tableau ou un string, vous allez avoir une erreur normalement parce que c'est pas le bon type, mais avant ça vous aurez un événement qui va être déclenché c'est le Kernel.view.

Et si vous faites un event listener pour ce type d'événement, vous pouvez récupérer le résultat, via la méthode getControllerResult() et à ce moment-là vous pouvez manipuler les résultats.

Ici, je vérifie de la même manière si mon client accepte du HTML ou du json, et en fonction, je choisis.

L'avantage c'est que si j'ai 15 contrôleurs et 30 actions par contrôleur (c'est pas notre pratique), je n'ai pas besoin de re-coder ça X fois.Je l'ai dans une classe, et comme j'ai dit tout à l'heure, Symfony 3.4, donc normalement vous n'avez même pas besoin de déclarer vos event listeners comme services, normalement avec le 3.4, c'est détecté comme étant une implémentation de l'interface event subscriber interface, c'est chargé comme service, c'est taggé comme il faut et c'est déclenché si vous faites un retour dans l'action.

Donc, vous vous retrouvez avec un contrôleur beaucoup plus light et tout le monde est content ! Merci à tous.

Bonsoir. Vous êtes en forme ? J'ai rien entendu, vous êtes en forme ? Bon j'ai quarante minutes, je vais vous parler de l'optimisation de ressources dans un environnement sous contrainte grâce à l'implémentation d'un algorithme de recherche heuristique.

Non, j'ai cinq minutes ? Ah mince... Quatre ? Euh... exponentielle ? Mince, y'a un problème d'encodage...

Bon ben, je vais vous parler de quelques perles de dev, que j'ai collectées ces derniers mois...

C'était pas fait exprès du tout ! C'est une présentation entièrement (ou en partie d'ailleurs) en Comic sans MS et pas de gifs animés Je suis Richard Hanna, développeur chez Elao... en fait il y a un problème d'encodage...

(comique de répétition).

Alors sur un projet legacy je suis tombé sur une méthode getRecaptulatif() (c'est vrai que c'est pas facile à prononcer "récapitulatif").

Voilà ça m'a hanté pendant des nuits ! Donc franglais + typo = emoji caca.

Alors ça c'est pas mal : sur un projet commercial, le directeur commercial s'appelait Alphonse (le nom a été changé pour les besoins du programme) et mon collègue a fait une PR avec ça : isAlphonse() et ça a été retoqué en code review, heureusement. La fonction était isSalesManager() Un collègue de Clermont-Ferrand, qui n'est pas là, Pierre, si tu nous regardes, qui me dit à propos d'un bug : "c'est quelque chose de rare mais qui arrive assez souvent" Moi qui dis à mon collègue sysadmin (ou devops) : "nous allons mettre le site en production mercredi", et lui me répond "les mises en production le vendredi, c'est beurk" ! Je lui ai dit "mercredi"...

Un SMS échangé avec un collègue qui me dit : "c'est fromage scratch", en fait c'était le correcteur orthographique.

Un autre échange, un collègue me dit "Pour le resto , Nico est dispo mardi mais pas mercredi, Seb mercredi mais pas jeudi" Et moi, avec mes blagues pourries, je lui dis "ça devient compliqué, tu veux pas faire une classe métier dédiée, car ça fait beaucoup de if dans ton controller".

Bon ça fait rire personne ? ça fait rire que moi en fait ! Alors ce cas va être compliqué à expliquer, normalement les blagues compliquées à expliquer sont pas bonnes, mais je vais essayer.

Un client me dit qu'il peut pas filtrer les inscrits par langue sur la plateforme.

Et moi je me dis : "Mais il n'y a pas cette fonctionnalité, comment il y arrive ?" Je vais sur l'interface et là je vois des commerciaux clients "Yohann EN" et "Yohann FR", qui sont assignées aux inscrits et du coup il peut filtrer grâce à ça.

Il a détourné la fonctionnalité pour ça.

Alors ça c'était pas mal, c'était il y a quelques semaines, je ne vais pas citer le nom de ce tiers qui me dit : "L'API en préprod n'est disponible que de 10h00 à 19h00" Donc l'API, elle prend le train le matin, elle va au boulot et elle entre chez elle le soir, non ? Ça c'est pas mal, c'est un test unitaire où on appelle un ImportHandler() qui devrait déclencher une exception de type FileNotFoundException.

Donc le test passait mais en fait c'était pas bon parce que le ImportHandler() n'était pas use dans mon test.

Un collègue qui me dit le matin : "Je veux une barre serialisée" au lieu de barres de céréales.

Enfin, est-ce que vous connaissez la fréquence de backup de votre base de données de prod ? Non ? Moi je sais, parce que j'ai supprimé la base de données de mon client.

C'était heureusement une heure ! Merci à tous.

Bonjour à tous. Je m'appelle Aurélien David, je travaille à Cap Collectif, et aujourd'hui je vais vous parler d'un sujet qui me tient un peu à cœur : Prettier.

Un truc qui me préoccupe dans la vie, c'est d'éviter de perdre du temps. Je sais pas si c'est pareil pour vous.

Du coup quand je code je me demande souvent comment je pourrais gagner du temps.

Et quelque chose qui me prenait beaucoup de temps c'était de réfléchir à la syntaxe.

Parfois on fait une fonction, elle est super longue, on se dit : "Je vais sauter quelques lignes pour aérer un peu".

Parfois, on ajoute un 4ème ou un 5ème paramètre de fonction et on les aligne à la ligne pour plus de lisibilité.

Parfois, on corrige des problèmes d'indentation.

Et parfois, dans les codes review on dit : "j'aime pas trop ton indentation".

Et je me suis rendu compte que ce genre de choses nous faisait perdre énormément de temps.

Si ça nous prenait que cinq minutes par jour, au final dans une année ça nous prend plusieurs jours.

Et du coup, je propose que nous tous dans cette salle, on décide d'arrêter de perdre du temps sur la syntaxe, et qu'on va utiliser un outil fait pour choisir la syntaxe à notre place, et qu'on se concentre en fait sur les vrais problèmes de l'humanité.

Alors j'imagine que vous connaissez tous où que vous utilisez sans doute PHP CS Fixer : c'est un super outil de l'écosystème PHP, qui se base sur notre code, le lit et détecte les erreurs.

La plupart du temps en plus il arrive même à les corriger, donc ça c'est top.

Si vous si vous utilisez un peu du JavaScript, ESLint est un outil qui ressemble beaucoup à ça.

Et je vais vous présenter aujourd'hui un autre outil, une approche différente, et vous me direz si vous la préférez.

Cet outil c'est Prettier. Il a une approche intéressante puisqu'il ignore totalement votre code d'origine et se base simplement sur un AST. Pour ceux qui ont vu la conférence de Nico ce matin, l'AST c'est ce qui permettait à PHP 7 de faire toute la phase de compilation ensuite.

Il faut imaginer Prettier comme une fonction : ça prend un AST en entrée et ça sort une chaîne de caractères.

Et cette chaîne de caractères ça va être votre fichier PHP.

Le but c'est donc qu'on lui envoie notre code PHP moche et il nous ressort un code PHP tout propre.

En gros ça donne ça : en entrée j'ai mon code PHP qui prend tellement de place qu'il dépasse du slide, et en sortie, c'est magique, il a réussi à me formater un code super propre, très bien indenté, les espaces sont respectés : il est vraiment fait pour une lisibilité optimale.

Et il prend en compte la taille maximale des lignes.

Il me semble qu'en PHP ou JavaScript, avant Prettier, on avait aucun outil qui prenait en compte ce critère.

Prettier a déjà avalé une grosse partie de l'écosystème JavaScript.

Facebook par exemple l'utilise sur sa base de code en entier, pas toute la partie JS et il supporte vraiment pas mal de choses : tout ce qui est fow tout ce qui est TypeScript ils n'ont même étendu au CSS et au CSS-in-JS.

Ça supporte aussi GraphQL, si comme moi vous êtes fan est également le markdown.

Il a une autre approche intéressante : quand il est sorti, il ne permettait même pas d'être configurable, c'est-à-dire que c'était c'était juste une fonction.

Maintenant ils ont ajouté quelques paramètres comme choisir la taille maximale des lignes, mais en soi, vous ne pouvez pas paramétrer grand chose.

Le but étant que tous les projets qui utilisent Prettier aient globalement le même rendu de tous les fichiers.

Et la bonne nouvelle, c'est qu'il y a un plugin pour PHP : une première version Alpha est sortie, c'est pas encore le top du top mais ça marche.

Elle se base sur PSR-1 PSR-2 et PSR-12 et, c'est "presque" certain que ça ne va pas casser votre code...

si jamais ça le casse j'ai mis un presque vous pourrez pas m'engueuler ! Testez-le et vous verrez que le rendu est déjà vraiment pas mal.

Enfin pour l'intégrer à votre projet, c'est un outil JS, donc ça s'installe avec yarn, ensuite vous l'exécutez en lançant prettier --parser php --write et puis la liste de tous vos fichiers PHP.

Mon conseil, pour le tester et dans votre workflow quotidien c'est de l'intégrer au sein d'un pré-commit, dès que vous modifiez un fichier PHP, vous exécutez Prettier dessus et vous faites un git add.

Je vous conseille de l'essayer je vous remercie de m'avoir écouté.

Bonsoir à tous. J'ai rencontré Cédric il y a 10-11 ans maintenant pour la première conférence de notre vie tous les deux, première conférence PHP, c'était à l'AFUP à Lyon.

Il n'y avait pas encore d'antenne (enfin si il y avait celle-là) mais pas celle qu'on connaît, quand on voulait organiser des événements c'était des tweets qui partaient, les gens qui suivaient sur Twitter, on était 7 à se retrouver dans un bar à boire une bière.

Les couleurs sont géniales ! sur Web Archive ça existe encore ! Donc on s'inscrivait là-dessus mais c'était pas très formalisé, et quand on a voulu commencer à organiser des vraies conférences, des PHP Tour par exemple, il nous fallait une structure, de l'organisation, et on a donc commencé à créer la première antenne AFUP.

Qu'est-ce qu'une antenne ? Qu'est-ce qu'on fait avec Benoît, Florian et Pascal pour animer cette antenne ? Déjà c'est organiser des événements. Les premiers types d'événements, c'est les apéro.

Donc ça c'est assez facile, il nous faut une date, un bar, on envoie un mail pour réserver 2-3 tables, un meet up et on a un point de contact où les gens peuvent venir boire un coup ou échanger, discuter PHP ou pas.

L'idée c'est de se retrouver et échanger.

Un autre type d'événement ce sont les conférences : un mois on fait un apéro, un mois on fait une conférence.

Une conférence permet de creuser un petit peu, de retourner à l'école parce qu'on va dans un amphi dans une fac de Lyon.

C'est cool, ça rajeunit un peu.

On a en général deux sujets : un sujet long et un sujet court.

Avec Pascal, j'étais obligé de mettre une image de café, je suis désolé ! Le sujet long fait une quarantaine de minutes en général qui permet à des speakers de venir répéter (dernièrement Cédric venu répéter sa track qu'il a donnée aujourd'hui), le sujet court nous permet de faire intervenir des nouvelles personnes qui veulent se lancer justement pour donner des conférences et ils viennent nous voir pour essayer.

C'est parfait, on a des slots de 10 à 15 minutes, on les accompagne : on se voit avant, on discute et on les aide à préparer les slides, on les fait répéter et ça permet que le moment soit un moment de plaisir, et pas juste un moment de stress, et ça permet de lancer les gens.

Donc ça c'est ce qu'on fait tous les mois à peu près. Et une fois par an, on a le Super Apero : c'est un apéro mais avec une cape comme dirait Amélie parce qu'on a un quiz à la fin où je remercie d'ailleurs Thomas Seifert pour toute l'usinerie derrière, qui permet à toutes les antennes de répondre à des quizz, de se challenger sur des questions sympa.

Et ça fait un autre moment convivial dans l'année où on peut se retrouver pour échanger autour de PHP ou pas, et surtout de se retrouver ensemble à Lyon.

Alors bientôt, parce que l'année ne fait que commencer, la prochaine étape pour les antennes AFUP, ce sont les élections (Adrien en a un peu parlé ce matin, je vais faire vite) : en juin vous pourrez élire dans votre antenne vos représentants, qui animeront votre communauté locale.

Si vous-même souhaitez participer, il vous reste quelques jours pour soumettre une liste.

Si vous êtes un petit peu timide, que vous hésitez pour cette année, allez voir vos représentants, allez voir ceux qui ont une liste, proposez votre aide, et peut-être l'année prochaine vous arriverez sur une liste quand ils voudront passer à autre chose.

On a aussi des organisateurs à l'AFUP (Adrien, Amélie et Morgane) qui nous aident énormément, qui parfois nous mettent des petits coups de fouet : "Vous avez rien organisé depuis depuis un moment !" "Ah si, on a une salle en un speaker on n'a juste pas annoncé l'événement ! C'est pour ça qu'il n'y avait pas d'inscrits ! Merci" Ça nous est arrivé je crois une fois.

pole-antennes@afup.org, pour les listes, si vous avez des questions, plein de gens géniaux vous répondront.

Et puis l'AFUP c'est une association à loi 1901 (fallait que je mette un chat absolument).

Donc on est une association loi 1901 et surtout on a une assurance à l'AFUP, et c'est un immense avantage d'avoir une assurance. Quand on va voir un directeur d'école, on dit : "Nous sommes une association, nous sommes très sérieux, nous faisons des conférences depuis des années, et si jamais il ya un problème on a une assurance".

Et en fait ça a été un argument décisif.

On a aussi du budget qui nous permet de défrayer des speakers qui viennent de loin, c'est plutôt sympa.

Et une dernière chose : à partir de 2019, il n'y aura plus de PHP Tour. Vous êtes au dernier PHP Tour, félicitations ! A la place, on fera des AFUP Day : un événement d'un jour avec une track dans plusieurs villes en parallèle.

En 2019, il y aura entre 2 et 4 villes, dont Lyon normalement.

S'il y a des pôles antennes qui veulent candidater pour organiser des AFUP Day...

On commence à bosser sur l'organisation parce que ça va être ça va être un an de boulot.

Et chacun chacune dans votre ville ou à côté de votre ville vous avez certainement une antenne AFUP : allez-y, allez voir des conf c'est un bon moyen de vous investir dans la communauté, allez prendre des bières ou des Coca dans les apéros et puis encouragez vos représentants d'antenne.

Merci