MyPads point de la semaine 17

Comme annoncé la semaine dernière, c’est désormais un point hebdomadaire qui émaillera le travail autour de MyPads. Cette semaine n’aura pas été de tout repos et les avancées visibles sont malheureusement peu nombreuses. Explications.


img-mypads-ulule2

Les travaux

La mise en place des tests fonctionnels client, simulant une navigation réelle, a occupé les premiers jours de développement. Ensuite MyPads a subi quelques modifications pour fonctionner avec la version 4 d’Express, le cadre de développement sur lequel repose Etherpad et donc MyPads. Cette migration a été initiée par le tout premier contributeur externe au plugin, et a été rendue nécessaire par la migration d’Etherpad une semaine plus tôt.

Cette migration a été l’occasion de tester à nouveau la compatibilité de MyPads avec Eherpad. Cela peut sembler étonnant, mais MyPads est développé de manière autonome vis à vis d’Etherpad et est régulièrement testé en tant que plugin Etherpad, pour les raisons suivantes :

  • accélérer le développement et éviter de devoir relancer Etherpad voire réinstaller le plugin à chaque modification;
  • permettre les tests unitaires et fonctionnels serveur, très difficile sinon à partir d’un plugin Etherpad, isoler une base de tests du reste de l’instance;
  • conserver une forme d’indépendance vis à vis du cœur d’Etherpad : afin de ne pas nécessiter des modifications d’Etherpad lui-même et de limiter les régressions en cas de changements internes de ce dernier.

Malheureusement le fonctionnement de MyPads s’est révélé erratique : parfois correct, parfois non. Pour les techniciens, seules les méthodes GET et HEAD sont autorisées et toute autre méthode HTTP est refusée. Le problème, nouveau, est intimement lié au logiciel intermédiaire (middleware) yajsml, lequel est employé par Etherpad afin d’optimiser les requêtes des fichiers dits statiques (scripts, images, styles etc). En théorie, les requêtes prises en charge par MyPads ne devraient pas être impactées par ce logiciel intermédiaire, mais pour une raison mal comprise, elles le sont parfois.

Le problème, c’est que MyPads fonctionne autour d’une interface de programmation standard, une API HTTP REST, sur laquelle se connecte le client Web, et qui permettra à d’autres clients ou à des outils tiers de voir le jour. La résolution du soucis n’est pas aisée : l’anomalie intervient de manière aléatoire. Peu de plugins sont touchés car la plupart ne définissent pas leurs propres routes HTTP. Même si yajsml est modifié pour résoudre le soucis, il faudra que la fondation Etherpad accepte le patch et l’intègre avant de pouvoir retrouver une fonctionnement correct de MyPads. Or, il semble que yajsml sera bientôt remplacé par une technologie plus standard.

D’autres résolutions ont été envisagées, du fait de la situation de yajsml, et entre autres :

  1. Substituer, comme certains plugins le font,  l’API HTTP REST par une API basée sur socket.io, la technologie employée par Etherpad pour la collaboration en temps réel et qui repose en premier lieu sur le standard WebSocket. Cette voie a été expérimentée cette semaine mais représente une charge considérable de travail et la réécriture de nombreux modules. De plus, il ne s’agit pas d’un remplacement propre : MyPads y perd une méthode de communication plus standard ainsi que son système d’authentification, lequel avait été choisi pour permettre à terme une connexion depuis des comptes externes ou encore un annuaire LDAP, OpenID etc
  2. Faire de MyPads une application indépendante, de fait non plus un plugin, qui gèrerait les accès des utilisateurs aux pads en fonction des groupes définis. Le problème de cette solution est de complexifier l’installation de MyPads et de risquer des incompatibilités avec certains autres plugins. Aussi, nous sortirions de fait du cadre du cahier des charges initial.

Il a été décidé que la dernière piste ne serait à employer qu’en cas de dernier recours et c’est la migration vers socket.io qui a été d’abord privilégiée. Néanmoins, à la vue du travail nécessaire et surtout des pertes fonctionnelles que cela risque d’amener, cette solution ne sera pas poursuivie.

La semaine prochaine

Le travail va reprendre sur la version HTTP REST standard qui a été développée jusqu’ici. Il est prévu :

  • qu’étant donné que la suppression du yajsml n’arrivera qu’à un terme inconnu, il faudra dépister l’anomalie et la résoudre, ou au moins proposer un contournement simple;
  • de poursuivre le développement, moins actif que prévu cette semaine, avec notamment
    • le passage d’une authentification en propre classique vers JSON Web Token, dont le travail a commencé cette semaine avec le test de socket.io, de manière à renforcer la sécurité des échanges de données chiffrées entre serveur et client;
    • les groupes et pads, évidemment.

Rendez-vous jeudi prochain pour le point de la semaine 18.

MyPads week 17

As announced last week, we now give some news about MyPads development weekly. Last couple of days haven’t been picnic and few enhancements are visible. Explanations below.

img-mypads-ulule2

Work

Frontend functional testing setup, aiming to simulate real navigation, has filled the first days. Then MyPads has been updated to work with Express version 4. Express is the framework which powers Etherpad and so MyPads. This migration has been introduced by the very first MyPads external contributor, and was necessary because of the Etherpad migration a week earlier.

These modifications were a good moment to test MyPads’compatibility towards Eherpad. That can be surprising but MyPads has been programmed independently from Etherpad and is regularly tested as an Etherpad plugin, here’s why :

  • speeding up the development and avoiding Etherpad reboot or plugin re-installation at each update;
  • allowing unit and functional server testing, quite hard from an Etherpad plugin, and isolate a test database from the whole node;
  • retaining a distance regarding Etherpad core in order to avoid need of Etherpad updates and limit regressions in case of internal modifications of it.

Sadly MyPads behavior becomes erratic : sometimes correct, sometimes buggy. For technicians : only GET and HEAD HTTP verbs were allowed and all other method has been forbidden. This problem seems to be linked to the yajsml middleware, used by Etherpad in order to optimize static files requests (scripts, images, styles etc). In theory, MyPads handled routes should not be impacted by this middleware, but for an misunderstood reason, they sometimes are.

Problem is that MyPads is based on a standard home-defined HTTP REST API, which the Web client connects to. This interface may allow other clients and third party tools to be created more easily. Debugging the problem is not an easy task, due to the randomness of the behavior. Few plugins should be concerned because most of them don’t define their own routes. Even if yajsml is updated to fix the issue, the Etherpad developers will have to accept the patch and merge it before we have MyPads working correctly. Now it seems that yajsml will be soon replaced by a more standard technology.

Others resolutions have been considered, regarding to yajsml situation :

  1. Replace, as others plugins do, the HTTP REST API by a socket.io one. socket.io is the technology used by Etherpad for realtime collaboration, that use as a first class citizen the WebSocket protocol. This approach has been tried this week but requires a considerable amount of work and many modules rewriting. Moreover, it’s not a proper replacement : MyPads loses its more standard communication method but in addition its authentication system, which have been chosen to allow, later, connection through external accounts,  LDAP directory, OpenID etc
  2. Move MyPads from a plugin to a standalone application, which handle user access according to created groups and pads. Problem with this solution : harden the MyPads installation, risks of incompatibilities with some other plugins. Also, making a standalone app won’t conform to the initial specifications.

