diaspora*

diaspora* (initialement typographié DIASPORA*) est à la fois une application web de réseau social, et le réseau social distribué qui repose sur 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 nouveau serveur forme ainsi, avec l'ensemble des autres serveurs, la fédération diaspora*. L'application de serveur est distribuée sous licence libre (AGPL).

Pour les articles homonymes, voir Diaspora (homonymie).

diaspora*
Informations
Développé par Contributeurs bénévoles
Première version
Dernière version 0.7.15.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

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[2],[3],[4], 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)[5]. 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[6].

Historique

Les fondateurs de Diaspora. De gauche à droite : Max Salzberg, Dan Grippi, Raphael Sofaer et Ilya Zhitomirskiy.

Les développeurs à l'origine du projet — Dan Grippi, Max Salzberg, Raphael Sofaer et Ilya Zhitomirskiy[7] — 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[8]. 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 »[9].

Le projet est annoncé le sur le site web de levée de fonds Kickstarter[10]. 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[11]. Mark Zuckerberg, le fondateur de Facebook, a lui-même fait un don[12], qualifiant diaspora* d'« idée cool »[13].

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[14]. L'application est en effet développée pendant deux ans dans les bureaux de Pivotal à San Francisco[15].

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[16].

Gouvernance

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.[17] 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[18],[19].

Le projet a adopté la plateforme Loomio pour permettre un système démocratique de prise de décision[20].

Principe de fonctionnement

Chaque utilisateur dispose d'une « seed » (graine), correspondant à son profil et à une adressse 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[2].

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.

Objectifs techniques & fonctionnalités

Copie d'écran d'une version alpha de diaspora*

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[2],[21] :

Première distribution (15 septembre 2010)

Copie d'écran de la version finale de la première release de diaspora*
  • Communication complète entre « seeds » (chaque profil des utilisateurs du logiciel).
  • Chiffrement OpenPGP de bout en bout.
  • Plugins permettant de recopier ses données personnelles présentes sur les principaux services Internet, comme Flickr et Twitter, dans le programme diaspora*.
  • Version finale de l'interface de programmation diaspora*.
  • Compatibilité avec le système d'authentification OpenID Connect.
  • Microblogging.
  • Publication du code source de programmation du logiciel sur GitHub.

Seconde distribution

Il n'existe pas de date programmée pour cette seconde version, mais elle devrait comprendre :

  • Des modules permettant de partager plus de données. La structure modulaire de diaspora* doit permettre de l'étendre facilement et de l'ouvrir à différents modèles de communication et de partage d'information entre utilisateurs. L'écriture de modules permettant des communications très diversifiées est donc une étape importante dans la construction du système.
  • La constitution d'un réseau de développeurs pour le logiciel.
  • Une simplification de l'installation et de la configuration d'une nouvelle instance de diaspora*.
[Passage à actualiser]

Au-delà de la deuxième distribution

Par la suite, plusieurs autres évolutions sont envisagées :

  • Utilisation du système de fichiers décentralisé Tahoe-LAFS (en).
  • Utilisation de XMPP, un protocole réseau pour faire communiquer des systèmes décentralisés, actuellement utilisé essentiellement par des systèmes de messagerie instantanée.
  • Utilisation de VoIP pour une communication par la voix sur internet.
  • Transmission de données en peer-to-peer par BitTorrent.
  • Amélioration de l'anonymat des utilisateurs en utilisant le réseau Tor.
  • Mise en place d'un provider OpenID Connect spécifique.
  • Le support d'ActivityPub, permettant des partages de contenus sur les réseaux sociaux décentralisés est en cours de discussion[22], un bounty (en) est ouvert pour son développement,[23].

Technologie

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[14].

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[24].

Avant la reprise en main du projet par la communauté, les contributeurs externes se voyaient demander de signer un contrat[25] 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.

Notes et références

  1. « Release 0.7.15.0 », (consulté le )
  2. « Diaspora* – an open-source, privacy-aware, personally controlled do-it-all web server », sur joindiaspora.com (consulté le ).
  3. « An Overdue Update », sur joindiaspora.com (consulté le ).
  4. « October Update », sur joindiaspora.com (consulté le ).
  5. "Diaspora 0.0.1.0 Released!". The Diaspora Project. Page consultée le 17 mai 2013.
  6. (en) « Fixed schedule for bugfix releases »
  7. Jim Dwyer, « Four Nerds and a Cry to Arms Against Facebook », sur nytimes.com, (consulté le )
  8. « Rencontre des fondateurs à la faculté », FR, Le Figaro.
  9. Eben Moglen, « ISOC-NY Event: Eben Moglen ‘Freedom in the Cloud’ – 2/5/2010 », sur isoc-ny.org, (consulté le ).
  10. « Decentralize the web with Diaspora », sur kickstarter.com, (consulté le ).
  11. « Liste des projets les plus financés », sur kickstarter.com (consulté le ).
  12. « Profil de Mark Zuckerberg sur Kickstarter », sur kickstarter.com, (consulté le ).
  13. Ryan Singel, « Mark Zuckerberg: I Donated to Open Source, Facebook Competitor », sur wired.com, (consulté le ).
  14. Marshall Kirkpatrick, « Only Burning Man Stands Between Diaspora, the Open Source Facebook, and Its Public Launch », sur readwriteweb.com, (consulté le )
  15. (en) « Why You Should Never Use MongoDB », "As a result of their Kickstarter success, the guys left school and came out to San Francisco to start writing code. They ended up in my office. I was working at Pivotal Labs at the time, and one of the guys’ older brothers also worked there, so Pivotal offered them free desk space, internet, and, of course, access to the beer fridge. I worked with official clients during the day, then hung out with them after work and contributed code on weekends." Sarah Mei, employée chez Pivotal et contributrice entre septembre 2010 et février 2012.
  16. (en) « the federation - a statistics hub » (consulté le )
  17. Announcement: Diaspora* Will Now Be A Community Project  ; The Diaspora project ;  ; (article en ligne)
  18. Diaspora* s’ouvre (ou est abandonné ?) à la communauté  ; Philippe Scoffoni ;  ; (article en ligne)
  19. Diaspora est mort  ; Geektionnerd ;  ; (article en ligne)
  20. « diaspora* celebrates one year as a community project », sur blog.diasporafoundation.org, (consulté le )
  21. « Diaspora*: the project », sur joindiaspora.com (consulté le )
  22. « Framatube : fédération et design de PeerTube », sur framablog
  23. (en) « Support ActivityPub · Issue #7422 · diaspora/diaspora », sur GitHub (consulté le ).
  24. « Note de copyright du projet », sur github.com (consulté le )
  25. « Diaspora, or: How to Kill Your "Facebook Killer" Open Source Project Before It Even Launches », sur jarinheit.posterous.com (consulté le )

Annexes

Articles connexes

Liens externes

  • Portail des logiciels libres
  • Portail d’Internet
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.