AFUP AFUP Day 2020 Baromètre Planète PHP

La parole est aux speakers : Kévin Dunglas

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

Sauvons le Web : décentralisons !

Sauvons le Web : décentralisons !

Le Web a été conçu pour servir l’humanité, pour permettre le partage de connaissances, pour l’amitié entre les peuples. Seulement la centralisation des données et des services par les géants de la Silicon Valley l’ont totalement dénaturé et font peser des menaces immenses sur notre société : surveillance de masse, censure, trucage des élections, arrestations des opposants, fichage étatique et publicitaire.

La situation est telle que les pères fondateurs du Web, parmi lesquels son créateur Tim Berners Lee, multiplient les appels pour le sauver.

La solution : le décentraliser à nouveau, rendre aux utilisateurs le contrôle sur leurs données, lutter contre les monopoles des GAFAM, reconstruire un web indépendant et non-commercial en s’appuyant sur le logiciel libre. Développeurs, journalistes, juristes, artistes et activistes s’organisent pour faire émerger le « Dweb », le web (à nouveau) décentralisé. Le Dweb, c’est un corpus de standards (généralement portés par le W3C) tels que ActivityPub, JSON-LD, RDF ou HTTP ainsi que d’outils dont Solid, Mastodon, PeerTube ou Mobilizon qui visent à remettre le Web au service du bien commun. En tant que développeurs et développeuses web, c’est de notre responsabilité de le construire et de le promouvoir. La bonne nouvelle c’est que l’écosystème PHP dispose déjà des outils nécessaires pour créer des applications web décentralisées basées sur ces standards. Au cours de cette conférence, nous découvrirons pourquoi le Dweb est un enjeu crucial pour l’avenir de nos sociétés, comment ça marche techniquement, et comment on l’implémente avec API Platform, Vulcain, Mercure et autres outils du monde PHP qui le supportent déjà !

En ligne
26/06/2020
10:05-10:45

« Sauvons le Web : décentralisons ! » est une conférence qui sera assez différente de celles que tu donnes habituellement. Comment as-tu eu cette idée de sujet ?

Cela fait longtemps maintenant que je travaille sur le sujet du web en général, et du web des données en particulier. Déjà bien avant API Platform, j’avais longuement étudié et expérimenté avec RDF, les microformats, les ontologies ouvertes et de manière générale toutes les tentatives de pouvoir utiliser le web comme une immense base de données ouverte et interopérable.
Quand j’ai commencé à travailler sur API Platform, l’un de mes objectifs était de permettre aux développeurs·euses web de tirer partie de ces standards du web pour créer très facilement des API “Linked Data”. C’est pour ça que – par défaut – API Platform expose une API supportant JSON-LD, Hydra/LDF et Schema.org (les fondations modernes du web ouvert et décentralisé). Voir à ce sujet la conférence que j’ai donnée à SemWeb.pro il y a 2 ans.

Le web a été conçu dès le départ comme un outil décentralisé et distribué qui doit servir des objectifs politiques : le partage de connaissance, la compréhension mutuelle et l’amitié entre les peuples, l’avancée de la science et de la démocratie (réelle), la liberté d’expression et de communication. Tim Berners Lee, l’inventeur du web, décrit très bien l’utilité et les espoirs que son outil porte : “le web a donné aux groupes marginalisés une voix”.

Malheureusement, le web, et par la même occasion les données personnelles et la liberté d’expression de milliards d’utilisateurs·trices, sont désormais pris en otage par quelques multinationales de la technologie.
Il y a encore quelques années, tout le monde pouvait créer facilement son propre espace sur la toile à l’aide de HTML et des logiciels libres Linux, Apache, PHP et MySQL. Le logiciel libre et décentralisé WordPress permettait à tout un chacun de s’exprimer publiquement et de toucher une audience large sans craindre la censure, il popularisait même les rudiments du web des données. Le web libérait une énergie incroyable, permettait aux “groupes marginalisés” d’enfin toucher un public beaucoup plus large en court-circuitant les très verrouillés canaux médiatiques traditionnels. Le web c’était un foisonnement d’idées et de pratiques nouvelles (ou retrouvées), d’expérimentations techniques, organisationnelles, sociétales ou artistiques, une véritable contre-culture de masse. C’était un réseau maintenu et animé par des milliers de personnes, d’associations, de collectifs et d’entreprises.

