La sortie de la version stable de Ring 1.0 Liberté, Égalité, Fraternité


21 Juillet 2017 –
Savoir-faire Linux annonce la sortie de la version stable de Ring 1.0 – Liberté, Égalité, Fraternité. Ring est une plateforme de communication libre et universelle, respectant les libertés et la vie privée des utilisateurs. Ring, un paquet GNU officiel depuis octobre 2016, est disponible sur plusieurs plateformes et peut être utilisé pour envoyer des messages texte et faire des appels audio/vidéo de façon confidentielle, sécurisée et fiable.

À propos de Ring

Ring est un système entièrement distribué, basé sur les technologies OpenDHT et Ethereum Blockchain. Il ne dépend pas de serveur ou d’infrastructure centralisée pour fonctionner. De ce fait, aucune base de données centralisée des utilisateurs n’est requise et les données personnelles des utilisateurs ne sont stockées sur aucun serveur.

En outre, Ring repose sur des protocoles sécurisés standards de chiffrement de bout en bout, prévenant le décryptage des communications sur le réseau. Il offre par conséquent un haut niveau de sécurité et de confidentialité.

Fonctionnalités et caractéristiques principales

> Communication Audio/Vidéo HD et Clavardage chiffrée (ICE, SIP, TLS)
> Capacité d’associer plusieurs périphériques à un même compte Ring
> Partage d’écran et support des conférences (Win32, GNU/Linux)
> Support de la blockchain Ethereum comme annuaire public et distribué
> Plateforme distribuée de communication (OpenDHT)
> Support des systèmes GNU/Linux, Windows UWP (Windows 10 et Surface),    Win32 (Windows 7, 8 et 8.1), macOS (10.10+) et Android (4.0+)
> Publié sous license GPLv3+
> Certaines parties de Ring préfigurent un protocole d’Internet
des Objets

Ring: Une innovation sociale impactante et inspirante

Ring est basé sur des technologies de pointe (Ethereum, OpenDHT) et repose sur des principes éthiques strictes qui, ensemble, permettent d’offrir aux utilisateurs un haut niveau de confidentialité, de vie privée et de sécurité. De plus, la connectivité stable et ses fonctionnalités standards employées de façon innovante sur l’ensemble des plateformes, font de Ring une alternative adaptée à tout besoin de communication.

Liens importants
> Télécharger Ring
> Comment contribuer au projet Ring?
> Documentation technique

FOSDEM 2017 : nos impressions

Un amphithéâtre plein à craquer lors de la conférence principale sur les Kubernetes

Cette année, nos envoyés spéciaux au FOSDEM étaient 5. Soizik, Cécile, Clément, Adrien et Andreas nous livrent leurs impressions, leurs coups de cœurs et leurs découvertes.


Soizik Froger, chef de projet

– Plongé : dans mon 1er FOSDEM. Ce fut une super expérience, avec un seul regret : ne pas avoir le don d’ubiquité ! Un sacré bain de techno, de passionnés et une belle leçon d’humilité face au niveau des intervenants !

– Préféré : la conférence du petit «frenchy» Matthieu Totet sur le cycle « graph » : un travail passionné et passionnant sur son module Gephy de suivi en temps réel de l’activité Twitter, ou comment saisir le potentiel fantastique de cette technologie!

– (Presque) pleuré de joie : lors de la séance de Q&A avec le Governing board OpenJDK Java : Mark Reinhold, Mario Torre, Andrew Haley, Georges Saab & Doug Lee (embedded). J’ai volé une photo devant laquelle je me prosternai chaque soir jusqu’au prochain FOSDEM.

Mark Reinhold, Mario Torre, Andrew Haley, Georges Saab & Doug Lee (en téléconférence).

– Décerné : la palme du meilleur orateur pour Christian Thalinger pour son benchmark du Compiler JIT Graal sur les services Twitter car j’ai tout compris et je ne pense pas que cela vienne de moi !

– Découvert : ce qui se cache sous le capot de Ring. On a assisté à un bel échange technique autour de l’architecture et à une immense vague d’enthousiasme pour ce projet ambitieux et modulable ! Bravo à l’équipe !