We have decided to follow the last proposition only as a last resort. The migration to socket.io has been preferred but, with the light of required work and moreover functional looses, it won’t continue.

Next week

Work will be resumed on the HTTP REST version, the one developed until now. We expect :

  • because yajsml removal won’t happen before an unknown time, it will be important to find and fix the bug, or at least to provide a simple workaround;
  • move forward, with
    • migration from a classical authentication to JSON Web Token, which has been partially done this week as part of socket.io test, in order to harden encrypted data exchanges between client and server;
    • groups and pads, obviously.

See you next Thursday for week 18 point.




MyPads : développement, point numéro 3

Cela fait déjà plusieurs semaines que le dernier point concernant MyPads a été écrit. Pour ceux qui ne le sauraient pas encore, MyPads est le plugin Etherpad, et donc Framapad, qui va apporter la gestion des groupes et pads privés pour chaque utilisateur enregistré.

img-mypads-ulule2L’avancement

Ces dernières semaines ont été moins actives que les précédentes. Malgré cela, c’est toujours l’interface client qui a été travaillée avec la réalisation de :

  • la page de connexion et l’authentification associée ;
  • la page de souscription de compte ;
  • la gestion du profil utilisateur.

À court terme

Le développement reprendra une activité soutenue dès cette semaine. Les premiers éléments des modules de gestion de groupes et pads seront posés et avant la fin du mois une première version de tests sera proposée pour les personnes intéressées. L’objectif poursuivi est l’obtention d’une version stable dans la première quinzaine du mois de mai. À partir de maintenant, un point hebdomadaire sera réalisé.

MyPads : third feedback

Three weeks ago we’ve made a second point about MyPads development. For those who don’t know yet, MyPads is an Etherpad plugin, and so Framapad, which will bring private groups and pads management for registered users.

img-mypads-ulule2Progress

Last weeks have been less active than previous ones. Nevertheless, the Web client interface has seen some work with :

  • login page and authentication;
  • account subscription;
  • user profile management.

Short term

The development will go back to regular activity this week. Groups and pads first pieces will be set up and, before the end of April, a first preliminary test version will be available for interested people. We plan to get a stable version within the first two weeks of May. As of now, weekly news will be sent.




Journée de Libération des Documents

La Journée de Libération des DocumentsDocument Freedom Day » en anglais) est une journée internationale se déroulant chaque année le dernier mercredi de mars (c’est donc aujourd’hui !). C’est un moment pour se rassembler afin d’attirer l’attention sur l’importance croissante de l’utilisation de standards ouverts dans l’accès à l’information et dans toutes nos communications numériques.

La journée est dédiée à la promotion / défense des standards ouverts, ce qui comprend à la fois les protocoles ouverts et les formats ouverts. Dans le cadre de cette journée, de nombreux groupes locaux du monde entier vont mener des actions et des événements pour promouvoir ces standards ouverts.

DFD Flyer

 

Coordonnée par la FSF Europe, la Journée de Libération des Documents vise aujourd’hui une dimension non plus locale mais bien internationale.

Notamment :

Bref, vous l’aurez compris, nous vous encourageons à visiter et à faire connaître le site http://documentfreedom.org/index.fr.html afin de sensibiliser le public à la question des standards ouverts et de l’interopérabilité.

Document Freedom Day Cartoon.




Framapad : le renouveau

Depuis le lancement de Framapad en 2011, son succès ne s’est pas démenti. Pour preuve, nos serveurs s’écroulent ! C’est pourquoi, depuis maintenant près de 2 ans, nous multiplions les instances d’Etherpad afin de garder un service réactif.

Les soucis à répétition sur notre infrastructure qui ont eu lieu pendant les deux premiers mois de 2015 ont monopolisé notre attention. Du coup, la dernière instance de Framapad, lite5, s’est retrouvée à héberger près de 90 000 pads ! Depuis son lancement à la mi-octobre, cela fait quand même 18 000 pads par mois, soit 600 nouveaux pads par jour, ou 25 pads par heure !

La nouvelle instance, lite6.framapad.org, mise en place il y a peu n’est pas hébergée sur le même serveur que les autres, ce qui devrait permettre de proposer des framapads plus réactifs et moins soumis aux plantages.

Évolution du nombre de pads sur lite6, en semaines :

Nombre de pads créés (lite6)
Évolution du nombre de pads créés, par semaine.

Les problèmes… et leur réponse !

Les pads vides

Un souci que nous rencontrons est la création de pads vides, jamais utilisés. Il s’agit le plus souvent d’une erreur de frappe dans l’adresse du pad lorsque l’on souhaite s’y rendre. Si ces pads ne prennent pas vraiment de place dans la base données, ils la polluent cependant : l’index de celle-ci grossit… pour rien !

C’est pourquoi Luc, notre gentil adminSys/codeur/râleur a codé un plugin Etherpad qui supprime automatiquement les pads vides.

Les pads qui ne servent plus

La base de données enfle toujours plus, alors que de nombreux pads ne sont plus utilisés. Nous recevons aussi de temps en temps des demandes de suppression de pads pour diverses raisons. Notre réponse ? Des pads temporaires !

Le plugin Etherpad Delete after delay, toujours codé par Luc nous permet maintenant de proposer des pads qui s’autodétruiront 24 heures, 7 jours, 31 jours ou 365 jours après la date de la dernière édition (pas la date de création, attention !).

Pour accéder aux framapads temporaires, vous pouvez vous rendre sur :

Ces différentes instances sont également proposées sur https://framapad.org.

creer un pad

Quand à l’instance https://beta.framapad.org elle porte bien son nom, puisqu’elle nous permet de tester certains plugins (commentaires, tableaux…) qui seront ajoutés sur les instances suivant leur intérêt et leur stabilité.

Les vieilles instances

Lite, lite2, lite3, lite4 et lite5 fonctionnent toujours, mais nous ne permettons plus la création de nouveaux pads dessus, étant donné l’instabilité régulière de ces instances (la chanson de JcFrog a bien failli achever le serveur, en lui amenant plein de nouveaux utilisateurs).

Afin de soulager notre infrastructure, nous passerons prochainement ces instances en mode lecture seule : vous pourrez toujours accéder (et télécharger) au contenu des pads, mais ceux-ci ne seront plus éditables. Ce passage en « read-only » sera effectué grâce au logiciel Padro créé par le bouillant Luc (encore lui !) pour répondre à nos besoins. Il faut dire que comme c’est lui qui s’occupe principalement des serveurs, il fait tout pour avoir le moins de problèmes possible !

Vous pourrez également, lorsque la prochaine version d’Etherpad sera sortie, accéder aux révisions sauvegardées de vos pads via Padro.

EDIT : la nouvelle version d’Etherpad est sortie (la 1.5.2) entre la rédaction et la publication de ce billet. Ce n’est donc plus qu’une question de disponibilité de Luc.

Et MyPads ?

Comme indiqué dans l’article publié récemment le développement du plugin de pads « privés » MyPads se poursuit.

Vous devriez pouvoir d’ici quelques jours tester une version alpha du plugin, et nous visons toujours une sortie officielle et un déploiement sur Framapad d’ici quelques semaines.

 