Il était alors inimaginables que les géants Google, Apple, Facebook et Microsoft (et quelques autres) en prennent le contrôle quasi-complet, pratiquent la surveillance de masse de ce qui s’y dit, monétisent les données personnelles des internautes et censurent sans aucun contrôle. C’est pourtant ce qui est arrivé.

PHP: Hypertext Preprocessor, c’est LE langage de programmation du web. Et sauver le web, le décentraliser à nouveau, combattre la censure et surveillance de masse que ces multinationales et les États mettent en place, c’est aussi la responsabilité des développeurs et des développeuses. Des solutions techniques existent pour ça, et notre langage permet de les mettre en place relativement facilement, il est donc temps de les populariser. Voilà comment m’est venue l’idée de cette conférence.

Il s’agit d’un sujet plus politique que technique. Penses-tu que ce genre de sujet devrait davantage avoir sa place dans un événement comme l’AFUP Day ?

En l’occurrence, ce sujet sera à la fois politique et technique. D’abord je présenterai le contexte et les enjeux de la centralisation, et de la décentralisation nécessaire du web. Ensuite je présenterai les solutions techniques qui permettent d’y parvenir, et comment on les implémente en PHP.

Je présenterai le format ouvert ActivityPub, un standard du web basé sur JSON-LD et publié par le W3C qui permet de créer des réseaux sociaux décentralisés (Mastodon mais aussi PeerTube et Mobilizon de Framasoft utilisent ce format) puis le projet Solid, de Tim Berners Lee, qui vise à redonner aux utilisateurs·trices le contrôle de leurs données personnelles grâce au web de données.

La technologie en général et le web en particulier sont des sujets éminemment politiques. À l’heure de l’intelligence artificielle, de l’exploitation optimisée par les algorithmes de ceux qui subissent le “digital labor”, de la surveillance de masse à base de reconnaissance faciale et de la censure généralisée, il est plus que temps que les devs se rendent compte que le code qu’ils produisent a des conséquences. Nous avons une responsabilité importante et un pouvoir qu’il est grand temps de comprendre et d’assumer.
Multiplier ce type de sujets, rappeler l’esprit libertaire dans lesquels ont été créés le web et le logiciel libre, dénoncer et lutter contre les utilisations malfaisantes de la technologie me semble aujourd’hui complètement indispensable.

Après API Platform, Mercure, Vulcain… Quel(s) projet(s) nous prépares-tu pour 2020 ?

J’ai quelques projets dans les cartons. En particulier une petite bibliothèque JavaScript (désolé 😅) sur laquelle je bosse avec Thomas Colin qui va permettre de tirer partie au maximum de Mercure et de Vulcain côté client, et l’amélioration des mécanismes d’authentification et d’autorisation de Symfony et d’API Platform sur laquelle nous planchons avec Robin Chalas.

Peut-être aussi quelques outils aidant à décentraliser à nouveau le web, qui sait 😉.

Chez Les-Tilleuls.coop, tu donnes des formations en plus de développer tes projets. Comment arrives-tu à jongler entre ta propre montée en compétences et la transmission de tes connaissances à tes collègues et clients ?

C’est un peu lié. Je passe beaucoup de temps à faire de la veille, à tester les nouveautés des langages de programmation, des bibliothèques et des outils d’autres écosystèmes (Go, JavaScript, Kubernetes…), à lire les nouvelles (ou anciennes) spécifications ou papiers de recherche qui sortent. Ça me permet d’apprendre, et aussi de transmettre ce qui me semble intéressant, parfois juste en partageant les liens, parfois en écrivant des prototypes ou en préparant des formations pour trier ce qui est intéressant de ce qui l’est moins.

Le speaker

