RMLL + nouveau site pour SàT

goffi 31/07/2012, 22:10 GNU-Linux projet SàT jabber-xmpp Libre

Salut à vous,

un rapide billet pour vous annoncer l'ouverture d'un nouveau site de présentation de Salut à Toi: http://sat.goffi.org . Le but était d'avoir un site un peu plus accessible que la page du wiki, et permettant de rapidement se faire une idée du projet. Il est disponible en français et en anglais (tout aide pour une traduction dans une autre langue est la bienvenue).

D'autre part, je suis allé aux Rencontres Mondiales du Logiciel Libre à Genève ce mois-ci, et j'y ai fait une conférence que vous trouverez à cette adresse: http://video.rmll.info/videos/salut-a-toi-communication-libre-federee-decentralisee-et-standard/ . Le salon s'est très bien passé. Je faisais stand commun avec Romain du projet ami Weboob, et j'ai également pu revoir les équipes d'autres projets tels que MOVIM (nous étions voisins), Jappix ou Newebe.

Les visiteurs avaient l'air intéressés par SàT, et de plus en plus de monde connaissait le projet au moins de nom. Espérons que l'année prochaine la version courante sera utilisable par tous...

Fine access tuning for PubSub

goffi 24/06/2012, 20:09 jabber-xmpp-en projet technique SàT Libre

Warning this post is technical

As you may know, "Salut à Toi" allow to do microbloging with groups access, that mean that you can send post to only a group of your roster (e.g. "family" or "friends"). This feature has been available for a year, but was using a dirty hack (which only works with OpenFire); that was mainly a proof of concept

We need a simple permissions system which can be used beyond microblogging, something generic, which can extend PubSub.
Rather than thinking about tons of pubsub nodes with different access model each time (e.g. a family node, an other one for friends, etc), we need a way to fine tune permissions, by items.

For this reason, I started a pubsub component to validate the concept, and which will be used by SàT to manage microblogging. If the idea proove to be working, I'll talk about it on one of the XSF mailing list, to propose it as a standard.