Mais alors, Framasoft fait du code ?

Non, toujours pas. L’inoxydable Luc a codé les plugins et Padro pour répondre à nos besoins et résoudre les problèmes que nous rencontrons, comme tout adminSys en telle situation 🙂

Et MyPads fait suite à notre campagne de financement participatif : Framasoft a pu passer un contrat pour faire développer MyPads grâce à ce financement, mais ce n’est pas Framasoft qui produit le code.




MyPads : second point sur le développement

Deux semaines se sont écoulées depuis le premier point sur MyPads, qui est pour rappel le plugin Etherpad, et donc Framapad, qui apportera la gestion des groupes et pads privés par utilisateur.

MyPads

L’avancement

Comme prévu, les dernières tâches ont été consacrées au début du développement de l’interface Web de MyPads, et plus précisément :

  • la mise en place de l’environnement de développement : browserify, watchify… ;
  • l’emploi d’un serveur HTTP de test autonome afin de fluidifier le travail de test et de relance ;
  • la mise en page générale et sa feuille de style associée, avec prise en compte de différentes tailles d’écrans (responsive) ;
  • la création de modules transversaux : système de notifications, infobulles, validation des saisies….

Pour ceux que cela intéresse, le code client repose entre autres sur Mithril.JS, Lodash, JSS.

La suite

D’ici quelques jours seront avancés les modules pour :

  • l’authentification et la souscription de compte en propre ;
  • la page de profil utilisateur ;
  • les tests fonctionnels pour ces modules.

Une fois cela réalisé, une version alpha sera proposée, qui emploiera la toute dernière version du code et sera remise à plat chaque jour. Elle sera disponible en anglais et en français.

Suivront bien entendu le module d’administration et ceux qui seront les plus utiles pour MyPads, à savoir la gestion des groupes et des pads. Notez que vous pouvez toujours suivre les avancées sur notre instance Gitlab, ou sur son miroir Github.

MyPads : second feedback

Two weeks have passed since our first point about MyPads development, the Etherpad plugin, and so Framapad plugin, which will bring groups and private pads managements per user.

MyPads

Progress

As intended, recent tasks have been dedicated to the MyPads Web user interface development, and more precisely:

  • setup of the front-end development environment : browserify, watchify
  • usage of a mockup HTTP server in order to make the workflow better
  • global layout and its stylesheet, responsive design included
  • development of common modules : notification system, tooltips, data validation….

For those who are interested about technical details, front-end code is based, among others, on Mithril.JS, Lodash, JSS.

Next steps

In the coming days you will see progress on modules:

  • authentication and subscription
  • user profile
  • setup of functional unit testing for these modules.

Once done, an alpha version will be setup online. It will use the latest commit and will be daily updated. It will be available both in English and French.

Of course, the administration and the most important modules of MyPads will come soon after that: groups and pads management. Note that you can follow MyPads progress on our Gitlab instance, or our Github mirror.




Huit.re, Framapic, Framabin : Framasoft met les bouchées triples.

Après un mois de janvier si mouvementé qu’il nous a donné du travail jusqu’en février, nous avons pu reprendre le cap fixé par notre (modeste) Plan de Libération du Monde : Dégoogliser Internet.

À notre sens, il faut reconquérir les Internets service après service, afin de proposer au plus grand nombre des applications Libres, Ethiques, Décentralisées et Solidaires. C’est ce que nous avons fait vendredi en ouvrant notre GitLab alors que Google code ferme ses portes. C’est ce que nous poursuivons aujourd’hui en vous proposant trois services simples, efficaces, mais qui (nous l’espérons) faciliteront la vie d’un grand nombre d’internautes dans le plus grand respect de leurs libertés.

Huit.re, la perle des raccourcisseurs d’URL

huitreEnfin un service qui ne s’appelle pas frama-machin !! (bon, OK, on y accède aussi sur frama.link :p ). Huit.re vous permettra de raccourcir vos URLs en huit petits caractères… et sera donc le mollusque qui cache la forêt de caractères qui forme souvent une troooop loooooongue adreeeeessse weeeeb.

À l’instar de bit.ly ou de goo.gl, vous pourrez l’utiliser pour gazouiller sans craindre de perdre trop des précieux 140 caractères auxquels vous avez droit. Vous pourrez enfin transmettre une adresse web par sms ou téléphone sans y passer trois heures…

Mais à la différence de ces géants du web centralisé, huit.re est basé sur LSTU (Let’s Shorten That URL), un logiciel libre que les barbu-e-s de tout poil peuvent s’empresser d’étudier, améliorer, bidouiller… Donc non seulement on sait ce qui se trouve derrière, mais en plus il est placé sur les serveurs de Framasoft. Et l’on vous rappelle qu’on s’est engagés sur une Charte respectueuse de vos libertés et vos données, ainsi que sur des conditions générales d’utilisations claires et précises.

Bref : on a enfin de quoi faire taire Pouhiou quand il clame à qui veut l’entendre que : « Les huîtres, c’est le mal » ! [1]

Framapic, le lutin qui héberge vos images les yeux fermés

Basé sur le logiciel libre LUTIm (Let’s Upload This Image), un projet perso du bouillant framasoftien Luc Didry, Framapic est un moyen simple et sécurisé de partager et publier vos images en ligne. Attention, il ne s’agit pas d’un gestionnaire de collection de photos à la Picasa… Simplement d’un hébergement d’images comme Imgur ou hostingpic, qui supporte tous les formats (même le GIF !)

gif jif gege

Sauf qu’en plus d’être un logiciel libre, LUTIm est un logiciel qui offre bien des avantages :

  • Possibilité d’autodestruction de l’image après la première vue (avec le petit lien « corbeille ») ;
  • Possibilité d’effacer l’image de nos serveurs au bout d’un jour, une semaine, un mois, un an… (au choix) ;
  • Intégration facilitée (et jolie) à Twitter, Facebook, etc. pour vos images (et même vos GIFs !) ;
  • Téléchargement facilité (par une URL spécifique) ;
  • Code ouvert et disponible sur notre GitLab pour tous ceux qui veulent y contribuer voire se l’installer sur leur serveur. ;
  • Chiffrement des images sur nos serveurs.

Et le chiffrement, ça change tout. Cela signifie que nous n’avons pas la possibilité de voir vos images (pas sans la clé que vous détenez dans votre URL, et pour la récupérer il faudrait qu’on active les journaux (logs) du reverse proxy qui est devant Framapic, et ça c’est pas dans notre charte…)

Cela signifie que vos images vous appartiennent, et qu’on n’a pas à mettre nos nez dedans. Attention ! Notez bien les URL des images envoyées sur Framapic : sans elles et la clé de chiffrement qui y est, vous ne pourrez plus y accéder.

Framabin, pour partager vos secrets en mode mission impossible

Nous avons pimpé le très célèbre (et très libre) Zérobin de SebSauvage afin de le rendre assez beau pour que votre grand-père vous partage en toute sérénité le secret si bien gardé de son coin à champignons.

framabin papy

Framabin est un rêve de gosse nourri aux Missions Impossibles, Alias et autres James Bond : partagez un message qui s’autodétruira dès le premier accès. Ou au bout de 5, 10 minutes. Ou d’un jour, une semaine, un mois, un an…

