• # Réflexions sur le réseau social

    Posté par . En réponse au journal Le futur de Jappix. Évalué à 10.

    D'après certains trucs que je lis dans les commentaires au-dessus, je pense qu'il serait une bonne idée de rappeler ce qu'est un réseau social.

    Ce qu'un réseau social n'est pas :

    • Un réseau social n'est pas un protocole. Quand on voit le réseau social comme un protocole, on n'est pas très loin de la réalité, ceci dit. Et cela donne des choses merveilleuses comme Salut à Toi ou les extensions XMPP. Avez-vous testé Salut à Toi ? On peut jouer aux cartes avec les membres de son roster, avec n'importe lequel des clients proposés. Je trouve ça formidable. Mais c'est pas ça, un réseau social.

    • Un réseau social n'est pas une suite logicielle. Quand on pense qu'un réseau social est une suite logicielle, on s'éloigne un peu plus de la réalité. Ceci dit on n'en est pas super loin non plus : la suite Mozilla, c'était une bonne idée qui méritait d'être creusée. Il y avait un logiciel pour avoir des conversations à deux ou à plusieurs (le client mail), un logiciel pour avoir des conversations instantanées (le client IRC), des clients pour lire et publier du contenu (le client de news et le client web)…c'est très intéressant, mais c'est pas ça, un réseau social.

    • Un réseau social n'est pas un client. Quand on voit le réseau social comme un client, on commence à s'éloigner vraiment de ce qu'est un réseau social. Ça donne les Jappix, les Movim et autres trucs qui sont basiquement des clients jabber+mail évolués pour navigateurs.

    • Un réseau social n'est pas une interface. Quand on croit qu'un réseau social, c'est une interface, on ne sait pas du tout ce qu'est un réseau social et on va droit dans le mur vitesse grand V. Ça donne des trucs comme Diaspora ou StatusNet, sur lesquels j'épiloguerai pas, Ploum vous l'a expliqué mieux que moi.

    Ce qu'est un réseau social :

    Un réseau social, dans sa définition d'origine, c'est un groupe de gens en contact les uns avec les autres, qui communiquent. Juste ça. Et en simplifiant au maximum, on est tenté de dire qu'un réseau social, c'est une liste de contacts.

    En fait, la liste de contact est la colonne vertébrale du réseau social. C'est autour de cela que tout s'articule. Après, dessus on accroche des membres (le protocole) avec des outils au bout (les logiciels), on met des muscles et des tendons pour que tout ça tienne ensemble (suite logicielle, desktop environment, client web complet, selon la préférence de l'utilisateur), et en tout dernier, on met la peau par-dessus (l'interface).

    L'utilisateur de Facebook ou de Google Plus ne fait rien que je ne fasse déjà. Il communique à deux (mail), il communique à plusieurs en privé (mailing-lists, forums privés), il communique à plusieurs en public (forums de discussion, usenet), il communique de façon instantanée, à deux (XMPP classique) ou à plusieurs (MUCs jabber, IRC). Il publie des articles ou des statuts (blogging et microblogging). Il joue à des jeux et publie ses scores (fonction qui existe dans beaucoup de jeux sur PC ou sur console). Il est notifié à l'avance de l'anniversaire de quelqu'un (des logiciels de bureau comme Gbirthday le font). Cependant il fait tout ça bien plus rapidement et facilement que moi. Quand il veut ajouter un contact, il n'a qu'un clic à faire, ou qu'une url à taper. Et immédiatement l'heureux élu se trouvera ajouté à sa liste de contacts de messagerie, de messagerie instantanée, de discussion publique, de souscripteur de flux, de personnes-dont-il-ne-faut-pas-que-j'oublie-l'anniversaire et d'adversaire potentiel aux petits jeux niais en flash. En un clic, nos contacts pourront échanger sur leurs centres d'intérêt communs ou comparer leurs scores à Paf-Le-Chien ou à Tchak-Tchak-La-Girafe.

    Quand je veux discuter avec quelqu'un par mail, il faut que je l'ajoute à la liste de contacts de mon client mail (synchronisée avec le serveur via l'extension Zindus pour Thunderbird). Quand je veux discuter avec cette même personne via jabber, il faut que je l'ajoute à mon roster. Quand je veux connaître ses contributions sur un forum, il faut que je recherche son pseudo ou que je connaisse l'url de son profil. Etc.
    Le truc le plus avancé, là-dedans, c'est mon client jabber. Quand je clique sur un contact, j'ai toutes les infos qu'il a rentrées dans son profil, comme sur Facebook. Adresse mail, adresse jabber, site web/page perso, clé GPG, description des centres d'intérêt, parfois même adresse physique et numéro de téléphone. Si je veux rajouter toutes ces infos dans mon client mail, il faut que je le fasse à la main. Pourquoi mon client mail et mon client jabber n'iraient pas directement chercher ces infos au même endroit ?
    Pourquoi le roster situé de mon compte jabber, la liste de contact de ma boîte mail, la liste de dates d'anniversaires à souhaiter, la liste des gens avec qui je compare mes scores à supertuxkart et la liste des gens dont je suis les contributions dans un forum et les publications de blog ne seraient-ils pas une seule et même chose ?

    Et si un réseau social, ce n'était pas tout simplement un « client de liste de contacts » (sur mon bureau, dans un navigateur, peu importe) qui se contenterait de récupérer et mettre à jour une liste de contacts située sur un serveur distant à chaque fois que je le lance ? Quand je voudrais causer à un contact, je chercherai le nom > clic dessus > discuter en privé via jabber > votre contact n'a pas fourni de JID > Ah, zut. > discuter par mail > clic > client mail qui se lance…

    Quand deux personnes se rencontrent IRL, se quittent et veulent rester en contact, elles se disent « mon nom/pseudo sur [gros réseau social centralisé] c'est ***** », et hop, elles sont en contact, peuvent discuter en privé, en public, en instantané se souhaiter bon anniversaire et s'affronter sur Sproutch-La-Grenouille sans plus d'effort. Quand deux libristes se rencontrent IRL, soit ils se donnent une longue liste d'ID, d'adresses de pseudos et de clés sur les différents réseaux qu'ils fréquentent, soit ils se donnent une url de type http://example.tld/contact où on trouvera ladite liste. Mais même dans ce cas, quel est le format/protocole à utiliser pour diffuser cette liste ? Quel est le standard ?

    Post-Scriptum: Apparemment, le client mail récupère les contacts au format vcard via CardDAV. Les clients jabber que je connais récupèrent les infos des contacts au format vcard via XMPP. Y'a-t-il des clients jabber qui utilisent CardDAV ?
    Quels sont les protocoles utilisés pour les jeux qui ont une fonctionnalité de comparaison de scores ? Est-ce qu'il y a un standard ou est-ce que tous les jeux utilisent leur protocole dans leur coin ? Est-ce qu'il ne serait pas temps de se mettre d'accord sur un format commun ?
    PPS: J'avais pas pensé à LDAP. Est-ce que c'est adapté pour le réseau social ? Est-ce qu'il y a des projets de réseaux sociaux alternatifs qui l'utilisent ?