Kévin DUNGLAS
Kévin DUNGLAS
Kévin est le fondateur de la société autogérée Les-Tilleuls.coop. Il est membre de la core team Symfony, a créé le framework API Platform, les protocoles Vulcain et Mercure. Il est également contributeur à plus d’une centaine de projets Open Source.

Autres interviews

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation des cookies pour améliorer votre navigation. plus d'infos

1. Qu’est-ce qu’un cookie?

Un Cookie est un petit fichier texte enregistré sur votre terminal (ordinateur, tablette, smartphone, etc.), à l’occasion de la consultation d’un service en ligne grâce à votre logiciel de navigation. Il permet à son émetteur d’identifier le terminal dans lequel il est enregistré, pendant la durée de validité ou d’enregistrement du Cookie. Lors de la consultation de notre site Internet, des informations relatives à la navigation de votre terminal sont susceptibles d'être enregistrées dans ces fichiers dits "Cookies". Ces derniers sont installés sur votre terminal, sous réserve des choix que vous auriez exprimés concernant les Cookies et que vous pouvez modifier à tout moment.

2. A quoi servent les cookies émis sur notre site ?

Seul l’émetteur d’un cookie est susceptible de lire ou de modifier les informations qui y sont contenues.
Les cookies utilisés sur notre site permettent :

3. Vos choix concernant les cookies

Vous disposez de différents moyens pour gérer les cookies. Tout paramétrage que vous pouvez entreprendre sera susceptible de modifier votre navigation sur notre site et sur Internet en général et vos conditions d'accès à certains services de notre site nécessitant l'utilisation de cookies. Vous pouvez à tout moment exprimer et modifier vos souhaits en matière de cookies, par les moyens décrits ci-dessous. L'accord sur les cookies L'enregistrement d'un cookie dans un terminal est essentiellement subordonné à la volonté de l'utilisateur du terminal, que celui-ci peut exprimer et modifier à tout moment et gratuitement à travers les choix qui lui sont offerts par son logiciel de navigation. Si vous avez accepté dans votre logiciel de navigation l'enregistrement de cookies dans votre terminal, les cookies intégrés dans les pages et contenus que vous avez consultés pourront être stockés temporairement dans un espace dédié de votre terminal. Ils y seront lisibles uniquement par leur émetteur.

Le refus des cookies Si vous refusez l'enregistrement de cookies dans votre terminal, ou si vous supprimez ceux qui y sont enregistrés, vous ne pourrez plus bénéficier d'un certain nombre de fonctionnalités qui sont néanmoins nécessaires pour naviguer dans certains espaces de notre site. Tel serait le cas si vous tentiez d'accéder à votre compte ou à votre abonnement qui nécessite de vous identifier. Tel serait également le cas lorsque nous, ou nos prestataires, ne pourrions pas reconnaître, à des fins de compatibilité technique, le type de navigateur utilisé par votre terminal, ses paramètres de langue et d'affichage ou le pays depuis lequel votre terminal semble connecté à Internet. Le cas échéant, nous déclinons toute responsabilité pour les conséquences liées au fonctionnement dégradé de nos services résultant de l'impossibilité pour nous d'enregistrer ou de consulter les cookies nécessaires à leur fonctionnement et que vous auriez refusés ou supprimés. Les choix offerts par votre logiciel de navigation Vous pouvez configurer votre logiciel de navigation de manière à ce que des cookies soient enregistrés dans votre terminal ou, au contraire, qu'ils soient rejetés, soit systématiquement, soit selon leur émetteur. Vous pouvez également configurer votre logiciel de navigation de manière à ce que l'acceptation ou le refus des cookies vous soient proposés ponctuellement, avant qu'un cookie soit susceptible d'être enregistré dans votre terminal. Pour la gestion des cookies et de vos choix, la configuration de chaque navigateur est différente. Elle est décrite dans le menu d'aide de votre navigateur, qui vous permettra de savoir de quelle manière modifier vos souhaits en matière de cookies. Selon votre navigateur, consultez le lien ci-dessous pour configurer votre navigateur et refuser les cookies :