Bien entendu, le message est chiffré, ce qui fait que nous ne pouvons pas (à aucun moment) consulter le code de la carte bleue de votre maman quand elle le partagera avec vous sur Framabin pour que vous lui achetiez un superbe T-Shirt sur EnVenteLibre

Et le top, c’est que vous pouvez carrément utiliser Framabin comme un lieu de conversations secrètes, où chaque personne possédant le lien peut commenter ce qu’a écrit l’autre. Cela sert bien entendu pour ce bout de code qui va révolutionner les Interwebs (même qu’il y a de la coloration syntaxique), mais aussi pour bien comprendre et discuter le secret du tajine aux olives que votre cousin garde jalousement.

Libérez vous ! (même de Framasoft :p )

Tous ces services sont là pour vous (et aussi pour les Dupuis-Morizeau notre fameuse famille-témoin résidant en Normandie). Mais ils sont aussi et surtout là pour démontrer que lorsqu’on veut faire un Web et des applications respectueuses de… de nous, en fait : ben c’est possible. Le chiffrement, le logiciel libre et la confiance en l’hébergeur du service sont des piliers indispensables à ce respect.

Mais plus que tout, nous ne voulons pas devenir le « Google du libre ». C’est bien pour cela que vous retrouverez, sur notre blog Framacloud, tous les tutoriels nécessaires pour « cultiver votre jardin », c’est-à-dire pour installer vous-même ces applications sur votre propre serveur (ou celui de votre famille, votre asso, votre collectivité, votre entreprise…)

C’est en se rendant indépendants, en s’apportant nos expériences les uns aux autres et en disséminant du Libre un peu partout que nous arriverons ensemble à vraiment Dégoogliser Internet.

À vous de partager, désormais.

[1] cf. #Smartarded, p. 172.




Le confort ou la liberté ?

Quitter les GAFAM, du moins s’efforcer de le faire progressivement comme on s’efforce de renoncer peu à peu à une dépendance, ce n’est pas une mince affaire, tous ceux qui comme Framasoft ont entamé ce processus en savent quelque chose. La tentation est grande pour ceux qui ne disposent pas des compétences techniques suffisantes de renoncer ou bien de s’arrêter à mi-chemin. Nous ne sommes pas de ceux qui leur jetteront la pierre, car nous cherchons plutôt à inciter et accompagner, tel est l’esprit de notre campagne Dégooglisons Internet.
Le cas de Dan Gillmor, dont nous traduisons ci-dessous les propos, sans être original, est intéressant parce qu’il met honnêtement sa propre expérience en perspective. Chroniqueur des technologies numériques depuis longtemps déjà, il a vu passer différentes modes ou tendances mais il a évolué, parfois à contre-courant, jusqu’au point où il explique aujourd’hui faire ses adieux à des produits et des entreprises qui brident beaucoup trop sa liberté. Il nous invite à le suivre sur cette voie, en montrant quelle part de confort personnel nous freine encore.

Goofy

Voici pourquoi je dis au revoir à Apple, Google et Microsoft

J’ai davantage confiance dans les communautés que dans les entreprises

Traduction Framalang de l’article : Why I’m Saying Goodbye to Apple, Google and Microsoft par Dan Gillmor
Cette traduction a d’abord été publiée sur la plateforme Medium

danGillmorQuand je suis devenu chroniqueur des nouvelles technologies au milieu des années 1990, l’Internet public commençait tout juste sa première grande envolée. À l’époque, je conseillais à mes lecteurs d’éviter les batailles semi-politiques et même quasi-religieuses que les défenseurs de telle ou telle plateforme technologique semblaient apprécier. Je les exhortais à apprécier la technologie pour ce qu’elle est — un outil  —  et à utiliser ce qui fonctionnait le mieux.

Pourquoi dans ce cas suis-je maintenant en train d‘écrire ce texte avec un portable sous GNU/Linux, un système d’exploitation libre, et non pas sur une machine de marque Apple ou Windows ? Et pourquoi mes téléphones et tablettes fonctionnent-ils avec un dérivé d’Android qui améliore la confidentialité, appelé CyanogenMod, et non pas sous iOS d’Apple ni avec un Android standard ?

C’est parce que, tout d’abord, je peux faire très bien mon travail en les utilisant. Je peux jouer à des jeux. Je peux surfer sans cesse. Les plateformes alternatives ont atteint un stade où elles sont capables de gérer à peu près tout ce dont j’ai besoin.

Plus important encore, j’ai migré vers ces plateformes alternatives parce que j’ai changé d’avis sur ce que doivent être les technologies. Je crois aujourd’hui qu’il est essentiel de tenir compte de mes instincts et mes valeurs, de manière de plus en plus large, dans les technologies que j’utilise.

Ces principes ont pour origine un constat fondamental :

nous perdons le contrôle sur les outils qui nous promettaient autrefois un droit égal à l’expression et l’innovation, et cela doit cesser.

Le pouvoir de contrôle se centralise à nouveau, là où les entreprises et les gouvernements puissants créent des goulots d’étranglement. Ils utilisent ces points d’étranglement pour détruire notre vie privée, limiter notre liberté d’expression, et verrouiller la culture et le commerce. Trop souvent, nous leur donnons notre autorisation — nous bradons notre liberté contre un peu plus de confort  —  mais beaucoup de choses se passent à notre insu, et plus encore sans notre permission.

Les outils que j’utilise sont maintenant, dans la mesure du possible, fondés sur des valeurs de la communauté, et non pas celles des entreprises.

Je ne réagis pas ici avec des fantasmes paranoïaques. Je transpose, dans le domaine de la technologie, certains des principes qui ont conduit tant de gens à adopter le slow food ou un mode de vie végétarien, à minimiser leur empreinte carbone ou à faire des affaires uniquement avec des entreprises socialement responsables.

Et je n’ai pas non plus l’intention de faire de sermons. Mais si je peux convaincre ne serait-ce qu’un petit nombre d’entre vous de me rejoindre, même de façon limitée, j’en serais très heureux.

Je suis le premier à reconnaître, en même temps, que j’ai encore un long chemin à parcourir pour atteindre la véritable liberté en technologie. Peut-être que c’est impossible, ou pratiquement, à court et moyen terme. Mais c’est un cheminement  —  un voyage continu  —  qui en vaut la peine. Et si nous sommes assez nombreux à nous lancer dans l’aventure, nous pouvons faire la différence.

Une partie de ma conversion résulte d’un constante répugnance pour la manie du contrôle qu’exercent les entreprises et le gouvernement.

Si nous croyons en la liberté, nous devons prendre conscience que nous prenons des risques pour être plus libres. Si nous croyons en la concurrence, nous avons parfois à intervenir en tant que société pour nous assurer qu‘elle est respectée.

Une façon dont nous essayons de garantir une concurrence loyale est l’application des lois visant à la promouvoir, notamment par des règles antitrust destinées à empêcher les entreprises hégémoniques d’abuser de leur position dominante. Un exemple classique est apparu dans les années 1990 : Microsoft, une société qui a défié et surpassé IBM et tous les autres dans son ascension vers la domination totale sur le marché du système d’exploitation et celui des logiciels de bureautique.