Cécile Delépine, directrice générale déléguée Europe

– Sauté à pieds joints : dans mon premier FOSDEM. Ce fut une super occasion de rencontrer l’écosystème dans un environnement à la fois détendu et très professionnel.

– Surveillé : l’orchestration de containers avec Kubernetes, la communauté Open Source qui croît plus rapidement en ce moment. Le FOSDEM est l’endroit idéal pour faire de la veille technologique, que je ne fais pas comme une ingénieure mais comme une développeuse d’affaires.

– Fait à savoir : le FOSDEM, c’est aussi l’occasion pour recruter (nous avons investi le job corner avec nos offres au Canada et en France !), faire connaître Savoir-faire Linux aux jeunes, moins jeunes et surtout donner envie aux talents de nous rejoindre. La conférence Ring y a bien sûr contribué mais aussi l’implication de Clément avec LemonLdap et notre présence sur le stand OW2.

– Entendu parler : la conférence Mozilla: What motivates the open source community? par Rina Jensen, dont les conclusions devraient être partagées.

Beaucoup de lecture en perspective !

– Décerné : le Prix spécial pour moi revient à Software Heritage, un projet porté par Roberto Di Cosmo (INRIA, membre du GTLL Systematic). Le code source de nos projets sont un COMMUN, il doit à ce titre être accessible par tous et centralisé dans une archive qui ne dépend pas d’une solution ou d’une autre (Github, Bitbucket…) .

– Dévoré : Je suis repartie avec How Linux works? et je viens de finir le chapitre 2 🙂

Clément Oudot, expert infrastructure et sécurité

– Représenté : le projet LemonLDAP::NG. J’ai pu ainsi échanger avec les communautés FusionDirectory et Spoon. La présence d’un stand OW2 pour la première année démontre que ce consortium n’est pas qu’orienté Entreprise mais est bien également un acteur communautaire.

– Enchanté : par l’affluence. Entre le kiosque Perl et la devroom bien fournie le dimanche, c’est un plaisir de sentir que ce langage attire encore du monde !

– Croisé : beaucoup de connaissances travaillant dans d’autres communautés, comme Framasoft, XMPP, OpenStack, VLC, PHP, etc.

Notre équipe France au kiosque OW2 : Clément Oudot (c), Cécile Delépine et Soizik Froger
Sous le capot de Ring avec Adrien Béraud et Andreas Traczyk

Adrien Béraud, ingénieur système projet Ring

– Excité : par ce vivier d’échanges enrichissants. Ce fut très excitant, émulant. Nous avons rencontré plein de gens avec des projets intéressants. Il y avait tellement de monde, près 8000 personnes sur les deux jours.

– Marqué : par l’intérêt du public lors de la conférence de Ring l’année dernière, les gens découvraient Ring. Cette année, ils cherchaient à en savoir plus sur la technologie autour du logiciel. D’où des échanges très intéressants dans une salle trop petite pour accueillir tout ce monde intéressé par notre solution. On observe une demande croissante pour les systèmes de communication distribués.

– Écouté : Alok Anand, qui a présenté le module dédié à Ring pour Telepathy. Il l’a développé dans le cadre de Google Summer of Code, avec l’appui de Savoir-faire Linux.

Andreas Traczyk, développeur projet Ring

– Débarqué : à mon premier FOSDEM. Venant de Montréal, j’ai été servi. Cela a dépassé mes attentes. Il y avait vraiment beaucoup de participants, de gens brillants, ce fut assez intense!

Il y avait du monde à la présentation de Ring !

– Impressionné : par la participation à la conférence de Ring. Malgré le peu de temps imparti, nous avons été bien reçus, les questions du public ont été stimulantes, en sachant que d’autres personnes n’ont pas pu assister à notre présentation, faute de place ! J’espère que nous aurons plus de temps l’année prochaine.

– Regretté : de ne pas avoir eu assez de temps pour parler de Ring !

– Assisté : à la très bonne présentation de Daniel Pocock sur le socio-financement (crowdfounding) de projets dans notre domaine.

 

