Une nouvelle plateforme de publication

Date de publication: 02 April 2020 06:30 UTC Temps de lecture: 9 min
Auteur: Fabio Bonfiglio

En cette ère d’ultra-centralisation des canaux de diffusion de l’information (essentiellement du fait des réseaux sociaux, mais pas uniquement), il apparaît plus que jamais comme très important de pouvoir disposer de son propre canal de publication, et surtout d’en avoir le contrôle total.

Dans cette optique, une légère adaptation du présent site web s’imposait, afin non seulement de garantir une pérennité (de par la publication simultanée sur IPFS), mais également réduire drastiquement le temps nécessaire à la publication de nouveau contenu.

Mais pourquoi ?

On pourrait effectivement se demander, à quoi bon perdre du temps à travailler sur un site internet, à une époque où il y a beaucoup de cas concrets d’entreprises qui n’utilisent, en guise de vitrine web, qu’une simple page Facebook ou Linkedin, qui répond à tous leurs besoins dans la plupart des cas.

La raison est bien plus qu’idéologique. Le web a au départ été pensé comme un réseau de contenus distribués et de services inter-communicants. Il a malheureusement dérivé vers un modèle beaucoup plus centralisé. Dans les faits, le grand public n’accède plus aujourd’hui à ses informations que par quelques canaux, dont la plupart sont représentés par les fameux GAFAM .
On pourrait ici digresser sur la re-décentralisation du net et les efforts qu’il faudrait y consentir, mais ce n’est pas (du moins pas directement) l’objectif principal de cet article.

Sécurité et pérennité des données

Si les questions relatives au risque de censure, ou à l’économie de la surveillance vous importent peu, c’est probablement dû au fait que vous vivez en Suisse et ne vous sentez pas concerné(e)(s).
Je prendrai volontiers du temps pour vous convaincre du fait que vous avez tort si nous nous croisons un jour. Mais une fois encore là n’est pas la question.

La vraie raison d'être de ce site internet n’est pas uniquement commerciale, mais également à titre de démonstration.

Cette démonstration ne se situe ni dans la méthode de production de ce site, ni dans son design , mais bien dans le fait qu’il est tout à fait possible de gérer son propre site web, ses publications, et de manière générale, ses données (qu’elles soient privées ou d’entreprise), en se passant totalement des services d’un hébergeur, d’un cloud provider ou de tout autre service “centralisateur” du web !