Les logiciels de Microsoft n’étaient pas les meilleurs dans de nombreux cas, mais ils étaient plus que suffisant s —  et les stratégies de l’entreprise allaient de « brillante » à « épouvantable », souvent les deux en même temps. L’administration Clinton, faiblarde au début de la décennie, a finalement compris qu’elle devait empêcher Microsoft de tirer parti injustement de l’hégémonie de Windows / Office pour encadrer la génération suivante de l’informatique et des communications, et à la fin des années 1990 des procès antitrust ont contribué à l’émergence d’innovateurs tels que Google.

Dans mes billets je me suis attaqué régulièrement à Microsoft pour ses diverses transgressions. Au tournant du siècle, mon dégoût pour les pratiques commerciales de cette entreprise a atteint son point d’ébullition.

J’ai fait ma « déclaration d’indépendance » personnelle vis-à-vis de cette entreprise de logiciels, au moins dans la mesure du possible à l’époque. Je suis revenu à un Macintosh d’Apple  —  qui avait alors adopté un système d’exploitation sérieux, moderne, qui tournait sur le matériel de grande qualité  —  et en-dehors de quelques emplois occasionnels de Microsoft Office, je me suis largement dispensé d’envoyer de l’argent à une entreprise que je ne respectais pas. Apple m’a facilité la migration, parce que MacOS et Mac devenaient d’une classe incomparable à cette époque — et beaucoup de gens ont découvert, comme je l’ai fait, que l’écosystème de Windows était plus source d’ennuis que de satisfaction.

Lors de conférences de presse dans la Silicon Valley, du début au milieu des années 2000, j’étais souvent l’un des deux seuls journalistes avec un ordinateur portable Mac (l’autre était John Markoff du New York Times, qui avait adopté le Mac dès le début et y resté fidèle). Une décennie plus tard, à peu près tout le monde dans la presse technique a opté pour le Mac. Apple a fait un travail absolument spectaculaire d‘innovation technologique dans les 15 dernières années au moins. J’avais l’habitude de dire que pendant que Windows avait tendance à se mettre en travers de mon chemin, le Mac OS avait tendance à me laisser le champ libre. Pendant des années, je l’ai recommandé à tous ceux qui voulait l’entendre.

Et pourtant, maintenant, quand j’assiste à des événements sur les technologies, je suis une des rares personnes qui n’utilisent pas un Mac ou un iPad. Que s’est-il passé ?

Trois choses : la puissance croissante de Apple et une nouvelle génération de géants de la technologie ; la réaffirmation de mon exigence personnelle de geek pour une justice sociale ; et des alternatives sérieuses.

À l’époque où Steve Jobs était PDG, Apple reflétait sa personnalité et ses qualités. C’était passionnant à bien des égards, parce qu’il exigeait quelque chose de proche de la perfection. Mais depuis, celui qui était le perdant a révolutionné l’informatique mobile et il est devenu le vainqueur et un jour nous avons tous pris conscience que c’était une des entreprises les plus puissantes, rentables et profitables de la planète. Apple est devenu le genre d’entreprise que je préfère ne pas soutenir : elle veut exercer un contrôle maniaque sur ses clients, sur les développeurs de logiciels et sur la presse ; et j’en suis venu à penser que c’est même dangereux pour l’avenir des réseaux ouverts et la technologie contrôlée par l’utilisateur.

Dans le même temps, Google et Facebook, entre autres, sont apparus comme des puissances de nature différente : des entités centralisées qui utilisent la surveillance comme un modèle économique, qui nous dépouillent de notre vie privée en échange du confort d’utilisation qu’ils offrent. Nos appareils mobiles — et même nos ordinateurs, les outils-clés pour la liberté technologique dans les décennies précédentes — sont de plus en plus bridés et limitent la façon dont nous pourrions les utiliser.

J’avais périodiquement joué avec Linux et d’autres alternatives sur mon PC au cours des années, mais j’avais toujours trouvé l’exercice fastidieux et finalement, impraticable. Mais je ne ai jamais cessé de prêter attention à ce que les gens brillants comme Richard Stallman, Cory Doctorow et d’autres disaient, à savoir que nous allions et étions entraînés vers une voie dangereuse. Dans une conversation avec Cory un jour, je lui ai parlé de son usage de Linux comme système d’exploitation sur son ordinateur principal. Il m’a dit qu’il était important de mettre ses actes en conformité avec ses convictions — et, soit dit en passant, que ça marchait bien.

Pouvais-je faire moins, surtout étant donné que j’avais fait part publiquement de mes inquiétudes sur les dérives en cours ?

Donc, il y a environ trois ans, j’ai installé une distribution Ubuntu  — elle figure parmi les plus populaires et elle est bien maintenue — sur un ordinateur portable ThinkPad de Lenovo, et j’ai commencé à l’utiliser comme mon système principal. Pendant un mois ou deux, j’étais à la ramasse, je faisais des erreurs de frappe et il me manquait quelques applications pour Mac sur lesquelles je comptais. Mais j’ai trouvé des logiciels pour Linux qui fonctionnent au moins assez bien, sinon parfois mieux que leurs homologues pour Mac et Windows.

Mais un jour j’ai pris conscience que mes doigts et mon cerveau s’étaient parfaitement adaptés au nouveau système. Maintenant, c’est avec un Mac que je suis un peu embarrassé.

J’ai possédé plusieurs autres ThinkPad. Mon modèle actuel est un T440s, qui me semble offrir la meilleure combinaison de taille, poids, évolutivité, service à la clientèle et prix. Ubuntu prend en charge beaucoup de matériel, mais a été particulièrement favorable à ThinkPad au fil des ans. Il est également possible d’acheter des ordinateurs avec Linux pré-installé, y compris plusieurs ordinateurs portables de Dell, pour éviter beaucoup de tracas (après la violation incroyablement irresponsable de la sécurité de ses clients Windows par Lenovo dans un récent scandale, je suis heureux a) de ne pas utiliser Windows, et b) de disposer de solutions matérielles alternatives).

Pratiquement tous les types de logiciels dont j’ai besoin sont disponibles pour Linux, même si souvent ils ne sont pas aussi léchés que les produits Windows ou Mac qu’ils remplacent. LibreOffice est un substitut de Microsoft Office adéquat pour les usages que j’en fais. Thunderbird de Mozilla gère bien ma messagerie électronique. La plupart des principaux navigateurs existent dans leur version Linux ; j’utilise Mozilla Firefox le plus souvent.

Il reste quelques tâches que je ne peux pas réaliser aussi bien avec Linux, comme du screencasting complexe — pouvoir enregistrer ce qui se passe sur l’écran, ajouter une piste de voix off, peut-être un encart vidéo, et zoomer pour mettre en évidence des éléments spécifiques. Je serais heureux de payer pour quelque chose comme ça avec Linux, mais ce n’est tout simplement pas disponible, autant que je le sache. Je reviens donc à Windows, le système d’exploitation fourni avec le ThinkPad, pour exécuter un programme appelé Camtasia.

Comme l’informatique mobile est devenue le marché dominant, j’ai eu tout à repenser sur cette plateforme aussi. Je considère toujours l’iPhone comme la meilleure combinaison de logiciels et de matériel qu’une entreprise ait jamais offerte, mais l’hystérie du contrôle d’Apple est inacceptable. Je me suis décidé pour Android, qui était beaucoup plus ouvert et facilement modifiable.