Ring parmi les projets hautement prioritaires de la Free Software Foundation

 

Intégré dans le projet GNU depuis l’automne dernier, Ring fait désormais partie des projets prioritaires de la FSF dans sa liste de High Priority Projects List (HPPL) mise à jour en janvier dernier.

En mettant l’accent sur ces projets open source, la Free Software Foundation répond à sa vocation : accroître la notoriété et l’usage des logiciels libres parmi les utilisateurs des outils informatiques quels qu’ils soient. Depuis 2005, elle dresse une liste d’applications en développement à destination des contributeurs, bénévoles, compagnies et autres militants du Logiciel Libre. Sans leur aide précieuse, ces projets ne pourraient atteindre leur plein potentiel.

De nombreux enjeux des technologies libres sont abordés : la décentralisation, l’accessibilité, la sécurité, les applications mobiles et les technologies liées aux clavardages en direct avec messageries. C’est dans cette catégorie que Ring a été placé.

Aux yeux de la Free Software Foundation, le contexte actuel de surveillance généralisée exige que l’on s’attelle à une tâche fondamentale : trouver des solutions alternatives et sécuritaires à des logiciels propriétaires.

La présence de Ring dans cette liste est très importante pour nous. Libre, décentralisé, sécurisé et universel, c’est un logiciel qui s’intègre parfaitement à la philosophie de la Free Software Foundation. Basé sur un développement collaboratif, il veille à offrir une meilleure protection de la confidentialité et de la vie privée des utilisateurs lors de communication à distance (clavardage, messagerie, appel audio et vidéo).

Un code partagé et enseigné

En effet, notre équipe de développement travaille de concert avec des contributeurs extérieurs ainsi que les universités partenaires. Déjà objet d’étude pour les étudiants de premier cycle à l’École Polytechnique de Montréal, Ring sera au programme des élèves de 3e année, autour de nouvelles fonctionnalités.

Dans le même esprit, il faut rappeler l’implication des étudiants de maîtrise de l’Université du Québec à Montréal dans la sécurisation des protocoles Distributed Hashed Table.

Dès lors, l’appui de la Free Software Foundation nous encourage à faire partager nos avancements sur ce projet de logiciel libre, universel, distribué pair à pair et sûr, constituant une pierre dans l’édification d’un Internet décentralisé et libre.

Tuleap, un outil de choix pour développer Ring

En novembre dernier, dans le cadre du «Paris Open Source Summit», nos développeurs de Ring ont rencontré l’équipe d’Enalean, qui développe l’outil open source Tuleap, utilisé pour le développement de Ring. Voici en quelques paragraphes notre discussion à bâtons rompus avec Manon Midy, membre de l’équipe Tuleap.

Je m’appelle Guillaume Roguez, directeur technique du projet Ring, au siège montréalais de Savoir-faire Linux, une entreprise fournissant des solutions en systèmes d’informations, spécialisée dans le déploiement, la personnalisation, l’intégration et l’élaboration de stratégies pour l’implantation des meilleurs outils et projets en logiciels libres et open source, afin de répondre aux besoins de nos clients. Notre objectif est d’être le premier acteur des technologies développées, étendues, supportées ou connectées par les logiciels libres et open source. Pour y parvenir, nous nous devons d’être sans cesse créatifs, innovateurs et garder notre acuité en matière de Recherche et Développement. Ring est l’un de nos projets maison en R&D.

Rapidement, Ring est un logiciel de communication libre, distribué et universel, disponible sous la licence GNU GPL v3. Les utilisateurs de Ring peuvent communiquer de différentes façons, en l’utilisant comme un téléphone (VoIP), un outil de partage de médias (audio et vidéo), une messagerie, ou encore comme un socle de communication pour les objets connectés. Ring peut être alors vu comme une alternative libre et open source à Skype.

