La parole est aux speakers : Jonathan Van Belle

Jusqu’au Forum PHP 2020, 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

JSON en base de données, manipulons un peu cela

Une base de données relationnelle moderne peut facilement gérer du JSON. Avec quelques connaissances, vous pouvez facilement enrichir le comportement de votre modèle de données avec un soupçon de JSON. Nous verrons donc, comment utiliser certaines fonctionnalités avancées de mysql / mariadb et postgresql afin d'effectuer certaines recherches, créer des index, utiliser des colonnes virtuelles, etc. Au final, nous verrons que dans bien des cas, un peu de JSON résout pas mal de soucis, qu'une table ou plusieurs colonnes en plus, auraient rendu plus compliqué.

Katherine Johnson
23/10/2020
12:10-12:30

Qu’est-ce qui fait de JSON le format le plus adapté pour stocker des données non structurées en base ? Existe-t-il des formats alternatifs ?

JSON est structuré, mais souvent la structure fluctue fortement 🙂 Ce qui est intéressant avec le format JSON, c’est surtout qu’il nous est connu. C’est lisible par un humain, lisible par un ordinateur et dans le monde du web, c’est connu de toutes et tous ou presque. Il est aussi facile à réparer en cas de souci. C’est aussi une structure de donnée indépendante, qui n’est pas soumise à variation en cas de changement des choses, comme peut l’être un serialize (évolution des noms de classe, éventuellement incompatibilité avec des montées de version PHP, etc) et donc lisible par d’autres langages de programmation.

Des alternatives existent et elles vont vraiment varier d’un besoin à l’autre. JSON est requêtable en base de données depuis un certain temps déjà, avec des fonctions propres, là où d’autres formats ne le sont pas. Des alternatives pourraient-être : serialize/ubnserialize, JSONB (JSON sous format binaire), BSON (JSON binaire, mais limité), système de hashing… Il en existe beaucoup en fait, mais moins connus. Certains sont inspirés des nouveaux formats d’envoi par le réseau, d’autres sont d’anciennes pratiques. Et en fonction de votre infrastructure, d’autres possibilités s’ouvrent, mais là on s’écarte de la question je pense.

(suite…)

La parole est aux speakers : Olivier Dolbeau

Jusqu’au Forum PHP 2020, 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

Jane & Webby ou la vie de mes amies

Ca fait quelques temps que je traine avec Jane & Webby (la mascotte d'APIPlatform), deux de mes plus proches copines. Si on s'entends si bien tous les trois, ce n'est pas pour rien, en effet nous sommes tous trois fans de OAS, l'OpenAPI Specification.

Dans l'équipe, chacun sa spécialité ! Webby tente de suivre à la lettre les préceptes de l'OAS pour écrire de beaux documents conformes à la RFC, Jane n'a pas son pareil pour déchiffrer les écrits de l'OAS et en faire de superbes clients et moi... bon moi je ne fais que leur filer un coup de main pour que mes potes s'éclatent et ça me plait !

On a fait les 400 coups ensembles ! J'pourrais vous raconter la fois où on s'est amusé à donner des documentations diférentes à nos connaissances en fonction de nos affinités ! C'était dingue, notre meilleur pote avait accès à tout mais le type bizarre qu'on avait rencontré la veille n'avait presque rien ! 😀 Oh, y'a aussi la fois où, grand seigneurs, on a décidé d'aider nos copains en leur donnant accès à l'historique complet des opérations qu'ils avaient faites sur notre API ! 😀 C'était grandiose !!

On forme une équipe, on est soudés, on a peur de rien et si on fait un peu peur parfois, on ne mords pas, promis ! Allez venez, j'vais vous les présenter et vous comprendrez pourquoi ça se passe si bien entre nous. 🙂

Grace Hopper
23/10/2020
14:30-15:10

Dans ta bio tu te décris comme « feignant », en précisant que c’est une qualité. Pourrais-tu nous dire pourquoi ?

Je suis intimement persuadé que la fainéantise, dans le sens « partisan du moindre effort » est une qualité dans le développement. Par exemple, la fainéantise permet souvent de ne pas tomber dans le piège de l’over-engineering : commençons par faire au plus simple puis itérons plutôt que de « perdre du temps » à réfléchir à tous les cas possibles, actuels et futurs, avant d’écrire la moindre ligne de code.
Bien que je considère la fainéantise comme une qualité, j’avoue qu’il m’arrive parfois d’en abuser : « j’écrirai ce test plus tard », « ce n’est pas urgent, je vais mettre un TODO »… C’est tout de suite beaucoup moins vendeur, mais j’essaye de me soigner. 🙂

(suite…)

La parole est aux speakers : Karim Pinchon

Jusqu’au Forum PHP 2020, 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

Introduction à OpenID Connect

"T'as besoin d'une application pour authentifier tes utilisateurs ? Un serveur OAuth2 c'est ce qu'il te faut !"

C'est faux. Trop souvent le protocole OAuth2 est utilisé à tord pour authentifier des utilisateurs. Ce n'est pas fait pour ça. En revanche, un protocole relativement semblable existe dans ce but : OpenID Connect.

Je vous propose de vous expliquer comment fonctionne le protocole OpenID Connect et en quoi il est différent d'OAuth2, pour ne plus se tromper d'usage.

Katherine Johnson
22/10/2020
12:10-12:30

Tu as l’habitude de donner des cours de niveau Master. À ce niveau-là, comment prépare-t-on ses cours ? Quelles sont les différences avec la préparation d’un conférence ?

En effet, depuis quelques années je dispense un cours sur les Web Services d’une dizaine d’heures en M1. À ce niveau-là, j’essaie de proposer un cours en étant très précis sur certains concepts, mais je ne cherche pas à être exhaustif et à aborder tous les sujets. Il y a quelques années je donnais des cours en L1/L2 sur les bases du web, HTML, CSS, JS, PHP et là mon approche était différente : j’essayais d’aborder beaucoup de sujets sans forcément les « creuser » au maximum. L’idée étant qu’en L1/L2 on est sur de la découverte alors qu’en Master je considère qu’on doit commencer à avoir une certaine maîtrise des sujets. Un exemple : REST est encore en 2020 un style d’architecture très mal compris, et je pense que c’est en partie dû à des enseignements qui ne sont pas assez précis, qui ne vont pas au bout des choses.
Concernant les différences entre la préparation d’un cours et d’une conférence je dirais que ça dépend :). J’ai déjà fait des présentations assez proches d’un cours magistral lorsque je voulais faire découvrir un nouvel outil par exemple. Dans ce cas, on essaie de passer en revue les fonctionnalités de l’outil, et on a quelque chose d’assez linéaire. Pas forcément très fun mais ça peut être très bien quand même. Sur d’autres types de sujets, on sait qu’on ne pourra pas parler de tout alors on n’aborde qu’une petite partie du sujet mais en choisissant un axe particulier. Et puis, pour un talk il y a des contraintes bien différentes. L’une d’elles est que l’on a très peu de temps. Réussir à proposer quelque chose d’intéressant en 10, 20 ou 40 minutes ce n’est pas simple, lors d’un cours, on a plusieurs heures, on peut se permettre des digressions ou des anecdotes pour essayer d’accrocher les étudiants.