Mais le pouvoir et l’influence de Google m’inquiètent aussi, même si j’en espère plus que de beaucoup d’autres entreprises de haute technologie. Android de Google, en lui-même, est excellent, mais l’entreprise a fait de l’utilisation de son logiciel une partie intégrante de la surveillance. Et les développeurs d’applications prennent des libertés répugnantes, collectent les données par pétaoctets pour en faire dieu sait quoi (les experts en sécurité en qui j’ai confiance disent que l’iPhone est d’une conception plus sûre que la plupart des appareils Android). Comment puis-je rester ferme sur mes principes à l’ère du portable ?

Un mouvement communautaire a émergé autour d’Android, ses acteurs partent du logiciel de base pour l’améliorer. L’une des modifications les plus importantes consiste à donner aux utilisateurs davantage de contrôle sur les paramètres de confidentialité que Google n’en permet avec Android standard.

Un des projets parmi les plus solides est CyanogenMod. Il a été préchargé sur un de mes téléphones, un nouveau modèle appelé le OnePlus One, et je l’ai installé sur un ancien téléphone Google. Non seulement je me sers des paramètres avancés de protection de la vie privée (Privacy Guard), mais ma messagerie est chiffrée par défaut — une fonctionnalité que chaque fabricant de téléphone et fournisseur de service devrait imiter (Apple le fait, mais les fournisseurs d’appareils sous Android sont lents à réagir).

CyanogenMod est devenu plus qu’une communauté de bénévoles. Certains de ses créateurs ont lancé une société à but lucratif, qui a levé des fonds auprès d’investisseurs de la Silicon Valley. Comme beaucoup d’autres dans le monde des alternatives Android, je crains que cela ne mène Cyanogen à adopter de mauvais comportements et l’éloigne de son principe de base qui consiste à donner le contrôle à l’utilisateur. Si cela se produit, je peux essayer beaucoup d’autres versions créées par la communauté d’Android (cette préoccupation concerne également OnePlus, qui, après un différend avec CyanogenMod, se dirige vers un système d’exploitation propriétaire).

Le nerd qui est en moi — j’ai appris un langage de programmation au lycée et j’ai eu des ordinateurs depuis la fin des années 1970 — trouve tout cela amusant, du moins quand ce n’est pas inquiétant. J’adore explorer la technologie que j’utilise. Pour d’autres, qui veulent juste des trucs pour travailler, j‘aimerais que tout cela soit simple comme bonjour. Il est vrai que les choses s’améliorent : tout devient plus facile, plus fiable et certainement de meilleure qualité. Mais il reste du travail à faire pour retrouver un certain contrôle, en particulier du côté du mobile.

Et maintenant, après tout ce que j’ai fait pour devenir plus indépendant, je dois le confesser : j’utilise encore des logiciels de Google et Microsoft, ce qui fait un peu de moi un hypocrite. Google Maps est une des rares applications qui me soient indispensables sur mon smartphone (Open Street Map est un projet génial, mais pas encore assez merveilleux pour moi) et comme je l’ai expliqué plus haut, j’ai parfois encore besoin de Windows. Le chemin vers la liberté des technologies fait de nombreux détours, parce que tout cela comporte des nuances sans fin.

Donc je continue à chercher des moyens de réduire davantage ma dépendance à des pouvoirs centralisés. Un de mes appareils, une tablette déjà ancienne qui tourne avec CyanogenMod, est un banc d’essai pour une existence encore plus libérée de Google.

Elle est suffisante pour une utilisation à la maison, et de mieux en mieux à mesure que je trouve davantage de logiciels libres — la plus grande partie par l’intermédiaire de la bibliothèque de téléchargement « F-Droid » — qui gèrent ce dont j’ai besoin. J’ai même installé une version de nouvelle tablette OS Ubuntu, mais elle ne est pas prête, comme on dit, pour un usage quotidien. Peut-être que Firefox OS fera l’affaire.

Mais j’ai abandonné l’idée que le logiciel libre et le open hardware pourraient devenir un jour la norme pour les consommateurs — même si les logiciels libres et open source sont au cœur de la structure même d’Internet.

Si trop peu de gens sont prêts à essayer, cependant, les valeurs par défaut vont gagner. Et les valeurs par défaut, c’est Apple, Google et Microsoft.

Notre système économique s’adapte à des solutions communautaires, lentement mais sûrement. Mais avouons-le : nous semblons collectivement préférer le confort à l’indépendance, du moins pour le moment. Je suis convaincu que de plus en plus de gens prennent conscience des inconvénients du marché que nous avons passé, sciemment ou non, et qu’un jour, nous pourrons collectivement l’appeler un pacte faustien.

Je garde l’espoir que davantage de fournisseurs de matériel verront leur intérêt à aider leurs clients à se libérer du contrôle propriétaire. C’est pourquoi j’étais si heureux de voir Dell, une entreprise autrefois très liée à Microsoft, proposer un ordinateur portable sous Linux. Si les plus petits joueurs dans l’industrie ne se satisfont pas d’être des pions des entreprises de logiciels et opérateurs mobiles, ils ont une alternative, eux aussi. Ils peuvent nous aider à faire de meilleurs choix.

En attendant, je vais continuer à encourager autant de personnes que possible à trouver des moyens de prendre le contrôle par eux-mêmes. La liberté demande un peu de travail, mais ça en vaut la peine. J’espère que vous envisagerez d’entreprendre ce voyage avec moi.




Un poids lourd du Libre sur un nuage douillet

Cozycloud, le petit nuage qui monte qui monte… avec Tristan Nitot !

On croyait en avoir fini avec Tristan Nitot, qui après d’émouvants au revoir à Mozilla et à la communauté du libre, allait prendre une retraite bien méritée. On l’imaginait déjà chevauchant telle Brigitte Bardot son terrible engin, parcourant le monde sur sa moto et ne revenant à intervalle régulier à la surface de son blog que pour nous livrer sa vision de l’état actuel du flicage et des moyens de s’en affranchir.

Eh bien c’est raté, le revoici sous les feux de l’actualité high-tech, mais toujours sous la bannière du libre et des valeurs qu’il a toujours défendues. Pour en savoir plus sur Cozycloud, le rôle que va y jouer maintenant Tristan, nous avons soumis deux individus à nos questions et ils ont eu la bonté d’y répondre en nous donnant la primeur. Voici donc les interviews successives de Frank Rousseau et de Tristan Nitot, en exclusivité pour le Framablog.

 

Bonjour Frank Rousseau, merci de bien vouloir nous parler de Cozy dont tu es le fondateur et le directeur technique, avec un parcours de libriste intéressant. Cozycloud, c’est quoi exactement ?