Le simple fait de devoir le rappeler (car il n’y a pas là de miracle technologique, et c'était même tout à fait la norme il y a 25 ans en arrière) est assez surréaliste, mais cela montre déjà à quel point la dérive est importante.
Au-delà de cette réalité, la démonstration recherchée porte surtout sur le fait qu’il est, en plus, possible de faire tout cela de manière bien plus fiable et sécurisée qu’en passant par le genre de services que nous avons mentionnés.

Ce site est auto-hébergé, sur un serveur privé. Mais il est également publié sur le réseau IPFS . Si vous êtes arrivé(e)(s) ici via l’url https://fbo.network, alors vous avez utilisé la seule méthode d’accès faillible de ce système.

Reprendre la souveraineté de ses données et de ses systèmes informatiques en main, réduire les dépendances à des services ou à des autorités tierces, mais surtout à leurs failles et points faibles, voilà déjà un premier objectif rempli.

Pérennité de la donnée, ET de son adresse

Les noms de domaines du web passent bien souvent par des “marchands d’adresses”, qui ne jouent en réalité que le rôle de courtier auprès de l’autorité qui les gère, à savoir l’ICANN .

Grâce au réseau IPFS, concrètement, on commence par bénéficier de la pérennité de l’identifiant des données décentralisées. C’est à dire qu’une fois publiée, l’information ne changera plus jamais d’adresse et il est tout à fait impossible de l’interdire, la retirer de la circulation ou bloquer son accès. La raison est simple, un identifiant (ou une adresse, ou CID ) sur IPFS est en réalité simplement le résultat d’un hachage de la donnée qu’elle cible.
Aucun organisme, ni aucune autorité, n’ont le contrôle sur son existence même.

Sur IPFS, l’information se diffuse de façon organique, et plus elle est consultée, plus elle asseoit sont existence (de par sa réplication dans tous les noeuds du réseau qui y accèdent), et plus sa pérennité augmente.

Garantir que l’information subsiste dans le temps, quoi qu’il arrive. C’est important non seulement dans un contexte de résistance à la censure, mais également dans le cas de données d’entreprise, données de fonctionnement d’une application sur le très long terme, ou peut-être dans d’autres contextes bien plus novateurs et cette fois-ci rendus possibles par les nouvelles technologies de la décentralisation.
Par exemple, contrats, testaments, voire même des documents liés à ses smart contracts et dont la substance va dépendre d’actions et d'événements digitaux ou physiques, etc. La liste des applications possibles est trop longue pour être citée ici, et de plus, son exploration ne fait que commencer!

De par sa refonte, ce site est maintenant prêt à évoluer et grandir avec ces nouveaux paradigmes.

Efficience du travail

Un autre objectif visé avec cette nouvelle plateforme, était celui d’améliorer l’efficience de son utilisation.
Annoncer un événement, écrire un article, mais également d’autres tâches administratives ou rédactionnelles, comme par exemple la facturation, etc., ne devraient pas consommer plus que le temps nécessaire à la rédaction textuelle et la saisie des données (dans les cas où elle serait encore à faire manuellement).
Il fallait donc un système qui me permette de rédiger n’importe quel type de document, depuis n’importe quel poste de travail (agnostique en termes de système d’exploitation aussi bien que de logiciels nécessaires), et qui me permette de me concentrer sur le contenu plutôt que l’apparence, tout en étant directement intégrable avec n’importe quel système de données, application, dApp ou smart contract.

La publication IPFS impose du contenu statique. C’est à dire que tout ce qui est montré à l'écran, aussi bien en termes d’apparence que de contenu, doit être “servi” et non pas généré à la volée par un back-end sur un serveur.

C’est ainsi que j’ai porté mon choix sur Hugo . Un bundler qui permet aussi bien la mise en page de contenus bruts, que l’intégration de programmes complexes en javascript, et donc le développement de dApps.
Et surtout, les contenus bruts en question sont rédigés en Markdown . Une syntaxe de rêve pour pondre du contenu à la vitesse de l'éclair, tout en étant un format de fichier idéal quand il s’agit de publier des contenus légers, pérennes et facilement vérifiables, en termes d’authenticité de contenu. Md

Automation

La touche finale tient en une automation de type CI /CD et répliquée. À savoir, le contenu à publier est poussé vers des dépôts git (auto-répliqués), qui vont déclencher des actions de déploiement continu si les tests fonctionnels et qualitatifs automatisés sont concluants, et ensuite également mettre à jour régulièrement les publications (Hugo pouvant gérer la planification des publications).

Concrètement, cela signifie que lorsque j’aurai terminé de travailler sur le présent fichier Markdown (que ce soit avec mon éditeur de texte/code préféré ou un simple notepad ), je le sauve, et je tape simplement les deux commandes suivantes dans mon terminal :

git commit -a -S -m "Publication de mon superbe article/pavé!"

puis

git push

Et je pourrai aller me coucher tranquille, sachant que ce nouvel article sera signé cryptographiquement, mis en page, listé et déployé automatiquement à la fois sur mon serveur privé et à la fois publié sur IPFS en utilisant la même clé IPNS qui permet aux utilisateurs de ce réseau de toujours trouver les derniers contenus à jour.

Le choix des armes

Un autre avantage qui ressort clairement de cette façon de travailler réside dans la liberté totale du choix des outils. Le seul essentiel étant git, qui est non seulement libre et open source, mais également installé par défaut sur bien des systèmes d’exploitations. C’est de toute façon l’outil de travail incontournable de tout développeur, mais de plus en plus également de rédacteurs en tous genre, ingénieurs, voire même de graphistes. git

Les notions d’intégrité, vérifiabilité et de traçabilité des données apparaissent comme évidentes une fois qu’on a appris à utiliser git.

Indépendance

Aucune dépendance à un fournisseur de logiciel tiers (qu’il soit gratuit ou non), aucun choix technologique imposé, aucun framework ou CMS de type Wordpress lourd à maintenir et dans fonctionnement, aucune dépendance à un back-end, aucune licence logicielle à payer, aucun abonnement chez un hébergeur ni dépendance à sa fiabilité, etc. La liste est encore longue, mais je pense que vous avez compris.

Design ?

N'étant ni graphiste, ni designer (et même si je l'étais j’ai l’impression que je serais de toute façon mauvais 😬 ), peu ou pas de changements sur les aspects graphiques de ce site. Il s’articule principalement autour de celui du logo, réalisé dans l’urgence il y a quelques mois suite à la constitution de ma nouvelle raison individuelle, accélérée par le démarrage du projet NEDAO .
Peut-être que d’ici quelques mois, je ferai appel à un vrai graphiste pour que les yeux souffrent moins…

Conclusions

Cela en vaut-il vraiment l’investissement ?

Le temps de développement de cette nouvelle version du site a été en tout et pour tout d’un peu moins d’une matinée (si on ne compte pas le temps qui avait déjà été passé à grailler le CSS pour donner une apparence acceptable à l’ensemble…).
Aucun investissement notable en matériel, mis à part l’utilisation d’une infrastructure de développement distribué déjà existante. Mais on pourrait tout aussi bien détourner certains services cloud pour distribuer et décentraliser le déploiement automatisé, par exemple en restant dans les limites de gratuité de providers comme AWS, Azure et Google (il en faudrait au minimum 2 différents bien entendu) pour faire tourner le CI/CD distribué.

Prochaines étapes

En ces temps de COVID-19 , et une grande partie de la population mondiale forcée de réaliser qu’il est tout à fait possible de travailler depuis chez soi, à condition de savoir utiliser les bons outils, ou du moins d’en disposer, la prochaine étape consistera en la mise en place d’une plateforme de vidéo-conférences auto-hébergée.
Cela me permettra de proposer à mes clients et interlocuteurs une solution bien moins centralisée en indiscrète que ne le sont Zoom, Google Hangouts, MS Teams, ou pire encore…

Ensuite, je profiterai du passage de la Suisse à son nouveau système de paiements (prévu normalement pour juin 2020), pour adapter mon système de facturation en ligne et commencer à utiliser un système inédit à QR-IBAN supportant à la fois le paiement traditionnel et le paiement par cryptomonnaies.

La conclusion étant que je dispose maintenant, pour mes publications comme pour mes données d’entreprise, d’un système m’assurant une pérennité des mes données, meilleure que celle de services tiers et payants, ce qui contribuera donc à la pérennité de mes activités également, quelle qu’en soit leur nature…

SHA-256: 47d84a9d4752ec0a2d84dd1da3a73abefacad59d42773f165702dcd7d1d05244