(suite…)

La parole est aux speakers : Damien Alexandre

Jusqu’au Forum PHP 2020, 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

État de l'art d'Elasticsearch avec PHP

Tout le monde utilise Elasticsearch, mais qui en comprend vraiment les particularités ? Dans ce talk je vous expose mes recommandations sur la mise en place du moteur de recherche dans un applicatif Web et les pièges dans lesquels nous tombons le plus souvent. Du tuning de pertinence à la mise à jour de mapping en production sans perte de service, vous apprendrez à maîtriser et reprendre confiance dans votre utilisation d'Elastic avec PHP.

Katherine Johnson
22/10/2020
10:15-10:55

Ta conférence portera sur l’état de l’art sur Elasticsearch avec PHP. Tu l’as déjà donnée en 2019 lors de l’AFUP Day, qu’est ce qui changera par rapport à celle-ci au Forum PHP 2020 ?

L’état de l’art en soit n’a pas évolué depuis 2019 mais les logiciels sur lesquels nous pouvons nous reposer oui.
Par exemple Elastica 7.0 est enfin disponible (depuis Juin), Elastically est stable et propose de nouveaux ponts vers Symfony…
En plus donc de ces quelques changements, j’aimerais parler d’APM, une solution de monitoring de performance applicative dont l’extension PHP est en cours de développement.

(suite…)

La parole est aux speakers : Gabriel Caruso

Jusqu’au Forum PHP 2020, 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 8: a new version, a new era

PHP 8 is coming, and you might be wondering: what are the new features? Have they fixed that weird bug? Is my application getting any faster? Can I support both PHP 7 and 8 versions in my library or framework?

In this talk, we are going to spend some time looking at everything that has changed in PHP 8, both internally and externally, either new features and changes of behavior (Break Compatibility, you know them).

As one of the Release Managers, Gabriel Caruso is going to tell you all about it, giving you the resources to get the latest major version of PHP, that is scheduled for November 2020, up and running!

Katherine Johnson
22/10/2020
11:25-12:05

In your opinion, which feature is the most interesting in PHP 8?

Choosing one among the best features in PHP 8.0, I’d say https://wiki.php.net/rfc/union_types_v2. The main reason is that now, with this feature on PHP 8.0, methods, properties, and everything else that had an annotation to indicate it, can be replaced with actual types, and we’ll have much cleaner codebases.

(suite…)