The way it works is simple: we use exactly the same syntax as for nodes access model (http://xmpp.org/extensions/xep-0060.html#accessmodels), and we apply it to items.
The node access model is applied first, then the ones of items (that mean that an item with an open access model won't be available to somebody which is not in the right roster group if the node has a roster access).
The PubSub component parse the item stanza, apply access model, then save it (without the configuration part).
When somebody wants to get node's items, the pubsub component first check that he is granted to access node (by checking the "access model"), then send him only the items that he can access.

Imagine that Louise has a node with 3 items: 1 with an open access (A), 1 with a roster access, allowed for "family" group (B), and one with a roster access, allowed for "friends" and "coworkers" (C).
Pierre, who is a friend of Louise, will have access to items A and C. Louise's brother will access items A and B.

There a 2 main advantages: first this protocol stay standard compliant (with XEP-0060) - so there is no change to do for an XMPP client to get items -, and secondly the clients have only one node to check by entity that they want to follow.

Some words on test implementation: I use the "Idavoll" PubSub component as a basis, which was made by Ralph Meijer*, and I have slightly modified it for my tests. The main difficuly is that currently components have a very limited access to server, and we can't access entities' roster.
To work around the issue, I use an experimental protocol which allow to access a remote roster. Unfortunately, this protocol only permit to access a part of the roster, so I have patched Prosody's implementation to get the full roster.
Finally, I used some simplifications by saying that node creator, owner and publisher are the same. This is often true for microblogging, but is very limiting when we think about XEP-0060's possibilities.

Anyway it works, but it still need works (and a standardisation) before being a proper way to do.

Below is a server dialog example. We have here Pierre and Louise which are friends, Louise being in "friends" group of Pierre. The later post a microblog as follow**:
<iq from="pierre@example.net/SàT" type="set" id="H_77" to="sat-pubsub.example.net">
  <pubsub xmlns="http://jabber.org/protocol/pubsub">
    <publish node="urn:xmpp:groupblog:pierre@example.net">
      <item id="8f532cc8-be1d-11e1-b5d3-00c0ca4f1546">
        <entry xmlns="">
          <title>G'day my friends !</title>
          <id>8f532cc8-be1d-11e1-b5d3-00c0ca4f1546</id>
          <updated>2012-06-24T18:56:36+02:00</updated>
          <author><name>pierre@example.net</name></author>
        </entry>
        <x xmlns="jabber:x:data" type="submit">
          <field var="FORM_TYPE" type="hidden">
            <value>http://jabber.org/protocol/pubsub#item-config</value>
          </field>
          <field var="pubsub#access_model">
            <value>roster</value>
          </field>
          <field var="pubsub#roster_groups_allowed">
            <value>friends</value>
          </field>
        </x>
      </item>
    </publish>
  </pubsub>
</iq>

After receiving this, the server parse configuration data (the "http://jabber.org/protocol/pubsub#item-config" form***), delete this part of the stanza, save the item with the right permissions (roster access, only for "friends" group), and only send a notification to group's members, so it send one to Louise.

The notification is sent like this:

<message to="louise@example.net" from="sat-pubsub.example.net">
  <event xmlns="http://jabber.org/protocol/pubsub#event">
    <items node="urn:xmpp:groupblog:pierre@example.net">
      <item id="8f532cc8-be1d-11e1-b5d3-00c0ca4f1546">
        <entry xmlns="">
          <title>G'day my friends !</title>
          <id>8f532cc8-be1d-11e1-b5d3-00c0ca4f1546</id>
          <updated>2012-06-24T18:56:36+02:00</updated>
          <author><name>pierre@example.net</name></author>
        </entry>
      </item>
    </items>
  </event>
</message>

There is no way to know on which group Louise is in Pierre's roster (this is a classical notification). Even is an XMPP client doesn't manage the per-item access model, it will receive the notifications and will be able to manage them as usual.

I have sub-licenced the component to AGPL V3, you will find the code in my repository (http://repos.goffi.org/sat_pubsub/). I invite XMPP community's members (authors of clients and servers, or others) to use the code, or to comment the idea

Fine permissions tuning are in my opinion a mandatory feature that XMPP really needs, and they will be more and more used by the "Salut à Toi" project. It was one of the last architecture point of SàT, a new release should follow quickly.

Stay connected :)
Goffi

* Ralph Meijer is also a contributor of Twisted and the author of "Wokkel" library, which are in the heart of SàT, in addition of being one of the authors of PubSub XEP. A huge thank to him for its valuable contributions.
** Normally, microbloging use PEP, but component limitation that I mentionned above forced me to use a custom protocol, which doesn't use PEP.
*** I have used a "jabber.org" namespace instead of "goffi.org", as I should have do for an experimental feature, because I need it so Wokkel's PubSub service could parse it.

Permissions fines pour PubSub

goffi 24/06/2012, 18:26 projet technique SàT jabber-xmpp Libre

Attention ce billet est technique.

Comme vous le savez peut-être, « Salut à Toi » permet de faire du microblogage par groupes, c'est à dire que vous pouvez envoyer des messages réservés à un groupe de votre roster (par exemple « famille » ou « amis »). Cette fonctionnalité est disponible depuis près d'un an, mais était basée sur un bidouillage assez sale (et qui ne fonctionne qu'avec OpenFire), qui permettait surtout de tester le concept.

Il est nécessaire d'obtenir un système de permissions simple qui va au delà du microblogage, quelque chose de générique, qui étendrait PubSub.
Plutôt que de partir sur des tonnes de nœuds pubsub avec des accès différents à chaque fois (par exemple, un nœud pour la famille, un pour les amis), il faut un moyen de gérer plus finement les permissions, par élément (item).

Aussi j'ai commencé un composant pubsub qui permet de valider le concept, et qui va être utilisé par SàT pour gérer le microblogage. Si l'idée se montre solide en pratique, je vais en parler sur une des listes de diffusion de la XSF pour tenter de la faire standardiser.

Le fonctionnement est assez simple: on prend exactement la même syntaxe que les accès du nœud (« Node Access Models » (http://xmpp.org/extensions/xep-0060.html#accessmodels) qu'on applique aux éléments.
L'accès du nœud est appliqué en premier, puis celui des éléments (c'est à dire qu'un élément avec un accès ouvert (open) ne sera pas accessible à quelqu'un qui n'est pas dans le groupe prévu si le nœud a un accès par groupe (roster)).
Le composant PubSub parse l'élément, applique les permissions, puis le sauvegarde (sans la partie configuration).
Quand quelqu'un veut récupérer les éléments du nœud, le composant pubsub vérifie d'abord qu'il a accès au nœud (en vérifiant le « access model »), puis lui envoi uniquement les élements qui correspondent à son accès.

Imaginons que Louise a un nœud avec 3 éléments: 1 qui a un accès ouvert (A), 1 qui a un accès par groupes, autorisé pour le groupe « famille » (B), et un qui a un accès par groupes, autorisé pour les groupes « Amis », et « Collègues » (C).
Pierre qui est un ami de Louise aura accès aux élements A et C. Le frère de Louise aura accès aux éléments A et B.

Il y a là 2 avantages principaux: premièrement ce protocole reste compatible avec la XEP-0060 - il n'y a donc aucun changement à faire côté client pour retrouver les élements -, et deuxièmement les clients n'ont qu'un seul nœud à surveiller par entitée suivie.

Quelques mots sur l'implémentation de test: j'ai pris pour base le composant PubSub « Idavoll », fait par Ralph Meijer*, que j'ai légèrement modifié pour faire les tests. La difficulté principale est qu'actuellement un composant a un accès très limité au serveur, et ne peut notamment pas acceder au roster des entités.
Pour contourner le problème, j'utilise un protocole expérimental, qui permet d'accéder à un roster distant. Malheureusement, ce protocole ne permet que d'accéder à une partie du roster, aussi j'ai du modifier l'implémentation de Prosody pour récupérer le roster complet.
Enfin, j'ai simplifié en considérant que le créateur du nœud était aussi son propriétaire, et l'auteur des billets (creator = owner = publisher). Ce qui est souvent vrai pour du microblogage, mais limite beaucoup les possibilités offertes par la XEP-0060.

Bref, ça fonctionne, mais il y a encore du travail à faire (et qui doit passer par une phase de standardisation) avant que ça soit propre.

Voici un exemple de dialogue avec le serveur. Nous avons ici Pierre et Louise qui sont amis, Louise est dans le groupe « amis » de Pierre. Ce dernier publie un microbillet comme suit**:
<iq from="pierre@example.net/SàT" type="set" id="H_77" to="sat-pubsub.example.net">
  <pubsub xmlns="http://jabber.org/protocol/pubsub">
    <publish node="urn:xmpp:groupblog:pierre@example.net">
      <item id="8f532cc8-be1d-11e1-b5d3-00c0ca4f1546">
        <entry xmlns="">
          <title>Salut les amis !</title>
          <id>8f532cc8-be1d-11e1-b5d3-00c0ca4f1546</id>
          <updated>2012-06-24T18:56:36+02:00</updated>
          <author><name>pierre@example.net</name></author>
        </entry>
        <x xmlns="jabber:x:data" type="submit">
          <field var="FORM_TYPE" type="hidden">
            <value>http://jabber.org/protocol/pubsub#item-config</value>
          </field>
          <field var="pubsub#access_model">
            <value>roster</value>
          </field>
          <field var="pubsub#roster_groups_allowed">
            <value>amis</value>
          </field>
        </x>
      </item>
    </publish>
  </pubsub>
</iq>

En recevant ceci, le serveur analyse les données de configuration (le formulaire « http://jabber.org/protocol/pubsub#item-config »***), supprime cette partie du message, stocke l'élements avec les permissions voulues (accès par groupes, uniquement pour le groupe « amis »), et envoi une notification uniquement aux membres du groupe « amis », soit à Louise.

La notification est envoyée comme suit:

<message to="louise@example.net" from="sat-pubsub.example.net">
  <event xmlns="http://jabber.org/protocol/pubsub#event">
    <items node="urn:xmpp:groupblog:pierre@example.net">
      <item id="8f532cc8-be1d-11e1-b5d3-00c0ca4f1546">
        <entry xmlns="">
          <title>Salut les amis !</title>
          <id>8f532cc8-be1d-11e1-b5d3-00c0ca4f1546</id>
          <updated>2012-06-24T18:56:36+02:00</updated>
          <author><name>pierre@example.net</name></author>
        </entry>
      </item>
    </items>
  </event>
</message>

Rien ne permet de savoir à quel groupe Louise appartient dans le roster de Pierre (c'est une notification traditionnelle). Même si un client XMPP ne gère pas les permissions fines, il recevra les notifications et pourra les traîter comme d'habitude.

J'ai relicencié le composant en AGPL V3, vous pouvez trouver le code dans mon dépôt (http://repos.goffi.org/sat_pubsub/). J'invite les différents membres de la communauté XMPP (auteur de clients/serveurs ou autre) à utiliser le code, ou à apporter des critiques au principe.

Les permissions fines sont à mon avis une fonctionnalité essentielle et nécessaire dans XMPP, et elles vont être de plus en plus utilisées par le projet « Salut à Toi ». Il s'agissait de la dernière grosse brique de l'architecture de SàT, une nouvelle version devrait suivre rapidement.


Restez en ligne :)
Goffi

* Ralph Meijer est aussi un contributeur de Twisted et l'auteur de la bibliothèque « Wokkel » qui sont au cœur de SàT, en plus d'être un des auteurs de la XEP PubSub. Un grand merci à lui pour ses précieuses contributions.
** Normalement le microblogage utilise PEP, mais les limitations des composants évoquées plus haut m'ont obligé à utiliser une variante du protocole qui ne passe pas par PEP.
*** J'ai du utiliser un espace de nommage en « jabber.org » plutôt qu'un « goffi.org », comme j'aurais du le faire pour une fonctionnalité expérimentale, pour pouvoir être parsé par le service PubSub de Wokkel.

Le développement de lm a été repris

goffi 20/02/2012, 20:33 GNU-Linux projet Libre

Un petit billet pour vous signaler qu'un de mes scripts, lm que j'avais présenté ici a été repris par un autre développeur: Guillaume Garchery (aka Red Rise).

Ça tombe très bien parce que je n'avais absolument plus le temps de travailler dessus, étant trop pris par Salut à Toi. Red Rise a ajouté de nombreuses fonctionnalités sympas, avec en particulier le support des hash d'OpenSubtitle, la possibilité de télécharger des sous-titres, ou encore la génération d'une page HTML avec lien direct vers les bandes annonces. En plus de ça il a pris soin de la documentation, et il suffit de lire son billet pour s'en rendre compte. Ça fait plaisir de voir un projet continuer à vivre, grâce encore une fois à la philosophie du libre. En plus de ça il a fait les choses bien en me contactant pour être sûr de ne pas faire d'impair.

Ça se passe ici: http://redrises.blogspot.com/2012/02/lm-list-movies-command-line-tool-lm.html

Radio collective (avec vidéo)

goffi 01/02/2012, 23:10 GNU-Linux projet SàT jabber-xmpp Libre

Salut à vous,

j'avais dit que je commencerais à m'amuser sur les fonctionnalités: après le tube par XMPP, voici la radio collective.

Le principe ici est que vous êtes dans un salon de discussion, et que chacun peut mettre une musique à la suite: la même musique est jouée simultanément pour tout le monde, créant ainsi une expérience de radio collective.

Pour l'instant il y a 2 éléments maximum en queue, et dès qu'un élément se libère, n'importe qui peut en ajouter un; mais par la suite on peut imaginer un système plus élaboré pour choisir qui peut mettre la musique (chacun son tour par exemple, selon un système de vote si les musiques passées sont appréciées, ou encore avec un jeu: celui qui répond bien aux questions peut choisir la musique).

On peut ainsi voir arriver des salons à thème: jazz, rock, expérimental, découverte, chansons à texte, etc. Ou alors passer des soirées à faire découvrir des morceaux à vos amis, chacun à tour de rôle, faire des blind test, voire animer des fêtes de manière collective.
Si en plus vous ajoutez cette possibilité sur votre téléphone, vous voilà acteur de votre propre radio pendant vos trajets en train :)

Ci-dessous une petite vidéo qui montre la maquette actuelle fonctionner (Proof of Concept comment disent les anglophones).

À noter que je serai présent au FOSDEM à Bruxelles ce week-end: j'y ferai une démonstration du projet au stand XSF, n'hésitez pas à passer pour en discuter :). Je ferai également une conférence de 15 min dans la devroom XMPP samedi à 18h00, vous pouvez cliquer sur ce lien pour plus de détails.

Comme d'habitude, pour lire la vidéo, vous devez utiliser un butineur récent (Firefox 4 ou le dernier Chromium par exemple).
Vous pouvez aussi utiliser VLC (version >=1.1 uniquement), en allant dans le menu « Média/Ouvrir un flux réseau » et en mettant cette URL: http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_5_radio_collective.webm
Enfin, vous pouvez utiliser mplayer: mplayer "http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_5_radio_collective.webm"

Cette vidéo est sous la licence Creative Common BY-SA

Steven 12/03/2012, 17:01

Sympa ça ! En ajoutant la video et l'aspect temps réel, tu auras cloné Google Hangout , et ça pourra être repris dans des boites en interne, t'auras plus qu'à vendre du support et de l'intégration ;)

gnujeremie 20/03/2012, 15:02

Vraiment top ! Il faudrait que je retente une installe de SàT maintenant que j'ai changé de PC, repartir sur des bases propres (et saines) sera certainement mieux ! En tout cas, ce genre de démo donne vraiment envie :)

Nouvelles rapides

goffi 01/12/2011, 20:34 GNU-Linux projet SàT jabber-xmpp Libre

Salut à tous,

un petit billet très rapide pour vous dire que j'ai fait un entretien pour DLFP: https://linuxfr.org/news/entretien-avec-goffi-d%C3%A9veloppeur-de-s%C3%A0t-client-de-messagerie-instantan%C3%A9e-libre où j'indique notamment que je souhaite lancer un site basé sur libervia avant la fin de l'année (si j'y arrive, ce n'est pas gagné), et que j'ai commencé une interface basée sur Qt.

D'autre part j'ai été aux Journées Du Logiciel Libre à Lyon récemment, et j'y ai fait ma première conférence. L'ambiance était très familiale, ça m'a bien plu, j'espère y retourner l'année prochaine.

Je suis particulièrement débordé en ce moment, c'est assez difficile de trouver du temps à consacrer à SàT, mais j'y arrive tant bien que mal.

À bientôt...

fanita 03/12/2011, 23:33

moi j'ai rien compris à ton interview, à part: "L'électricité et un réseau décent ne sont pas toujours faciles à trouver dans l'outback australien :)", et je trouve que tu te la pètes à mort :)

Shell: pipe you commands out via XMPP with SàT

goffi 07/10/2011, 13:46 projet GNU-Linux technique jabber-xmpp-en Libre SàT

G'day all,

just a short notice to show a feature i'm currently implementing, the hability to pipe out a command line stream via XMMP, using jp, the command line frontend of the "Salut à Toi" project.

The syntax is quite easy: imagine you have 2 people Pierre and Louise talking together. Louise is talking about the last Blender Foundation movie, Sintel, and Pierre is interested, and want to see the trailer Louise is talking about. To do that, he just has to enter the following command:

jp --pipe-in louise | mplayer -


Which mean "I'm waiting for an incoming stream from louise". Louise correspond to the name Pierre gave to its contact louise@example.org, jp do the association.
He could also have used the full jid instead: louise@example.org/Noumea .

In the other side, Louise can pipe out the trailer to Pierre with the following command:

cat sintel_trailer-480p.ogv | jp --pipe-out pierre

Quite easy isn't it ? You don't have to worry about the IP address of your contact, just to know its jid, or to have it in your roster with an easy-to remember name.

Note that jp was already allowing you to pipe out command line result as a XMPP message (to do some ascii art for example ;) ).

If you want to copy a file, the syntax is quite similar:

jp -wg louise

for reception and:

jp -g sintel_trailer-480p.ogv pierre

to send the file. The -g flag means you want to see the progress bar.

The following short video show this in action. It's in french, but you don't really need the comments to understand it.


To play the video, you nead a recent browser (e.g. Firefox 4+ or the last Chromium).
You can also use VLC (>=1.1 only), by using this url as a flux: http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_4_copie_et_pipe.webm

Last but not least, you can use mplayer: mplayer "http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_4_copie_et_pipe.webm"

This video is licensed under Creative Common BY-SA

For the technical side, it's just a modified XEP-0096 . It would be intersting to propose this as a standard to the XSF, but maybe by using jingle transfer instead.

Please not that all of this is really experimental.

I plan to release the next version of "Salut à Toi" soon, stay connected :)

Ligne de commande: envoyez vos tubes (pipes) par XMPP (avec vidéo)

goffi 07/10/2011, 11:38 jabber-xmpp GNU-Linux technique projet Libre planet-libre SàT

Salut à vous,
une nouvelle vidéo, très courte, pour vous montrer 2 choses:
  • la copie (transfert de fichier pour faire plaisir à Neustradamus) qui a été améliorée, vous avez ici un exemple avec jp - le frontal en ligne de commande -. J'avais déjà fait une démo dans la première vidéo, mais cette fois la syntaxe est simplifiée (plus besoin de fournir le jid complet), et sous le capot les protocoles ont été améliorés (gestion de in-band bystreams et gestion du proxy dans Socks5), bien que pas tout à fait fini.
  • j'en ai profité pour ajouter une nouvelle fonctionnalité qui devrait plaire aux amoureux de la ligne de commande: la possibilité d'envoyer la sortie d'un tube (pipe) par XMPP.
    La vidéo montre ça en action en streamant une vidéo par XMPP.

    C'est un test que j'ai fait, et c'est juste une légère modification de la XEP-0096. Ça peut être intéressant d'essayer de standardiser ça, peut être en passant par jingle.
Tout ça est encore très expérimental - et en cours de finition -, tout retour est le bienvenu.

Comme d'habitude, pour lire la vidéo, vous devez utiliser un butineur récent (Firefox 4 ou le dernier Chromium par exemple).
Vous pouvez aussi utiliser VLC (version >=1.1 uniquement), en allant dans le menu « Média/Ouvrir un flux réseau » et en mettant cette URL: http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_4_copie_et_pipe.webm

Enfin, vous pouvez utiliser mplayer: mplayer "http://www.goffi.org/videos/pr%c3%a9sentation_S%c3%a0T_4_copie_et_pipe.webm"

Cette vidéo est sous la licence Creative Common BY-SA

De l'urgence d'agir

goffi 30/09/2011, 13:16 jabber-xmpp projet Libre humeur planet-libre SàT ici et maintenant

À force de discussions, je me rends compte que beaucoup de gens ne comprennent pas forcément l'énergie que je mets dans mon projet (Salut à Toi), ou sentent qu'il y a un problème avec des services comme Facebook (FB), mais ne savent pas exactement quoi. Aussi, je vais expliquer ici certains des principaux problèmes que posent ce dernier.

La centralisation

Un des problèmes majeurs de FB est sa centralisation, c-à-d la concentration des informations qui y sont déposées ou y circulent au sein d'une même entité, et a fortiori une entité privée à but commercial ayant déjà eu des actes et paroles douteux (nous y reviendrons).
La centralisation permet la censure et le contrôle (par FB, pas par vous), facilite l'analyse de données (comprendre la lecture de votre vie), et éventuellement les mesures répressives d'état ou autre suivant le contexte.

Ces problèmes inexistants ? Chine, Iran, Corée du Nord, Turquie...
Ces problèmes inexistants dans des pays « démocratiques » ? La France et l'Australie sont sur la liste des pays sous surveillance [1] quant à liberté sur Internet.
Dites vous bien que le maccarthisme ce n'est pas si loin... Dites vous bien qu'avril 2002 ce n'est pas si loin; dites vous bien que les Lumières et les Droits de l'Homme, ça commence à être un peu trop loin...

Les risques informatiques d'aujourd'hui

Une chose qu'il est peut-être difficile de comprendre, c'est ce qu'on peut faire aujourd'hui avec toutes ces informations. Je vous passe toutes les techniques d'analyses de données de masse [2] qui notamment permettent aux grandes chaînes de bien placer les rayons pour mieux vous faire dépenser, pour se concentrer sur des cas plus évidents.

Tout site qui a un bouton « j'aime » ou « partager » qui pointe sur le site de FB leur transmet des informations, et permet à FB de tracer les sites que vous visitez, même si vous n'êtes pas connecté... ou même si vous n'êtes pas inscrit [3]. Ainsi il peut leur être possible de savoir que vous avez lu tel article, que vous vous intéressez à tel produit, tel livre, que vous regardez telle vidéo.

Imaginez que vous soyez militant, pour une quelconque cause - écologie, politique, syndicat, nucléaire, ou autre - et que cela ne plaise pas forcément aux autorités (d'entreprise, locales, nationales, peu importe). Sachant les ennuis que cela peut vous causer, vous faites bien attention à ce que vous faites sur internet, et notamment vous vous gardez bien de mettre vos opinions politiques, religieuses, ou autre sur votre profil FB.

Maintenant, de fil en aiguille, suivant votre activité, vous rencontrez d'autres militants, que vous ajoutez, et qui eux ne prennent pas toujours les mêmes précautions que vous.

Même à supposer qu'il ne mettent pas de photo de vous pendant une action, ou aucun commentaire du genre « tu viens à la manif demain ? », le simple fait d'être amis avec vous, et que vous en ayez plusieurs peut vous trahir.

D'autre part, les techniques de reconnaissance d'images, et en particulier de visages, ont beaucoup progressé ces dernières années. Une simple photo de vous - anonyme dans la rue - peut vous associer automatiquement [4] à votre compte FB, votre nom, votre adresse IP, vos amis, et toutes les informations que vous avez entrées. Fini les policiers qui parcourent le journal pour savoir qui était dans telle ou telle manifestation.

Sans même aller jusqu'au cas militant, votre vie et vos contacts évoluent, et il peut être ennuyeux de laisser votre historique depuis votre naissance [5] sur des machines que vous ne maîtrisez pas. Quand on pense qu'il y a 10 ans on prenait peur de laisser son numéro de téléphone sur un forum ou au tollé qu'a provoqué le fichier EDVIGE. Et qu'on ne me parle pas du sempiternel «Je n'ai rien à cacher», signe d'un effarant manque de réflexion et d'ouverture. J'espère bien que vous avez des choses à cacher; j'ai des choses à cacher.

Les risques humains

La curiosité, vilain défaut ou pas, est humaine.

Je ne sais pas comment sont gérées les bases de données au sein de l'entreprise, ni combien elle a d'employés, ni qui a accès à quoi, ni comment et pour combien de temps tout est stocké.

Ce que je sais, c'est qu'il y a des risques pour tous les gens ayant accès aux données que vous mettez sur FB, qu'ils soient 10 ou 10000, de les récupérer, les lire et les analyser. Que ce soit un patron, un employé, une entreprise à qui on a vendu ces données, n'importe quelle entité sur le chemin de ces données comme votre fournisseur d'accès à Internet et ceux qui y travaillent, quelqu'un chez qui vous avez consulté votre compte, ou un pirate informatique; ces informations sont consultables d'autant plus facilement qu'elle ne sont pas chiffrées, c'est à dire qu'elle ne sont pas protégées.Cela revient à envoyer des courriers avec une enveloppe ouverte ou à avoir des conversation « intime » au milieu d'une pièce remplie de monde.

Le simple fait de consulter votre compte FB dans une bibliothèque ou sur un hotspot risque de permettre à n'importe quel apprenti pirate d'accéder à tout votre compte. [6]

La publicité

Peut-être êtes vous habitué à voir des trucs qui clignotent partout, que ça ne vous dérange pas pour lire ou regarder des photos/vidéos. Peut-être que vous acceptez que les données que vous envoyez soient diffusées à des entreprises commerciales. Peut-être que vous êtes résolu à vivre avec cette pollution visuelle, parfois sonore, et qui utilise votre connexion internet (la bande passante), que vous pensez que c'est un mal nécessaire. Peut-être que appréciez qu'on vous dise quoi acheter, où sortir, comment vous habiller, quoi manger, bref qu'on pense à votre place...

Moi non.

Le remplacement de l'existant

Jusqu'ici nous avions des moyens simples, efficaces, décentralisés et standards pour communiquer, tel que le courrier électronique ou les abonnements aux sites (flux atom). Ces moyens ont leur défauts, mais sont (étaient ?) répandus, et installables/utilisables par n'importe qui. Aujourd'hui - il s'agit là d'une simple constatation - j'ai le sentiment que ces moyens disparaissent au profit du confort aseptisé de FB. J'ai de plus en plus de mal à joindre mes connaissances - y compris les amis - par courrier électronique classique, qui ne devient plus qu'un outil pour les messages officiels. Ceci contraint à soit créer un compte sous la pression sociale, soit à avoir des difficultés à joindre ses proches.

On assiste purement et simplement à une privatisation du web.

L'uniformisation, la perde d'identité

Au début du web (et de sa démocratisation, dans les années 90), on voyait de nombreux sites de tous les styles, faits parfois avec amour (et plus ou moins bon goût), qui avaient une touche personnelle, un côté créatif.

Aujourd'hui, par soucis de simplification (moins de choses à gérer), d'efficacité (contacts et pubs facilités) ou pour je ne sais quelle autre raison, de plus en plus d'entités, sites, associations, sources d'informations choisissent de faire une page FB. Vous savez, ces pages qui ressemblent à un profil de personne, avec les infos, commentaires, les statistiques, les produits, les pubs; vous savez ces pages qui ressemblent à ces autres pages... toutes les mêmes.
Non seulement elles sont tributaires de ce que leur permet (et change parfois sans préavis) FB, mais surtout elles sont uniformes, identiques.
Depuis mon plus jeune âge j'entends des gens parler avec effroi (et il y a de quoi) du spectre de la pensée unique... Qu'en est-il du site web unique ?

Ce qu'on sait déjà, ce à quoi on peut s'attendre

Je parlais plus haut de paroles et d'actes douteux, revenons y. Il n'est même pas question ici de mentionner les courriels qui auraient circulé par le passé et des déclarations attribuées au (présumé) fondateur de FB, ou à ce qu'on trouve dans les médias (livre, film) parus récemment, mais de ce qui a été officiellement déclaré et assumé.

Début 2010 Mark Zuckerberg déclare « Les gens sont maintenant à l’aise avec l’idée de partager plus d’informations différentes, ils sont aussi plus ouverts et à plus d’internautes […] La norme sociale a évolué depuis quelques temps » et « Les enfants se sont toujours préoccupés du respect de leur vie privée, c’est juste que, pour ces jeunes, la notion de « vie privée » est très différente de ce qu’elle est pour les adultes » [7]

FB cherche ouvertement à devenir un point d'entrée, et un point central du web, notamment avec le protocole « Open Graph ». [8]

En juillet 2011, la directrice marketing déclare la guerre à l'anonymat: «Je pense que l'anonymat sur Internet doit disparaître. Les gens se comportent beaucoup mieux lorsque leur véritable nom est visible. Je pense que les gens se cachent derrière l'anonymat et ont le sentiment de pouvoir dire ce qu'ils veulent derrière des portes closes». [9]

Plusieurs cas de censure ou fermeture sauvage de comptes sont connus. Ainsi ce danois qui s'est vu fermer son compte pour avoir posté « l'Origine du monde » de Gustave Courbet [10], ce groupe « Boycott BP » supprimé (puis rétabli devant la pression) « par accident » [11], ou la désactivation de comptes sous pseudonymes (ou supposés comme tel), comme celle d'un activiste chinois [12].

De la responsabilité de tous

Créer un compte est une chose - j'en ai moi même un [13] -, il y a des tas de raisons valables pour le faire: curiosité, amis qui nous invitent, utilisation des fonctionnalités comme le partage de photos, etc. Le problème est quand on prend la peine d'y réfléchir, qu'on en comprend les dangers, et qu'on continue à souffler sur les braises.

Chaque statut posté, chaque commentaire, chaque photo ajoutée (de vous, ou  - pire - d'une connaissance), chaque bouton « j'aime » ou « partager » cliqué alimente la chose; chaque « site » créé dessus, chaque bouton « j'aime » ou « partager » placé quelque part augmente et légitime leur emprise.
Plus personne ne peut dire désormais qu'il ne « savait pas », c'est maintenant une question de choix et de prise de responsabilité.
Je ne cherche pas ici à avoir un ton accusateur ou condescendant, ayant moi même ma part dans l'histoire, je cherche juste à montrer qu'il y a une prise de conscience à avoir, et ce sans plus attendre. Nous avons une responsabilité vis à vis de nous et de nos proches, et vis à vis des générations à venir.

Bien qu'ici il soit question du site le plus connu, la plupart des réflexions s'appliquent également à d'autres, en particulier Google. Et j'ai fait l'impasse sur de nombreux autres problèmes, comme la géolocalisation. [14]

Quelles sorties ?

Il existe des alternatives, plus ou moins avancées. Salut à Toi en est une, et je souhaite bien entendu son succès, mais il en existe d'autres comme Movim, Jappix, Retroshare, Gnu Social, etc. Et certaines dont je me méfie (Diaspora) mais qui ont le mérite d'être libres (du moins pour l'instant [15]).

Le monde dans lequel nous sommes évolue, et j'ai la nette impression que nous en perdons le contrôle. Notre génération se contente de suivre ce qu'on lui présente, alors que c'est la première fois dans l'Histoire qu'elle a de tels moyens pour le changer, le réinventer; et pour cela je lui en veux un peu. Où est passée cette rage si présente par le passé ? Où est le mouvement de la jeunesse ?

 

 


Mise à jour du 27/07/2015

On me fait remarquer en commentaire que Diaspora a changé : c'est vrai, le projet est devenu communautaire, et les fondateurs l'ont quitté pour un autre projet. Et comme je l'ai dit dès l'annonce du passage de Diaspora à un développement ouvert, je lui fais maintenant beaucoup plus confiance, et pour avoir rencontré certains développeurs, je pense que l'esprit y est. Maintenant il va surtout falloir éviter de faire des îlots séparés, et tout faire pour que les projets libres puissent communiquer les uns avec les autres.

On me demande aussi de mettre un lien vers http://jenairienacacher.fr/, c'est chose faite.


---

Notes et références

[3] Une région d'Allemagne a même fait interdire l'utilisation du bouton « j'aime » pour les sites hébergés sur son territoire: http://www.01net.com/editorial/537828/un-land-allemand-veut-interdire-le-bouton-j-and-039-aime-de-facebook/
[10] http://www.rue89.com/2011/02/17/au-danemark-facebook-censure-lorigine-du-monde-190992?page=4 . Le profil a ensuite été rétabli - sans l'image -, et des pages FB consacrées au tableau ont été supprimées suite à la médiatisation (http://fr.wikipedia.org/wiki/L%27Origine_du_monde#cite_ref-5)
[13] compte créé au début à l'invitation d'une amie, je m'en sers désormais comme point d'observation de l'interface et de l'utilisation qu'ont du réseau mes contacts.
[14] un point de départ pour approfondir: http://fr.wikipedia.org/wiki/Critiques_de_Facebook

Olivier 03/10/2011, 11:30

Si tu te méfies de Diaspora, tu peux aller jeter un coup d'oeil sur Friendika (http://project.friendika.com/), qui essaye de cumuler le meilleur de plusieurs mondes (FB/Twitter, Diaspora, Courriel).

C'est marrant qu'il ne soit jamais cité, alors qu'ils ont été plus rapidement fonctionnels que Diaspora - bien que basés sur des principes relativement similaires - et ce sans levée de fonds. Et qu'accessoirement, les dépendances sont beaucoup plus raisonnables que pour Diasp (juste PHP/Mysql, en gros).


author website

RenardFuyant 04/10/2011, 15:36

Hih hoh, article sympa. Tu parles de plusieurs solutions libres, mon questionnement se situe justement plutôt sur le "comment SàT justifie son existence par rapport aux autres qui sont évoquées". En fait je les connais déjà pour la plupart, mais ce qu'il serait intéressant de discuter serait les avantages/limites de chaque, de voir si l'une d'elles semble avoir trouvé la voie à suivre pour nous solutionner, ou de se demander au contraire si elles sont toutes inadéquates ...
Pour ma part, et je pense que c'est le cas d'une bonne part des personnes qui te suivent via ce blog, je sais déjà pourquoi j'évite Facebook ... Pour ceux/celles qui ne savent encore pas trop pourquoi c'est dérangeant, le "planet auto-hébergement" et le framablog en parlent également de temps en temps.

goffi 04/10/2011, 16:05

goffi's status on Tuesday, 04-Oct-11 14:06:23 UTC

De l'urgence d'agir: http://identi.ca/url/53980375 #xmpp #facebook #SàT...


author website

goffi 04/10/2011, 17:07

goffi's status on Tuesday, 04-Oct-11 15:08:50 UTC

De l'urgence d'agir: http://identi.ca/url/53980375 !xmpp !facebook !SàT...


author website

Goffi 04/10/2011, 19:12

@RenardFuyant: Outre le fait que SàT a été lancé avant la plupart des solutions évoquées (hormis peut être Retroshare et Gnu Social, je ne sais pas exactement quand ils ont été lancés), il ne se place pas tout à fait de la même manière. Déjà l'archi est différente de toutes les autres, ce qui permet notamment l'utilisation de multiples interfaces (web, bureau, console, ligne de commande) avec le même client.
Ensuite, ça ne se veut pas vraiment un « réseau social » (terme que je trouve un peu pompeux), même si ça en offre les possibilités, c'est un client XMPP et à ce titre ça offre des possibilités très larges (transfert de fichier, téléconférence, messagerie sécurisées, jeux, etc.).
Après il y a des avantages/inconvénients au cas par cas, comme les technologies employées, les possibilités, etc.

À noter que je suis en contact avec les auteurs d'autres projets, en particulier Jappix et Movim, et que nous cherchons avant tout à garder la compatibilité (ce qui n'est pas forcément évident vu que le microblogage est seulement en train de se standardiser).

@Olivier: Friendika je connais de nom mais je ne me suis jamais vraiment penché dessus, faudra que je finisse par y jeter un œil :).


author website

Altor 31/10/2011, 18:06

Merci pour ce résumé. Je vais faire passer autour de moi.

RyDroid 27/07/2015, 16:58

Il y a des coquilles :
* "La France et L'Australie sont sur la liste des pays sous surveillance" "L" avant Australie
* "les techniques de reconnaissance d'images, et en particulier de visages, onT beaucoup progressé ces dernièreS années"
* "début 2010 Mark Zuckerberg déclare" C'est un début phrase : le "d" devrait être en majuscule.

"Et qu'on ne me parle pas du sempiternel «Je n'ai rien à cacher», signe d'un effarant manque de réflexion et d'ouverture. J'espère bien que vous avez des choses à cacher; j'ai des choses à cacher." Tu pourrais ajouter une note avec ce lien : http://jenairienacacher.fr/
Tu pourrais aussi peut être mettre à jour la réflexion sur diaspora* qui, de ce que j'en sais, ne montre plus de dangers (failles de débutant, don droit d'auteur, etc).

Goffi 27/07/2015, 17:20

RyDroid: merci c'est corrigé et mis à jour. J'ai aussi supprimé ton deuxième commentaire vu que c'était un doublon.


author website

Salut à Toi: Petit état des lieux en images

goffi 03/08/2011, 22:27 GNU-Linux projet SàT jabber-xmpp Libre

Salut à vous,

Près d'un mois après les RMLL, une petite mise au point sur l'avancement de SàT:

déjà, je n'ai pas encore eu les contributions que j'espérais pour accélerer le développement, il commence à y avoir de plus en plus de personnes qui s'intéressent au projet, mais ça reste timide. Heureusement, j'ai depuis un petit moment maintenant l'aide précieuse de Raiden, un graphiste qui a fait un super boulot sur Libervia (l'interface web), vous pouvez voir le résultat dans les captures ci-dessous, et également sur le jeu de quiz qui est en cours de finalisation. J'espère que nous pourrons continuer à travailler ensemble, et ainsi commencer une véritable équipe autour de SàT (cela semble bien parti pour).