En tant que responsable du développement, je gère tous les aspects du projet Ring et je coordonne les tâches imparties à chaque membre de l’équipe. Par ailleurs, je vais à la rencontre des contributeurs en faisant des présentations publiques dans les universités de Montréal (Polytechnique, Université du Québec à Montréal, McGill University, École de Technologie Supérieure etc.). Ring est aussi un objet de recherche, un laboratoire permanent pour les étudiants de maîtrise à Montréal. Ils ont eu la possibilité de parfaire leurs habilités en programmation tout en contribuant au développement de Ring (le programme Google Summer of Code en est un exemple probant). En fait, aux yeux de Savoir-faire Linux, il est important de travailler avec des enseignants-chercheurs et leurs étudiants pour étendre la communauté autour du projet.

Pour continuer, je voudrais profiter de cet article pour parler brièvement de l’environnement technique – Tuleap- sur lequel nous avons choisi de nous reposer. Tout simplement, Tuleap est la plateforme de développement de projet logiciel que je recommande. Il facilite notre travail collaboratif, il nous fait gagner énormément de temps et il nous aide dans la gestion de nos activités quotidiennes.

De Redmine à Tuleap, défis et d’opportunités

Au début du projet Ring, nous utilisions la plateforme Redmine, commune à tous les projets chez Savoir-faire Linux. Toutefois, au fur et à mesure de son utilisation, nous nous sommes rendus compte que nous faisions fausse route. Redmine a une conception assez rigide, qui ne peut permettre aux utilisateurs d’adapter facilement les champs de suivi pour des usages spécifiques. D’une manière générale, Redmine est assez limité et restrictif. Par exemple, faire des modifications dans le système de suivi requiert plusieurs manipulations. Une fois terminées, on ne peut pas facilement revenir en arrière. Or, j’ai toujours voulu quelque chose de plus souple pour mon équipe.

À mes yeux, GitHub est trop simplifié, et plusieurs fonctionnalités manquent à l’appel. Cet outil, est, encore une fois, trop rigide. Cependant, du point de vue du design, c’est alléchant, mais c’est trop cher pour des projets à long terme. C’est peut-être le bon outil pour des projets de petite et moyenne taille. Néanmoins le design restrictif de GitHub limite la marge de manœuvre d’une équipe travaillant sous un mode Agile. Si on doit adapter notre manière de travailler à l’outil, ce n’est pas la bonne option pour nous.
Avec Tuleap c’est différent. L’outil est bien plus souple tout en permettant de guider les utilisateurs avec un flux de travail défini. Par exemple, si on utilise Git dans Tuleap, il y a la possibilité d’imposer une procédure de développement de façon à ce que les développeurs respectent des étapes importantes et apprennent les bonnes pratiques. Par exemple, nous pouvons imposer aux messages de transaction (Commit messages) de contenir une référence aux incidents soumis dans Tuleap. Ainsi, on peut avoir une vue d’ensemble du cycle de vie du développement et suivre précisément les anomalies. Certains peuvent y voir une limitation, mais en réalité, cette possibilité permet aux membres de l’équipe d’ajuster leurs efforts dans la bonne direction et respecter l’esprit du projet. Tuleap n’est pas un outil fermé sur lui-même. Bien au contraire, grâce au design qui le sous-tend – acceptant beaucoup de greffons – cet outil donne à l’équipe de développement la possibilité d’interagir avec d’autres logiciels bien connus comme Jenkins et Gerrit.

Les avantages étaient clairs dès le départ pour Jérôme Ouffela, notre directeur technique. Il a proposé l’adoption de Tuleap, après avoir exposé ses raisons. Honnêtement, quand on cherche à changer fondamentalement les méthodes de travail d’une équipe, il faut s’attendre à quelques frictions. Mais, au regard de nos expériences passées, le niveau de flexibilité des collaborateurs augmente lentement mais sûrement, en suivant la courbe d’apprentissage. Il y a toujours un prix à payer pour un quelconque changement.