Cozy est une plateforme qui permet de démocratiser le serveur personnel. Pour faire simple Cozy permet d’avoir des services de gestion de calendriers, de contacts, de fichiers et de mails sur une machine qu’on garde à la maison ou en ligne. Il se synchronise aussi avec notre téléphone et nos ordinateurs. C’est ce qu’on appelle un cloud personnel.
Pour être plus précis, avec Cozy on peut déployer des services web sur une machine à soi aussi facilement que sur un smartphone. L’objectif est de permettre aux utilisateurs de services web de reprendre la main sur le stockage et le traitement de leurs données. Ainsi non seulement leur vie privée est respectée, mais en plus ils peuvent mieux exploiter les données en les faisant travailler de concert.
Exemple : avec Cozy, quand je rentre un contact dans mon téléphone, toutes mes applications sont informées. Je n’ai donc pas à saisir à nouveau le contact dans mon appli de partage de photos ou mon client mail). En faisant sauter plein de petites frictions comme celle là, Cozy vise à rendre notre vie numérique beaucoup plus simple… vous allez pouvoir arrêter de taper sur vos appareils !

Si je vous confie mes données en ligne, qu’est-ce qui me garantit que vous n’allez pas être obligés d’en donner l’accès à des services secrets (crainte et méfiance…) comme c’est le cas avec les entreprises américaines ?

Pour les services secrets c’est compliqué, car ça tombe sous le coup de la loi. L’idée est de dire que vos données sont stockées sur un espace vous appartenant. Quiconque s’y introduit sans votre permission est donc en infraction. Si une loi comme la loi de Programmation Militaire autorise les services secrets à entrer par effraction, ils sont donc dans la légalité et ce sera difficile pour votre hébergeur d’en refuser l’accès. Eh oui le problème n’est pas que technique…
Mais bon si vraiment ça vous embête, pour y remédier vous avez trois solutions :

  • soit vous chiffrez toutes vos données en conservant la clé de chiffrement de votre côté (fonctionnalité non présente pour l’instant dans Cozy). Mais dans ce cas l’usage de votre nuage personnel devient difficile : vous ne pouvez pas vous permettre de perdre votre clé et l’indexation d’information est difficile ;
  • soit vous déménagez votre nuage vers un hébergeur en qui vous avez davantage confiance ou dans un pays avec une juridiction compatible avec vos exigences ;
  • soit vous vous hébergez chez vous avec les contraintes associées : gestion du matériel, des sauvegardes, des mises à jour et de l’installation.

…et en ce qui concerne la commercialisation des données, ça fait partie des projets (crainte et méfiance, bis) ?

Ça n’en fait pas du tout partie ! C’est l’inverse de tout ce vers quoi va le projet. Au-delà des valeurs éthiques qui sont les nôtres, notre proposition de valeur est liée au fait que nous n’avons pas un modèle économique basé sur la commercialisation de données. Y intégrer cette notion, en plus de dénaturer notre action, rendrait la société économiquement non viable.
Pour gagner des sous, nous proposons à des partenaires de mettre en place la plateforme sur un matériel qu’ils distribuent : sous forme de serveurs en ligne ou de petites boîtes. Ça peut être un hébergeur, un fournisseur d’accès, un vendeur de NAS ou même une institution de confiance comme une banque (comme on y met son argent, cela en rassure certains d’y mettre leurs données).

Enfin, de nombreuses entreprises se rendent compte qu’elles perdent la relation avec le client. Développer une application sur Cozy (en nous faisant une commande idéalement…) qui se charge de faire le lien entre le consommateur et le fournisseur leur permettra de proposer des services semblables à ceux des entreprises prestataires de cloud sans y engloutir des sommes folles. Ces applications seront un genre de relais qui permettra aux fournisseurs de proposer des services qui interagissent avec le reste des applications. Bien entendu elles n’enverront pas de données sans accord de l’utilisateur. Nous fournirons des outils à la communauté pour les auditer et signaler les applications malveillantes. L’utilisateur s’adressera directement à son fournisseur via cette application et n’utilisera plus un service tiers pour cela.

Le projet semble pas très loin d’aboutir à une sortie publique, pourquoi a-t-il besoin maintenant d’un Chief Product Officer ? Il manque un chef ? Vous êtes sûr que la bande de crypto-anarchistes qui travaille dans l’équipe va supporter un chef ?

Une nouvelle release approche à grand pas. Mais le produit ne s’arrêtera pas là. Le socle est posé : mails, contacts, agenda, synchro de fichiers… mais beaucoup reste à faire ! À court terme il y aura des outils pour migrer d’un clic ses données depuis un service existant, des outils pour les photos et leur partage,  les données bancaires… L’internet des objets est un champ important où une approche de type cloud personnel apportera beaucoup : en effet la promesse d’objets communicants est énorme, si les objets… communiquent entre eux ! Il est plus que probable par exemple qu’un iPhone communique mal avec un frigo Samsung… Bref, le champ des possibles est gigantesque, et il va falloir prioriser. C’est un des rôles importants de Tristan, interagir avec la communauté pour aller le plus vite vers les usages clés.
Pour ce qui est du « chef » : Tristan est un poilu, pas de doute. Mais on reste avec une organisation  horizontale. Avoir un chef est dé-responsabilisant, or on a besoin que chacun apporte son regard, pas qu’il l’aligne sur celui du « chef ».

Donc il va servir à quoi Tristan Nitot ? On connaît sa carte de visite dans le monde du Libre et bien au-delà, nul doute que c’est une personnalité qui saura propulser l’ensemble du projet, mais quelles seront ses missions au juste ? Que va vous apporter son implication dans Cozycloud ?

Son rôle sera de faire vivre le produit et la communauté. D’une part il fera connaître Cozy et évangélisera son usage en animant les différents canaux de communications (réseaux sociaux, newsletter et blog). D’autre part il récoltera les avis et remarques des gens qui utilisent ou s’intéressent à la plateforme. Les deux actions se nourrissent l’une de l’autre. Plus le projet répond aux attentes plus il est facile de le faire connaître. Plus il est connu, plus les retours seront nombreux et permettront à l’équipe de développement d’améliorer le produit. C’est un cercle vertueux.
Sa valeur ajoutée réside dans sa capacité à rendre clair un message compliqué et à pouvoir synthétiser les avis d’un grand nombre de personnes. C’est ce qu’il a fait avec Mozilla et Firefox avec succès. C’est important qu’il ait cette expérience sur un projet libre car son objectif sera aussi de fédérer un maximum de contributeurs. Cozy Cloud est aussi une entreprise qui travaille avec des partenaires institutionnels et économiques. Tristan sait s’adresser aussi à ces gens-là. Ce qui pour nous est important car notre objectif est de monter un écosystème autour de Cozy.

Les entreprises distribueront en masse des Cozy sous diverses formes, les utilisateurs utiliseront Cozy et les développeurs y ajouteront les applications destinés à des usages généraux ou de niche.

Enfin, il arrive avec une notoriété incroyable. Cela va permettre de crédibiliser le projet et de lui donner un pôle de référence vers lequel tous ceux qui croient en un web distribué pourront se tourner !

La solution Cozycloud, est-ce qu’elle est pour tout le monde ? est-ce qu’elle est ou sera bientôt accessible aux Dupuis-Morizeau, notre sympathique famille recomposée de Rouen ? Ou bien visez-vous plutôt les grandes entreprises ? Quelle est votre cible ?