Libervia donc, n'a plus grand chose à voir avec l'interface de démo (qui est toujours en ligne), et est proche d'être utilisable. Son utilisation est fortement basée sur les groupes, notamment au niveau du microblogage, ce qui permet de bien choisir les personnes à qui vous destinez vos messages. Petit détail amusant, depuis la mise en ligne de la démo la firme au moteur de recherche a lancé un (énième) service dit « social », et beaucoup de monde s'est extasié sur les « cercles » qui ne sont rien de plus que les groupes tel qu'ils existent dans XMPP, et qui sont donc utilisés dans Libervia.


libervia_login.png
Cette capture montre l'écran que vous voyez quand vous arrivez sur le site, avec la fenêtre de connexion. Le logo à gauche est le logo du projet.

libervia_discussions.png
Ici vous voyez la page principale, qui n'a plus grand chose à voir avec la dernière version. Encore une fois, c'est grâce au travail de Raiden (qui a également dessiné le logo et les graphismes du jeu de quiz ci-dessous) que nous avons pu en arriver là. Quelques remarques sur cette capture:
  • Kde ne veut pas me capturer le pointeur (bien que je lui ai demandé), il est au dessus de « Nouvelle-Calédonie », c'est pour ça qu'elle est en rouge, ainsi que Louise qui appartient à ce groupe
  • L'interface est comme vous pouvez le voir basée sur des widgets, que vous placez par glisser/déposer: Par exemple pour avoir le widget « famille », vous déplacez le groupe « famille » sous « contacts » à l'emplacement voulu
  • Vous pouvez mettre des widgets sur plusieurs lignes et/ou colonnes, permettant ainsi d'avoir plus de place quand nécessaire, et de vous organiser comme vous voulez. Vous n'êtes plus limités à 3 colonnes comme dans la démo, vous en faites autant que vous voulez (idem pour les lignes bien sûr)
  • la barre du haut est la barre principale pour les entrées, c'est pour cela que vous n'avez pas de barre de saisie en dessous des widgets. Cette barre est redimensionnable à souhait, ce qui peut être utile si vous rédigez un long message
  • le widget « louise@tazar.int » a sa barre de titre en rouge parce qu'il est sélectionné, vos saisies lui sont envoyées. Si vous êtes étourdis, un panneau de couleur vous indique clairement à qui vous envoyez le message pendant la saisie
  • Les onglets en bas permettent d'avoir plusieurs pages de widget, ou un widget demandant plus de place (comme le jeu de Tarot) séparé. L'onglet que l'ont voit ici est un salon de discussions.
