Développé par | Contributeurs bénévoles |
---|---|
Première version | |
Dernière version | 0.9.0.0 ()[1] |
Dépôt | github.com/diaspora/diaspora |
État du projet | En développement |
Écrit en | Ruby on Rails |
Type | Réseau social distribué |
Politique de distribution | Gratuit |
Licence | GNU Affero General Public License |
Site web | diasporafoundation.org |
diaspora* (initialement typographié DIASPORA*) désigne à la fois une application web de réseautage social, et le réseau social distribué sur lequel repose cette application. Chaque utilisateur du réseau peut choisir de s'inscrire sur un des serveurs (appelés pods) diaspora* déjà existants ou de créer le sien. Ce serveur forme ainsi, avec l'ensemble des autres serveurs, la fédération diaspora*. Le logiciel permettant de faire fonctionner des serveurs est distribuée sous licence libre (AGPL).
Le réseau social n'est la propriété d'aucune personne unique ni d'entité unique, le préservant ainsi d'être sujet à rachat par une grande entreprise ou à de la publicité. Selon son développeur (2011) : "notre design sous forme de réseau distribué signifie qu'aucune grande enterprise ne contrôlera jamais Diaspora (« "our distributed design means no big corporation will ever control Diaspora. »[2]).
Les développeurs à l'origine du projet — Dan Grippi, Max Salzberg, Raphael Sofaer et Ilya Zhitomirskiy[3] — se sont rencontrés au club informatique de l'Institut Courant des mathématiques de l’Université de New York où ils travaillaient sur un projet d'imprimante en 3D[4]. Ils ont indiqué avoir eu l'idée de créer diaspora* après une conférence d'Eben Moglen à l'Internet Society à New York en , décrivant les réseaux sociaux existants, centralisés et propriétaires, comme étant de l'« espionnage gratuit »[5].
Le projet est annoncé le sur le site web de levée de fonds Kickstarter[6]. Les promoteurs du projet annoncent vouloir rassembler 10 000 dollars pour accomplir leur projet. Cette somme est atteinte en seulement 12 jours. À la fin de la levée, le projet récolte un total de 200 641,84 dollars, ce qui en fait, à ce moment, la plus fructueuse levée de fonds sur Kickstarter[7]. Mark Zuckerberg, le fondateur de Facebook, a lui-même fait un don[8], qualifiant diaspora* d'« idée cool »[9].
La première version publique du code source du logiciel a été diffusée le 15 septembre 2010 (en version alpha), et le premier déploiement public initialement prévu pour octobre 2010[10],[11],[12], a été repoussé vers la fin 2012. La première version publique du réseau est lancée en octobre 2012 sous le numéro de version 0.0.1.0 (numérotation qui remplace les notations alpha et bêta utilisées auparavant)[13]. L'application connaît depuis des mises à jour régulières. Depuis la version 0.5.0.0, la communauté produit des mises à jour toutes les six semaines[14].
Le développement de diaspora* a eu le soutien de Pivotal Labs (en), une société spécialisée dans le domaine du développement d'applications sociales[15]. L'application est en effet développée pendant deux ans dans les bureaux de Pivotal à San Francisco[16].
En novembre 2016, le réseau compte plusieurs centaines de milliers d'utilisateurs répartis sur 342 pods. Framasphère et mondiaspora.net sont les pods francophones les plus importants de diaspora* avec, respectivement, 31 196 et 5 123 utilisateurs actifs[17].
Dès le début en 2010, le projet est gouverné par les quatre fondateurs d'origine. Le 27 août 2012, les fondateurs annoncent sur le blog du projet l’arrêt de la gouvernance du projet par Diaspora Inc.[18] et le projet devient communautaire. Afin de gérer les droits la fondation diaspora* est créée, chapeautée par la FSSN (Free Software Support Network). Cette annonce n'est pas sans soulever quelques questions, certains se demandent si elle n'est pas un simple aveu d'échec de la part des créateurs du projet[19],[20].
Le projet a adopté la plateforme Loomio pour permettre un système démocratique de prise de décision[21].
Chaque utilisateur dispose d'une « seed » (graine), correspondant à son profil et à une adresse URL. Chaque personne peut accéder à ce profil soit directement, auquel cas il accède uniquement aux informations publiques, soit en indiquant une clé d'ami (« friendly key ») qui permet d'obtenir plus d'informations que le profil public. Dans ce cas, les informations sont chiffrées en utilisant la clé publique de la personne interrogeant le système. Toute personne ne possédant pas la clé privée ne pourra donc pas lire le résultat de la requête[10].
Exemple :
Admettons que le profil de Sophie se trouve à l'adresse http://www.sophie.com/. Elle a autorisé Pierre à être son ami. Pour cela, il a dû fournir sa clé publique OpenPGP au système, qui lui a fourni la clé d'ami 6389 en échange. Il peut accéder au profil public de Sophie à l'adresse http://www.sophie.com/, mais il obtiendra plus d'informations, étant un ami, à l'adresse http://www.sophie.com/6389. Il verra par exemple les photos que Sophie est prête à montrer à ses amis à l'adresse http://www.sophie.com/6389/photos. Les informations en réponse à la requête de Pierre sont chiffrées par GPG en utilisant la clé publique de Pierre, et donc lui seul pourra les déchiffrer à l'aide de sa clé privée.
Les quatre créateurs envisagent de proposer[Passage à actualiser] des serveurs sous diaspora* permettant d'héberger des profils, de manière analogue à ce que fait Wordpress pour les blogs, ce qui permettra aux personnes n'ayant pas la possibilité d'installer leur propre instance de diaspora* sur un serveur de créer malgré tout un compte.
Le projet diaspora* a indiqué dès 2010 le plan de développement permettant de connaître les objectifs et notamment les futures fonctionnalités du logiciel[10],[22] :
Par la suite, plusieurs autres évolutions sont envisagées :
diaspora* est écrit en Ruby. Il utilise notamment le framework Ruby on Rails. La persistance des données fut un temps assuré par MongoDB, puis le projet a migré pour supporter MySql, MariaDB et PostgreSQL.
Le chiffrement des données échangées entre les utilisateurs est assuré par GNU Privacy Guard (GPG).
Des API pour interagir avec Facebook, Tumblr, Twitter et Wordpress sont fournies.
diaspora* utilise le protocole Ostatus, permettant de standardiser les communications entre des sites web se mettant mutuellement à jour[15].
Certains composants de diaspora* comme Rails et JQuery sont sujets à la licence MIT/X11. Le code spécifique au projet est distribué sous la licence AGPL v3[25].
Avant la reprise en main du projet par la communauté, les contributeurs externes se voyaient demander de signer un contrat[26] avec la société Diaspora Inc. leur fournissant la copropriété de ces contributions. Elle seule avait donc la possibilité de redistribuer le logiciel sous une autre licence.