arthur.bebou

Le site arthur.bebou.netlib.re - retour accueil

git clone git://bebou.netlib.re/arthur.bebou
Log | Files | Refs |

commit 4a28eaf998fff46fcb17ac5b8dd12c6edb92e9a0
parent 83c7d93d49cdf77b6a838682c2e4181746fc26a0
Auterice: Arthur Pons <arthur.pons@unistra.fr>
Date:   Thu,  6 Jun 2024 17:34:09 +0200

Début article services "sobres"

Diffstat:
Acontents/services-sobres/index.sh | 103+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 103 insertions(+), 0 deletions(-)

diff --git a/contents/services-sobres/index.sh b/contents/services-sobres/index.sh @@ -0,0 +1,103 @@ +#! page +title: Des services internet simples et sobres +author: Arthur Pons +description: Étudions comment construire et mettre en ligne des services relativement simples et sobres sur internet +publication: 2024-06-07 + +sectionmd: main + +## Le "trop-long-j'ai-pas-lu" : + +Sur un système unix possédant netcat[^1] vous pouvez faire + + nc bebou.netlib.re 2222 + +puis taper `h` ou `help` et avoir la liste des commandes disponibles. + +## Pourquoi ? + +### Les outils existants + +J'avais développé quelques services que des proches ou moi trouvions utiles, +notamment de quoi [conjuguer](/conjugaison/), récupérer des +[synonymes](/crisco-des/), faire une recherche youtube et certainement d'autres +à l'avenir. Ces outils sont généralement des scripts shell de scraping assez +simples, utilisés en local. +Ils se substituent généralement à des usages inadéquats de sites web ou de +recherches Google. Remplacer "ouvrir firefox -> taper 'conjugaison manger' -> +cliquer sur le premier lien qui a pas l'air de vouloir me montrer mille popups +de cookies ou de newsletters -> scroller à travers la page pour trouver la +ligne que je veux -> faire un copier-coller" par "ouvrir un terminal -> taper 'c +manger je présent' -> faire un copier-coller" ou tout autre utilisation +davantage automatisée semblait opportun. On économise du temps, de la +frustration, des aller-retour clavier/souris, du texte à taper, de la bande +passante, des cycles cpu, de la ram et on s'offre en prime une meilleure +interopérabilité avec le reste du système. Selon quelle est la source des +données du on se permet également de travailler en mode hors-ligne. + +### Qu'est-ce que "service" convoque comme images dans ma tête ? + +J'ai eu plusieurs conversations avec des membres de Katzele sur le sens que l'on +met derrière le mot "service" numérique. Intuitivement, en me nourrissant +davantage des exemples que je trouve autour de moi que d'une réflexion +proprement théorique sur le sujet, je conçois le service comme le rapport +majoritaire qui existe entre les personnes détenant du matériel et des +compétences techniques et les autres, souhaitant faire appel à ce matériel et +ces compétences là. La première personne, généralement une entreprise, une +association, un état, va à l'aide d'ingénieur·es répondre au besoin en créant +un "service". Il y a mille façons de les créer, en impliquant plus ou moins +les personnes qui sont en demande par exemple, ce qui donnera mille formes +différentes de services mais j'ai le sentiment que dans l'ensemble quelques +caractéristiques restent assez constantes. Premièrement le cadre technique dans +lesquels ils s'inscrivent est, en 2024 et ce depuis des années, presque toujours +le web. Deuxièmement ils semblent vouloir, parfois volontairement, tenir au +maximum à distances les personnes utilisateur·ices du fonctionnement interne du +service. La première pose des questions de soutenabilité pour des raisons mille +fois évoquées sur ce blog bien que l'on puisse déjà drastiquement optimiser +cette variable en faisant du web "sobre" et pour peu que l'on y évolue avec un +outillage radicalement différent de celui majoritaire. La seconde va à +l'encontre de l'utopie technique rêvée à Katzele dans laquelle la ligne de +démarcation entre celleux qui détiennent et savent manipuler les outils et +celleux qui ne peuvent que les consommer ou en consommer leurs fruits serait +floutée ou à minima moins épaisse, dans la limite de ce que la complexité des +outils nous permet d'envisager. + +C'est au gré de ces pensées que je n'ai durant ces dernières années jamais +sérieusement entrepris d'interfacer mes outils via du web. Je privilégiais le +fait de faire des ateliers, des formations, des démos et des articles associés +pour distribuer le code localement sur les machines des personnes intéressées, +propager les idées et inciter les personnes à faire leurs propres versions quand +elles le peuvent. Évidemment la viabilité de cette stratégie est certainement +corrélée à la complexité des idées et du code en question. Plus l'outil est +complexe plus il sera simple et intéressant temporellement pour moi d'investir +une fois du temps dans une interface web et dire aux personnes "va simplement +sur telle url" plutôt que de dupliquer l'outil ou ses variantes n fois sur n +machines de n copaines. + +### Mais l'idée fera son bout de chemin + +Et pourtant, pour de multiples raisons que je n'ai pas audité en profondeur, +les personnes sont généralement bien plus enthousiasmées par l'idée d'avoir un +service web qu'une version locale, indépendante d'un service tiers et à +l'interface plus sobre. J'en prends pour exemple un atelier sur [l'ensemble de +systèmes que j'utilise pour consulter des vidéos youtube](/youtube/)[^2] de plus +de deux heures pendant lesquelles les échanges avaient été fréquents et de +qualité. Plusieurs jours après au gré du hasard je retombe sur l'une des +personnes ayant assisté à l'atelier qui partage son enthousiasme à une tierce +personne autour de [l'interface web sobre de recherche +youtuube](https://codemadness.org/idiotbox) et uniquement de cet aspect là. Je +n'ai pas de mal à comprendre que c'était peut-être pour elle le seul outil qui +se substituait directement à l'interface youtube classique sans pour autant +changer ses habitudes mais j'avoue m'être dit "oh un peu dommage 😞". + +Alors fort de cette expérience et pour éviter de tomber dans le sophisme de la +solution parfaite[^3] je me suis dit que j'allais regarder ce qu'il était +possible de faire entre l'interface web simple (formulaire html + cgi) et +l'outil en ligne de commande en local. + +## Quelle forme pour ces services ? + +[^1]: sur debian faire `sudo apt install netcat-openbsd` si vous ne l'avez pas déjà. En réalité tout outil permettant de se connecter à un port sur une machine distante. `socat` fonctionne, `telnet` aussi etc. +[^2]: article plus très à jour par rapport à ce que je fais aujourd'hui mais passons +[^3]: surtout quand on parle de sobriété dans le numérique, lol. +