Parmi les autres défis auxquels nous avons du faire face, il y a eu la question d’une documentation manquante. Cet accroc a laissé quelques traces, comme la difficulté de mettre en place des procédures de suivis et la lenteur des réparations de bogues subséquente. Fort heureusement, l’équipe de développement de Tuleap a vite répondu à nos difficultés. Ils nous ont aidés à configurer un outil sur mesure et ainsi bénéficier d’une flexibilité nous permettant d’ajouter et/ou changer nos mesures de suivi. Tuleap a cette particularité : évoluer de manière qualitative avec le projet de l’utilisateur. Plus nous utilisions sa flexibilité et sa capacité d’évoluer, plus cela nous a conforté dans notre choix à l ‘égard de Tuleap.

Enfin, le dernier élément décisif et non des moindres, Tuleap est un outil open source porté par une communauté de développeurs très dynamique et riche. Par exemple, Tuleap a sorti au début du mois de janvier une nouvelle version 9.3, jetant les premières bases du nouveau langage de requêtes du système de suivi. Les développeurs pourront ainsi faire des recherches avancées dans les procédures de suivi de Tuleap, intégrant les caractères « AND », « OR » and « () ». Nous pourrons être en mesure d’obtenir tous les tickets correspondant à des requêtes complexes du type (summary = “tracker” OR summary = “query”) AND submission = “language”.

A mon avis, une visite sur le site de Tuleap vaut le détour :
a) pour ses tutoriels faciles à comprendre , qu’ils sont en vidéo ou en texte tout simplement,
b) pour l’accès à une somme importante d’informations sur les nouvelles fonctionnalités et les bogues réparés et clairement identifiables et
c) pour discuter avec la communauté Tuleap, et ainsi entamer une conversation très technique.

Tuleap, une utilisation Agile

Pour développer le logiciel Ring, nous suivons la méthodologie Agile. En utilisant l’environnement de planification Scrum de Tuleap, nous pouvons ainsi suivre nos versions actuelles et à venir et avoir un œil sur les bogues, les améliorations, le wiki et les forums de manière efficace. Et nous l’avons associé au système de revue de codes pour gérer les correctifs.

Au jour le jour, il y a une dizaine de développeurs de Savoir-faire Linux qui utilisent Tuleap pour développer Ring. J’en fais partie, avec plusieurs chapeaux, directeur technique du projet, développeur, Scrum master. À cette équipe s’ajoutent des développeurs motivés, d’autres membres de la communauté comme ceux maintenant la plateforme, les utilisateurs, les abonnés etc. Tout ce beau monde réparti sur la planète s’aide pour contribuer à ce projet innovant communautaire qu’est Ring.


Des nouveautés prometteuses

Si nous pouvions changer quelque chose sur Tuleap,  il s’agirait peut-être de l’interface utilisateur (UI). Actuellement, pour réaliser ce qui est programmé, il y a beaucoup trop de clics à faire. De plus, cette interface (UI) est assez complexe. Aux dires de Manon, l’équipe réfléchit déjà à une refonte complète. Ce qui est une bonne nouvelle pour nous. Si l’on se fie aux dernières versions et les mises-à-jour (9.2 et 9.3 ) cela semble être le cas. Nous croyons que Tuleap est un projet très prometteur pour des générations de développeurs à venir.

Ring sur UWP : genèse d’un défi technique

illustration-wup-rinLa version beta 2 de Ring est maintenant disponible sur la plateforme universelle Windows (Universal Windows Platform, UWP). Il s’agit non seulement d’un nouveau jalon pour Ring, récemment devenu un projet GNU, mais aussi d’une prouesse technique de la part de notre équipe de développeurs.

La sortie de cette version beta 2 est le fruit d’un développement collaboratif entre notre équipe dédiée chez Savoir-faire Linux et la communauté de contributeurs à travers le monde. En développement continu, Ring rappelons-le, une plate-forme inédite de communication texte, audio et vidéo sécurisée et distribué a besoin d’utilisateurs, passionnés ou simplement curieux pour tester sa dernière version et contribuer à son amélioration.  Testez Ring, un projet libre et universel et faites-nous part de vos impressions !