L’objectif est de démocratiser le serveur personnel, donc oui notre rêve c’est de le rendre accessible à tout le monde. Nous fonctionnons de manière itérative en nous adaptant à la situation. Il est possible que la famille Dupuis-Morizeau ait d’abord accès à une version simplifiée avec une liste d’applications bien définie. Mais pour le moment nous ciblons une population technophile qui comprend les enjeux derrière Cozy. Ils seront plus tolérants aux premiers bugs et patients de voir arriver les nouveautés en connaissant le potentiel du projet.
D’autant plus, comme dit brièvement plus haut, qu’on peut développer sa propre application sur Cozy. Toutes les applications sont écrites en JavaScript et se basent sur Node.js. Beaucoup de contraintes liées aux développements web sont retirées (gestion utilisateur, déploiement, etc.). C’est une super opportunité pour répondre à un besoin personnel ou tout simplement apprendre le développement web. Enfin il est facile de partager son application, pour ça il suffit de fournir un simple lien git.
Notez que les applications maintenues par Cozy sont écrites en coffeescript mais l’usage de ce langage n’est pas obligatoire. Les développeurs peuvent accéder à toute la documentation qui leur est dédiée.

Dis donc, Tristan, on croyait avoir fêté ton départ en retraite 😛 mais non te revoilà, on ne peut plus se passer de toi finalement. On se doute que tu as été « approché » par plusieurs entreprises, tu as eu des propositions alléchantes ? Certaines que tu as peut-être refusées parce qu’elles ne correspondaient pas à tes convictions ou valeurs, ou parce qu’elles ne te garantissaient pas de pause-salle de gym ?

Ahah, non, ça n’est pas la salle de gym de Cozy Cloud qui m’a convaincu, surtout que nous sommes en télétravail, donc j’occupe le même petit bureau dans mon salon que j’avais quand j’ai fondé Mozilla Europe en 2003. J’ai été approché par trois entreprises, et deux des trois postes étaient vraiment très intéressants. J’ai longuement hésité, mais la mission de Cozy, le fait qu’ils produisent du logiciel libre, et que l’équipe soit passionnée et très compétente ont fait que c’est eux que j’ai choisis.

Donc on peut dire que Cozycloud ça te convient ? qu’est-ce qui t’intéresse dans cette nouvelle aventure ?

Oui, Cozy me correspond parfaitement, c’est vraiment une chance ! Déjà, ils font du logiciel libre, et pour moi c’est très important. Ensuite, ils s’attaquent à un problème très important, qui est le contrôle de nos données à l’heure du Cloud. Dans mon travail, j’ai besoin que la mission de l’organisation soit forte et au service du bien commun. C’était le cas avec Mozilla, c’est encore le cas avec Cozy.

Mmmh le petit nuage de cozycloud est bien sympathique, on lui souhaite de monter bien haut et de prendre du volume, mais euh bon il y a déjà de gros cumulo-nimbus dans la place, est-ce que ce n’est pas un peu le vieux combat David contre Goliath (rappel : à la fin c’est David qui gagne), est-ce que pour toi c’est un nouveau défi du genre le petit Firefox qui défiait le géant IE il y a dix ans ?

Oui, c’est exactement ça ! David est tout petit face à Goliath, mais il sait qu’il doit gagner. En 2003, quand on montait Mozilla Europe et qu’on préparait Firefox, on savait bien qu’il fallait casser le monopole d’Internet Explorer, car le navigateur de Microsoft n’était plus développé activement. Comment une fondation avec une dizaine d’employés en Californie et une poignée de bénévoles pouvait prétendre défier Microsoft et ses 95% de parts de marché ? Je crois qu’il fallait une sacré dose d’inconscience à l’époque. Mon entourage me soutenait, mais je voyais bien qu’ils s’inquiétaient pour ma santé mentale ! Et puis ça a marché, et le marché des navigateurs est en bien meilleure santé aujourd’hui. Ça semblait impossible, mais on l’a fait.

En 2015, le problème d’Internet selon moi, c’est le pillage des données personnelles par les grands services. Bien souvent, les services sont gratuits (voir ce chapitre de mon livre en cours sur le piège de la gratuité) mais le vrai client, ça n’est pas l’utilisateur, c’est l’annonceur publicitaire qui achète de la publicité ciblée. Si le service est gratuit, alors c’est toi le produit : nous sommes comme des cochons dans une porcherie. On se félicite que tout soit gratuit, mais en fait nous allons terminer débités en saucissons numériques.
Au-delà de ça, le problème est que ça rend économiquement possible la surveillance de masse, dont on sait depuis les révélations Snowden à quel point elles sont étendues.
Il ne faut pas pour autant jeter le bébé avec l’eau du bain et arrêter tous les services Cloud et nous débarrasser de nos ordinateurs, tablettes et autres smartphones. En revanche, il va falloir réinventer un nouveau paradigme du Cloud : un cloud sous le contrôle des utilisateurs et pas d’une poignée de multinationales dont le business model consiste à tout savoir sur nous. C’est ce que veut faire Cozy Cloud, et c’est pour cela que je les rejoins.

Tristan, pourtant à te lire dans tes dernières ruminations tu aurais tendance à nous dire de prendre beaucoup de précautions avec tout ce qui est infonuagique (ce terme parfois est employé pour parler du cloud).
Si je confie mes données à Cozy, je retrouve les mêmes problèmes et les mêmes risques qu’avec d’autres « nuages ». Je ne peux pas alimenter mon nuage bien au chaud chez moi, sur mon petit serveur ?

Si, justement : l’approche de Cozy Cloud consiste à avoir son propre serveur et d’y faire tourner du logiciel libre, condition nécessaire pour avoir la maitrise de son informatique et donc de ses données. J’explique ça dans les 7 principes pour reprendre le contrôle. Après, tout le monde n’a pas forcément envie d’administrer un Raspberry Pi 2 chez soi, et l’approche d’IndieHosters (qui propose d’héberger le logiciel Cozy) est tout à fait honorable et plus simple, comme on pourrait envisager d’être hébergé chez un grand hébergeur qui commercialiserait une offre Cozy. Il en faut pour tous les goûts !

À mon avis, l’intérêt de Cozy Cloud par rapport aux autres offres, c’est qu’il s’agit d’une plateforme : tu as au départ des fonctionnalités de base (email, agenda, synchro de fichiers et de carnet d’adresses, partage de photos), et puis tu peux rajouter des applications depuis un magasin d’applications. Évidemment, il est possible de créer ses propres applications en JavaScript et HTML. C’est un système extensible. Par ailleurs, Cozy intègre CouchDB qui assure la synchronisation entre les différents appareils. Du coup, pour le développeur, c’est très simple de gérer ça.

Merci Tristan, je te laisse le mot de la fin, ou plutôt celui du début d’une nouvelle période dans ta vie professionnelle…
Ça n’a pas été facile de quitter Mozilla, qui est une organisation qui veut avoir une action positive sur le monde. Mais avec Cozy Cloud, j’ai l’impression de retrouver le Mozilla des débuts : une équipe super sympa, très motivée, très compétente, avec une féroce envie de changer le monde pour le rendre meilleur, en faisant un petit logiciel libre qui pourrait bien révolutionner le monde du Cloud ! C’est ça qui me donne envie de me lever tôt le matin avec le sourire !

logo de cozy, nuage qui sourit

————–
Quelques liens pour aller plus loin