« Projet Movim conf Vincent Lambert 2013 » : différence entre les versions

De April MediaWiki
Aller à la navigationAller à la recherche
(Contenu remplacé par « Catégorie:Transcriptions Publié [https://www.april.org/movim-vincent-lambert-pses2013 ici] - Août 2018 »)
 
(27 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
[[Catégorie:Transcriptions]]
[[Catégorie:Transcriptions]]


vidéo ici [http://influence-pc.fr/26-06-2013-podcast-de-ma-conference-movim-au-pses2013 ]
Publié [https://www.april.org/movim-vincent-lambert-pses2013 ici] - Août 2018
 
==00' transcrit Marie-Odile ==
 
Donc je vais vous présenter le projet de réseau social Movim. OK. Bon, je laisse les gens s'asseoir. Donc c'est parti. Je vais vous présenter le réseau social Movim qui est un logiciel qui se base sur XMPP. Donc je vais vous présenter d'abord globalement l'architecture du réseau, son fonctionnement et j’essaierai de présenter ensuite les atouts du logiciel en lui-même et puis on fera une petite démonstration par la suite.
 
D'abord qu'est-ce qu'on entend par le terme réseau social ? On va le définir deux fois. On va le définir une première fois pour le grand public. Ce qu'on entend par un réseau social ce sera une liste d'amis. On a un moyen ensuite de partager des informations aux gens qui ont nos contacts. Donc des moyens de communiquer en microblogging, des technologies de tchat, etc, des fonctionnalités de ce genre là. Et puis le deuxième moyen de voir un réseau social c'est de s'attarder sur l'aspect technique et de se dire qu'aujourd'hui un réseau social c'est avant tout un logiciel dans lequel on stocke ses données.
Donc un réseau social au final c'est un serveur. Si par exemple on regarde les réseaux sociaux qui sont en place et qui sont très connus tels que Faceboook, Google Plus ou Twitter, vous avez un logiciel qui fonctionne chez l'hébergeur, qui fait fonctionner ce réseau social et une interface ; et en général ce que l'utilisateur appellera le réseau social c'est ce qu'il voit sur l'interface. On ne sait pas vraiment ce qui est derrière Twitter, on ne sait pas vraiment ce qui est derrière Google Plus ou ce qui est derrière Facebook, au final c'est ce qu'on appellera un réseau social.
Movim c'est un petit projet qui se voit comme une alternative qui permet de contrôler ses données, et pas de reprendre le contrôle, qui permet de contrôler les données qui sont produites via ce logiciel-là. Donc si vous avez des données par exemple chez Twitter ou Facebook ou Google Plus, n'espérez pas pouvoir reprendre le contrôle, de toute manière c'est eux qui les ont. Donc contrôler ses données produites, ça sous-entend que quelque part le logiciel que vous allez utiliser vous avez un peu plus confiance que dans les autres logiciels. Donc à cela vous allez pouvoir faire deux choses. La première chose, vous allez pouvoir utiliser le logiciel tel quel c'est-à-dire comme si vous utilisiez par exemple Twitter, vous allez sur un site vous aller sur une URL et vous pouvez commencer à utiliser le réseau. Donc là dans cet onglet-là Movim vous propose une chose : pas de conditions d’utilisation, comme ça elles ne changent pas et on n'a pas la surprise de se dire un jour que ce qu'on a posté a changé de condition d'utilisation ou de paramètre ou autre. Comme ça c'est simple. Et la deuxième chose ce sera de respecter les paramètres des utilisateurs et de pouvoir ensuite héberger vos données chez vous, éventuellement, ou chez quelqu'un un tiers de confiance et donc de posséder ses données, c’est-à-dire que si un jour les données que vous avez mises en ligne vous ne souhaitez plus les voir mises à disposition de tout le monde, vous aurez la possibilité d'éteindre le serveur qui contient vos données et vous n'aurez ni à les réclamer, ni à faire des demandes de suppression, c'est vous qui contrôlez directement ce que deviennent vos données.
Donc le projet a un but principal c'est de permettre aux gens de contrôler leurs communications. C'est le but premier qui est déjà fourni quelque part par le logiciel XMPP. On verra un petit peu plus tard ce que c'est dans le détail. Mais quelque part contrôler ses communications, c'est être indépendant. Si vous pouvez ennoyer vos e-mails et que personne ne vous interdit de parler d'un sujet dans vos e-mails, vous pouvez parler de ce que voulez à votre correspondant. Si sur votre réseau social on vous interdit d’envoyer certains contenus, certains types de contenus, c'est-à-dire s’il y a du filtrage ou de la censure, vous allez être handicapé dans vos communications et vous serez obligé de passer ailleurs. Et c'est ce que propose Movim, c'est d'avoir une alternative aux communications que vous utilisez en ligne.
 
Je prends un exemple : la dernière fois où j'ai utilisé Facebook, c'était il y a quand même pas mal de temps, mais à ma connaissance les liens de thepiratebay sont bloqués sur ce site. Ça veut dire que si je veux envoyer un lien thepiratebay à quelqu'un, je vais devoir lui téléphoner et lui dicter l'URL. Ce qui est quand même moins pratique que de lui copier-coller.
 
Donc Movim c'est un réseau qui est est décentralisé. Alors je vais commencer par vous expliquer d'abord techniquement ce que c'est que la centralisation et la décentralisation et on verra juste après en quoi ce logiciel repose sur des fondements décentralisés.
La centralisation elle a quand même des atouts. On va commencer par ça. D’abord vous avez un seul site sur lequel vous connecter. Si vous demandez à quelqu'un d'aller sur Twitter ou d'aller sur Facebook, il connaît déjà l'URl, il sait déjà que c'est sur HTTPP://facebook.com. Le deuxième intérêt que vous avez à avoir un site centralisé c'est qu'en général la personne qui va utiliser votre site n'a rien à installer. Dans le cadre du site web qui est au milieu, dans le modèle centralisé, le client se connecte directement dessus et il peut directement consommer le service que vous avez mis à disposition sur internet. Et le troisième avantage, c’est que puisque le système est centralisé eh bien toutes les données sont au centre. Ça a un avantage, dans le sens où le serveur connaît tout le monde. Si vous avez besoin de contacter quelqu'un ou de reprendre contact avec quelqu'un que vous connaissiez il y a longtemps, et que le réseau est très populaire alors vous savez qu'en tapant son nom dans le moteur de recherche du site, vous allez pouvoir retrouver la personne très facilement.
 
La centralisation elle a quand même des limites. Moi j'ai noté quatre limites principales qui sont le problème de confiance. Tout d'abord le problème de confiance c'est qui possède mes données au final, qui fait quoi de ce je mets sur ce site ? Par exemple aujourd'hui, les réseaux sociaux, les trois grands réseaux sociaux sont hébergés aux États-Unis et donc ils ne sont pas sous nos lois, ils ne sont pas protégés ni par la CNIL, ni par quelque autre convention. Il y a notamment une loi qui s'appelle Patriot Act que tout le monde connaît au moins dans la salle je pense, qui donne à peu près accès à toutes vos données à a peu près tout le monde aux États-Unis.
 
Deuxième problème c'est le modèle économique. Le modèle économique de la centralisation il est gênant parce qu'il sous-entend que plus il y a d'utilisateurs sur votre infrastructure plus vous allez devoir payer, parce que tout simplement les consommations de ressources sont exponentielles. On imagine bien que si on a 500 millions d'utilisateurs on ne pas tous les mettre au même endroit. Donc il va falloir payer des data-centers, des infrastructures et tout cela il faut les rentabiliser parce que malheureusement ce n'est pas bénévole et donc à partir du moment où une infrastructure coûte de l'argent, il faut trouver des acheteurs, il faut trouver des vendeurs, il faut trouver un produit.
Le vendeur on sait qui sait et il a déjà des coûts, donc on n'a pas besoin de chercher bien plus loin ; l'acheteur vous le rencontrez lorsque vous allez sur le site et que vous voyez des petites bannières de publicité affichées sur les côtés et donc au final il reste la marchandise que est échangée entre les deux à savoir et bien la personne qui renseigne sur ce site des informations qui va expliquer que voilà, il aime les groupes de rock, il en aime beaucoup. ; il aime les groupes de musique jeunes, il aime lire aussi, il aime ce genre de choses et toutes ces informations-là servent tout simplement à cibler la publicité qui est revendue sur les côtés. Donc le problème du modèle économique c'est de savoir tout simplement ce qui va être fait de vos données, est-ce qu'elles sont manipulées ? Est-ce que les services qui s'étendent au-delà du réseau social, les e-mails, les conversations vocales, est-ce que ces mêmes communications sont également utilisées à ces fins-là ?
 
Le troisième point c'est la fiabilité. Alors il y a petit cadre qui entoure le serveur central ici, c'est deux problèmes en un. Le premier problème ce sont les défaillances techniques. Je sais que Twitter a eu énormément de problèmes il y a quelques années avec des problèmes de surcharge qui étaient vraiment répétitives et qui étaient vraiment très très courantes sur le réseau. Ça le fait moins mais ça le fait encore. Ce qui est gênant c'est que lorsque le site principal de Twitter est paralysé, admettons que dans une salle on soit trente personnes, plus personne ne peut communiquer. Le centre est étouffé donc les utilisateurs sont bloqués.
Le deuxième problème qui se pose au-delà des problèmes techniques c'est tout simplement la censure. C'est-à-dire que si le site qui est au centre a une quelconque raison de bloquer quoi que ce soit il peut l'appliquer et il l'appliquera à l'ensemble des utilisateurs. Imaginons que je possède un grand site de réseau social qui est au centre du schéma et que quelqu'un vient me voir en disant « Tiens si tu bloquais par exemple tous les liens de thepiratebay sur mon site et bien je te reverserais un petit quelque chose ou en tout cas tu participerais fortement à mon action ». Donc le site principal va se dire « Tiens c'est une bonne idée, je vais le bloquer » et malheureusement les gens qui sont au milieu ne peuvent plus échanger sur le terme qui a été bloqué.
 
Et le dernier problème qui a été identifié sur les modèles centralisés, c'est la sécurité tout simplement parce que le centre du réseau social qui est représenté à l'écran, que vous pouvez appliquer à tous les réseaux sociaux populaires que vous connaissez, malheureusement il contient les données de tous les utilisateurs qui sont inscrits dessus. On va prendre un exemple de modèle de centralisation qui a fait parler de lui il y a un peu moins de cinq ans : c'est le Play Station Network qui a été malheureusement pris d’assaut par des gens qui voulaient absolument les numéros de cartes bancaires qui étaient à l'intérieur. Et comme ils ont réussi à ouvrir le seul point d'attaque qu'ils avaient à passer, ils ont obtenu dans le coffre-fort du pirate avec tous les petits trésors à l'intérieur, les numéros de cartes bancaires et je pense qu'ils en ont fait bon usage.
 
Les travers de la centralisation, alors ça c'est même au-delà des limites de la centralisation. On a donc des cas de censure qui sont apparus dans les pays récemment, on va dire il y a un ou deux ans, en Syrie, en Égypte, je ne vais pas faire la liste, qui se sont vu bloquer une partie d'accès au site. C'est-à-dire que le site lui-même n'était pas hébergé dans le pays en question, mais une partie des utilisateurs a été empêchée d'accéder au réseau. Et dans le modèle centralisé vous n'avez qu'une seule porte d'entrée pour votre réseau. donc si vous voulez rejoindre et communiquer avec les autres personnes, si vous voulez rejoindre ce réseau-là  et bien vous êtes bloqués parce que le seul nœud qui était disponible a été rendu inopérant.
 
==10' 48 ==
La décentralisation c'est un autre mode de fonctionnement. C'est un mode de fonctionnement qui a des avantages. D'abord c'est difficile de compromettre ce réseau. Vous pouvez essayer de l'attaquer de toutes les manières que vous voulez, plus vous allez obtenir de serveurs au milieu du schéma plus votre réseau sera résistant. Si vous voulez faire par exemple une attaque distribuée, une attaque DDOS, par déni de service, vous ferez peut-être un ou deux sites. Mais si votre réseau est bien construit normalement la plupart des autres serveurs seront « sécure », entre guillemets, seront séparés du réseau et donc vous pourrez continuer à communiquer avec vos contacts. Imaginons que vous ayez 30 contacts, vous avez 5 contacts sur le serveur qui est en haut à gauche qui est attaqué, mais vous pouvez quand même parler avec le reste de vos mis, c'est de manière complètement fluide et transparente, vous n'allez pas vous en rendre compte.
 
Le deuxième problème c'est l'infection du site. Au-delà du piratage qu'on a vu tout à l'heure à l'égard de serveur  central, ce qui pourrait arriver par exemple c'est que quelqu’un accède au code du site et rajoute, je ne sais pas , de la publicité ou des codes malicieux, des choses comme ça qui peuvent faire fonctionner différents mécanismes sur votre ordinateur que vous ne souhaitez pas. Et dans le cas d'un site centralisé, tous les utilisateurs vont être touchés d'un coup. Ce ne sera pas le cas sur un système décentralisé et puis tout simplement la dernière chose, lorsque les différentes données ne sont pas dans les mains d'un seul acteur, bien sûr pas de censure directe, pas de possibilité de bloquer des mots-clefs ou de bloquer des URL ou des paragraphes ou des images ou du contenu sur l’ensemble du réseau. Seuls les gens qui sont sur l'un des sites qui posent problème se verront bloquer du contenu.
Les avantages c'est, comme vous voyez sur le slide juste avant, vous avez plusieurs points d'entrée sur votre réseau. Imaginons que vous êtes dans un pays qui va vous interdire l'accès parce que ça a été dit dans la loi de bloquer l'accès aux noms de domaines monsite.fr, vous avez juste à prendre celui d'à côté.
 
La décentralisation a aussi des limites. Mais elles sont quand même moins nombreuses, elles sont contournables. La première limite c'est de trouver un hébergeur qui est fiable. C'est simple si je peux créer autant de nœuds sur le réseau que je veux, quelqu'un qui serait mal intentionné ou qui aurait envie également de récupérer mes données, peut créer le sien et si je ne suis malheureusement pas assez pas vigilant et que je me rends sur ce site en me disant c'est le bon site que je voulais utiliser, si pas exemple une lettre a changé dans l'URL et que ils se servent de ça pour faire leur propre site, je peux me retrouver sur un nœud malheureusement compromis et qui manipulera aussi bien mes données que les réseaux précédents.
 
Et le deuxième problème, la deuxième limite qui est posée par la décentralisation c'est le problème de ce que j'ai appelé les super nœuds. Je ne sais pas si dans la salle des gens connaissent le réseau StatusNet, mais il y a un site qui a émergé qui s’appelle Identi.ca, qui est propulsé par les gens qui ont pris StatusNet et malheureusement Identi.ca rassemble aujourd'hui une grosse majorité des utilisateurs. Alors certaines personnes courageuses ont fait leurs propres nœuds sur le réseau. Malheureusement aujourd'hui si Identi.ca s’arrête de fonctionner, je pense qu'une  grosse partie du réseau StatusNet sera handicapée.
 
Intervention inaudible
 
'''VL :''' Sur  StatusNet ? Ah oui ! Ah oui ! Dans la période des questions. Même genre de truc sur  Identi.ca.
 
 
==14' 08 ==
Du coup on est arrivé à la question de savoir, c'était il y a peu près 5 ans, ce n'est pas moi qui ait pris la décision, de savoir est-ce qu'il y avait besoin de créer un nouveau réseau social ? Un réseau au final on remarque qu'il n'est pas si mauvais pas de ça. D'abord le constat de l'époque c'est qu'il y avait assez peu d'alternative. Diaspora commençait à être lancé StatusNet net a du être lancé un petit peu après, presque en même temps, je ne sais plus exactement, mais par contre sur des protocoles qui ont été recréés à chaque fois. StatusNet a créé son propre protocole, Diaspora a créé le sien et on s'est demandé simplement comment est-ce que ces gens-là qui avaient des réseaux différents allaient pouvoir un jour s'unir sur un même réseau et dire on ne va demander à chacun de se réinscrire X fois sur les sites, c'est dommage d'avoir plusieurs listes d'amis qui sont partagés et puis de se dire à un moment je n'ai que 5 amis d'un côté, 5 amis de l'autre. Bon. Il y avait déjà à un réseau existant à cette époque-là qui s'appelle XMPP, un protocole XMPPP, qui propulse un réseau qui est utilisé par beaucoup de gens qui s'appelle Jabber qui est de la messagerie instantanée et ce protocole il est extensible, à savoir qu'il y a d'autres extensions, d'autres fonctionnalités qui ont été ajoutées depuis à ce réseau et qui permettent de faire du microblogging, qui permettent de faire un simili de forum, le concept est un petit peu différent, qui permettent de faire tout un tas de choses, de gérer par exemple les présences, est-ce que je suis en ligne, est-ce que je suis hors ligne, est-ce que je suis occupé, les humeurs, tout un tas de choses qui sont gérées directement en standard dans XMPP et donc tout simplement la conclusion qui est venue à se faire c’est plutôt que de recréer à la fois le client et à la fois le serveur, on va simplement faire un autre client, compatible, qui implémente tout ce qui est déjà fait dans le réseau XMPP.
Donc le projet a été fondé en 2008. Le code a été publié la première fois en 2009. Personnellement j'ai rejoint le projet en 2010 et Guillaume Pasquet qui est le second plus gros développeur du projet a rejoint également en novembre 2010 et le fondateur du projet est Timothée Jaussoin et j'ai simplement oublié de donner son nom au début.
 
Alors maintenant on va voir qu'est-ce que Movim ? Tout à l'heure je vous parlais de réutilisation d'un protocole qui s’appelle XMPP. Movim est un client. C'est simplement un client au même titre que Gajim, Pidgin ou Adium pour les gens qui utilisent Mac, qui sais-je. C'est l'un des clients possibles pour se connecter au réseau XMPP. Ça veut dire que dans ce modèle-là les données sont réparties quelque part sur l'un des 3 serveurs sur la droite, donc des serveurs qui communiquent entre eux et les données sont simplement extraites du serveur pour être affichées. Elles peuvent être affichées dans d'autres clients. Movim n'est pas la seule interface disponible pour présenter les données.
 
Donc le client est écrit en PHP, en HTML5 également et donc vous allez pouvoir l'exécuter dans n'importe quel navigateur récent. Le choix du PHP a été fait tout simplement parce que c'est une technologie où on a énormément de serveurs mutualisés sur internet et donc une possibilité de répandre le logiciel au moins autant que Wordpress, donc du logiciel grand public qui s'installe très facilement même pour les gens qui sont un petit peu néophytes et qui se diraient j'aimerais bien essayer.
 
Deuxième avantage c'est que ça résiste en franchissement de page, ce qui sera très utile à mon avis en mobilité si vous changez de réseau :  vous passez de 3G à WIFI, vous voulez fermer votre navigateur, le rouvrir, vous n'allez pas être déconnecté, votre session va vous permettre de rester connecté sur votre page de réseau social et donc de pouvoir continuer à discuter avec les gens.
Alors maintenant plus spécifiquement comment est-ce que les données sont transmises ? Le modèle ressemble beaucoup au modèle de l'e-mail. Admettons que je sois la personne qui est en haut et je veux écrire à la personne qui est en bas. Le modèle le plus simple c'est de dire j'écris à la deuxième personne. On envoie notre message au premier serveur comme on enverrait un e-mail, mon destinataire arobase son fournisseur de service .fr et j'ai donc le message va transiter de serveur en serveur jusqu'au prochain client. Movim quelque part ne fait qu'enrichir les fonctionnalités qui sont déjà présentes dans XMPP. Ça veut dire que si vous voulez par exemple utiliser un autre client, je vous l'ai déjà dit tout à l'heure, vous allez pouvoir ré-afficher vos données. Il y a d'autres clients à l'heure actuelle qui présentent ces informations, mais ils ne sont pas très nombreux, il y a Jappix et je ne serais pas sûr mais je dirais peut-être Salut à Toi qui est un deuxième projet que vous connaissez peut-être qui présentera les données à mon avis, plus ou moins de la même manière.
 
Donc ce dont a besoin Movim c'est simplement un serveur Web. Vous allez pouvoir éventuellement le faire tourner chez vous puisque de toute manière les besoins en bande passante ne seront pas très très élevés, contrairement à un blog où vous allez avoir 300 visites par jour, là c'est destiné principalement aux gens qui sont dans votre liste de contacts, donc des photos, des vidéos, du contenu un petit peu lourd qui mettra du temps à transférer sachant que dans les mois qui viennent ou les années qui viennent la technologie ADSL va légèrement changer chez certains opérateurs. Pour le VDSL2 qui commence à arriver chez Free, OVH et d'autres personnes avec des débits montants plus intéressants selon l'endroit où vous êtes.
Donc vous avez également besoin d'un compte sur un serveur XMPP. Si vous avez une adresse Jabber vous avez déjà  en fait un pied dans le réseau, vous déjà toute votre liste d'amis et vous avez juste à vous connecter sur le site de votre choix et un navigateur pour afficher votre page.
 
Les 3 fonctionnalités à venir qui sont attendues dans Movim ce seront donc la gestion des salons, version mobile éventuellement, je crois qu'elle est déjà plus ou moins prête et la possibilité de faire des conversations via WebRTC je crois que ce sera implémenté dans quelques temps et donc d'avoir quelque chose que est équivalent à ce qui se fait aujourd'hui. Je vais vous faire une rapide démonstration du projet.
 
==20' 10 ==
Donc si vous voulez essayer le projet tout simplement à titre de démonstration

Dernière version du 14 août 2018 à 15:42


Publié ici - Août 2018