Devenu paquet GNU depuis novembre 2016, Ring s’est toujours inscrit dans la philosophie du libre, tant dans sa finalité, un accès pour tous, que dans son développement, où chaque contribution compte. Cette dimension universelle, avec les aspects distinctifs de Ring comme la décentralisation via l’OpenDHT continue à faire son chemin dans les logiciels de communication et se devait naturellement d’être disponible sur la plateforme UWP.
Avec la mise en place de cette plateforme, l’objectif de Microsoft est simple : unifier le développement d’applications sur tous les types de terminaux que ce soient des PC, tablettes, mobiles, consoles de jeux ou encore objets connectés. Notre équipe responsable du développement de Ring y a vu une aubaine en touchant un maximum d’utilisateurs. « Les possibilités sont immenses. Ring pourrait être utilisé sur les téléphones Windows, les ordinateurs portables Surfaces, les tablettes et les consoles de jeu comme la Xbox », confirme Guillaume Roguez, directeur du développement Ring au sein de Savoir-faire Linux.

D’un système fermé vers une ingénierie logicielle ouverte
N’étant pas habitué des environnements Windows, le défi fut de taille pour notre équipe Ring. C’est ici qu’entrent en scène les développeurs Andréas Traczyk et Nicolas Jäger, qui ont tous deux ont mené le projet Ring sur UWP, de la phase d’idéation jusqu’au lancement actuel.
Tout commence au premier trimestre 2016, avec une première étape de prospection et d’étude de faisabilité. Andréas Traczyk s’est attelé à cette tâche, en portant le code de Ring déjà existant sur Windows natif.
Au fur et à mesure, une idée a germé : pourquoi ne pas utiliser la version native win32 déjà créée pour l’adapter de manière significative à l’UWP ?

_mg_9963

Coder en C++/CX
Le défi est de taille. Alors que la majorité des développeurs Windows travaille en C#, nos deux développeurs ont choisi le C++/ CX. Et ce pour une première raison, le daemon est en C++ : « il faudrait wrapper pour le passer en C# » explique Andréas Traczy. La seconde raison est d’ordre pragmatique selon Nicolas Jäger : « Ring est avant tout un logiciel multimédia, qui offre de la vidéo, de l’audio, avec un réseau en temps réel, et le langage C++ permet une optimisation des ressources ». Un choix pratique appuyé par Cyrille Béraud, président de Savoir-faire Linux, soucieux « de maintenir la performance de l’application ».
Pour des développeurs dont le cœur de métier est le code sous Linux, il a fallu aller hors des sentiers battus, sortir de leur zone de confort. « Il faut aimer les choses compliquées » sourit Nicolas Jäger, « d’autant que l’on ne s’est pas seulement occupé d’UI (User Interface), mais aussi de parties plus fondamentales en matière de développement, tout simplement parce qu’elles n’existaient pas avant ».
Aux yeux de Guillaume Roguez, qui chapeaute le projet Ring, l’expérience est positive, car « on a surmonté les obstacles, dont le premier fut colossal : partir quasiment de zéro. On a démontré avec succès qu’on peut faire du libre dans l’univers Windows ».

Faire du libre, c’est ce que nous attachons à faire à travers Ring. Ce projet bénéficie des contributions d’universités montréalaises, comme Polytechnique Montréal, l’École de Technologie Supérieure (ÉTS) ou encore l’Université du Québec à Montréal (UQAM). D’ailleurs, au sein de cette dernière, le professeur Alexandre Blondin Massé, entouré de ses étudiants de 2e et 3e cycle, planche sur la consolidation des données ainsi que sur la table de hachage distribuée OpenDHT. Cette question de sécurité et de confidentialité présente dans Ring a suscité par ailleurs un intérêt croissant chez les spécialistes de la cybersécurité, et ce à l’échelle mondiale.
Partenaire de la Free Software Foundation et la Linux Foundation, Savoir-faire Linux est un membre actif de la communauté du libre, et travaille à rendre plus accessibles les ressources, à créer et à diffuser les valeurs d’usage. En tant que producteurs de biens communs, nous revendiquons le droit de chacun à avoir un accès libre au savoir, ainsi qu’à des ressources libres et universelles.
Aussi l’arrivée de Ring sur UWP est-elle importante, car elle participe de cet esprit libre.