Cette interface est fonctionnelle, et sera disponible à la prochaine version d'ici quelques semaines (avant la fin du mois d'août), ou via le dépôt de développement pour les plus aventureux. Il reste cependant quelques problèmes à régler avant de remplacer la démo par un service d'essai, mais ça ne devrait plus tarder (j’espérais le lancer avant fin juillet, maintenant il faut plutôt s'y attendre pour la fin de l'été).

quiz.png
Ici vous voyez l'état actuel du jeu de quiz. Il n'est pas encore fini comme vous pouvez le remarquer, mais est quasi-jouable (sur Wix uniquement pour l'instant, il viendra ensuite sur d'autres frontends dont Libervia).
Tout ceci a été présenté aux RMLL il y a un mois. Suite à une petite pause, le code reprend désormais vie, avec en particulier un nouveau frontend dont j'espère vous parler rapidement, restez en ligne ;)

PS: si vous voulez une idée du fonctionnement, vous pouvez voir le billet et la vidéo postés il y a quelques mois.

EtMortAuxCondiments 04/08/2011, 11:10

Salut, petites impressions très rapides sur ton projet, pour t'aider peut être à attirer l'attention du public.
Je te décris mes impressions en arrivant sur le site.

- Je suis déjà tombé sur un article linuxfr au sujet de SàT
- Je tombe sur ton blog par les RSS de jabberfr.
- Je zieute ton dernier post, un site web, je me dis par habitude... oh, un site de réseau social à la movim ? (fausse impression bien sûr)
- Je zieute les captures, je suis pas emballé ... je vois des bulles de discussion, je suis pas chaud des facebooks & co, je cherche à distinguer les features, je cerne pas l'intérêt du logiciel, trop en alpha, ou qui fait moins bien que ce qui existe déjà (j'utilise gajim, a priori j'ai pas besoin de plus)
- Je comprends que ton truc est un frontend ... en passant par ton wiki sur la page SàT (en mode libriste, je prends la peine de m'intéresser) pour me remémoirer de quoi il en retourne. Je zieute le graph, j'en tire pas trop de conclusion parce qu'il est pas évident à aborder... Du SMTP, SàT qui engloble le tout... houla :p
- je comprends toujours pas bien cette image du quizz dans ton billet de blog, juste un mini-jeu ?
- j'ai pas pris la peine de lire dans le détail, mais voilà à peu près le point où j'en suis, et où je t'écris là.

Donc voilà, je te laisse tirer les conclusions toi-même (j'en ai pas à faire), mais ce que je me dis:
- j'ai pas envie d'installer un truc modulaire (même si c'est bien) qu'est un peu relou à mettre, et qu'a pas bonne gueule (j'ai pas vu de capture d'écran de Wiz)

Bien sûr, ton projet est en développement, et je n'ai justement pas un regard de dev car j'ai pas envie de coder, mais ça me dérange pas de m'intéresser à des projets, juste que faut que je comprenne un minimum et que je voie en quoi c'est intéressant. Of course je n'ai pas assisté à la présentation des RMLL.

Donc essentiellement, je pense que la question se situe autour de la présentation de ton site (c'est un blog dotclear, et c'est pas très beau, mediawiki c'est pratique mais ça n'a pas forcément bonne gueule non plus), de ton projet et de son intérêt.
Après, c'est normal qu'étant en dev, c'est surtout les détails du développement qui sont exposés, et que tes billets témoignent de l'avancée/activité et que c'est chouette.
Ce sont sans doute des défauts qui se corrigent par eux mêmes, mais voilà l'état de ma visite !
En esperant que ça t'ait un peu aidé,

Un Hanonyme content de pouvoir commenter sans s'identifier (j'espère, j'ai pas encore clické...)

Goffi 04/08/2011, 12:50

Salut,

ce blog est mon blog perso, et a priori ceux qui le lisent me suivent (ou peuvent lire dans les archives), et je m'en sers principalement pour exposer des infos techniques ou des mises à jour.

Que tu ne trouves pas une des interfaces à ton goût et que tu considères que ça fait les choses moins bien qu'ailleurs (ce qui est assez osé sans visiblement n'avoir rien essayé) ça reste une affaire de goût personnels. Maintenant, dire les choses comme ça, bof; proposer des choses, dire ce qui ne va pas (il y a un bugzilla disponible pour cela) ce sera autrement plus utile. Pour la petite histoire, les commentaires étaient plutôt élogieux aux RMLL, donc tout le monde ne trouve pas forcément l'interface moche. Bref dit clairement ce que tu n'aimes pas, parce que dire « je n'aime pas les bulles, je n'aime pas FB, gajim me suffit », ça veut juste dire que tu ne vois pas l'intérêt (ou n'a juste pas besoin) du micrologage et des fonctionnalités qui vont autour, ce n'est pas le cas de tout le monde.

Un site beau, euh oui pourquoi pas, mais ça prend du temps de faire un site, et du temps je n'en ai pas. On verra comment la question se pose dans un moment, autrement dit si j'ai un peu d'aide. De toute manière ce sont effectivement des problèmes qui se corrigerons tout seul, pour le moment le projet ne s'adresse pas au grand public, il faut un minimum de recherche pour le comprendre (ce n'est pas forcément facile à expliquer).


author website

Goffi 05/08/2011, 11:53

Bon je viens de relire mon précédent commentaire, et j'ai répondu un peu sèchement.
J'apprécie quand même le temps passé à rédiger ton commentaire, et l'intérêt que tu portes au projet...


author website

Max 06/08/2011, 14:31

Bonjour,

Je suis d'accord sur certains points : Ce n'est pas très clair, il faut lire tous tes billets pour comprendre l'intérêt de SàT. Si tu cherches à obtenir plus de contributions, tu devrais essayer de faire une page claire sur le wiki du projet pour le présenter et insister sur les objectifs à long terme.

Actuellement, il n'y a que ça : "Salut à Toi (ou SàT), est un client XMPP/Jabber, qui a la particularité de proposer plusieurs affichages (frontends), c'est à dire plusieurs types d'interfaces pour l'utilisateur. "

Et du coup, bah je me dis : encore un n-ième client Jabber, j'en vois pas l'intérêt, je verrai plus tard.

Bonne continuation à ton projet !

Goffi 06/08/2011, 14:41

Salut,

Ok, je vais faire un effort de ce côté, à commencer par le wiki... dès que je trouve un peu de temps :)

++


author website