★ Informatique décisionnelle VS logiciel libre

Publié le par Socialisme libertaire

Numérique

Informatique décisionnelle VS logiciel libre.
EXTRAIT DU MONDE LIBERTAIRE HORS SÉRIE N°61.
Quand on va pisser, c’est traité par informatique, quand il pleut aussi ; quand on se déplace, on utilise l’informatique, quand on s’éclaire, quand on soigne, quand on lit, quand on gère, quand on administre, quand on écrit… aussi ; pour ne parler que de ceusses qui n’utilisent pas directement un ordinateur ou un smartphone. Bref : on est dans l’âge du silicium. Et si l’utilisation des outils des âges précédents (pierre, bronze, fer...) est maintenant relativement claire, celle de l’outil informatique est plus complexe. Au point qu’il n’est pas toujours évident de savoir même qui utilise vraiment l’outil.

L’informatique, par la dématérialisation, offre des possibilités d’abstraction du monde réel. L’informatique singe le monde réel et l’inspire en retour. La majorité des organisations, notamment les entreprises, intègre l’informatique dans son fonctionnement. Et on peut en particulier distinguer deux modèles – a priori radicalement opposés – d’utilisation de l’informatique : d’un côté, l’informatique décisionnelle, souvent à usage du sommet d’une organisation pyramidale ; de l’autre, les projets de logiciel libre, dont l’organisation est plutôt horizontale. L’omniprésence de l’informatique mérite qu’on s’approprie cet outil, particulièrement si on vise l’émancipation.
 

Historique


Sans s’étendre sur l’histoire de l’informatique, l’ordinateur est le fruit de plusieurs résultats dans des disciplines scientifiques diverses. Une étape importante est l’apparition de la mécanographie (avec notamment IBM). Sur le plan théorique, les travaux mathématiques sur la calculabilité et la logique sont à l’origine de l’informatique moderne. Côté financement, les premiers gros investisseurs dans l’informatique sont le monde de la gestion (bureautique et bases de données) et les militaires. Le dernier grand tournant résulte de la miniaturisation des composants et de l’apparition des écrans tactiles.
 

Dématérialisation ? Mon cul !


L’informatique manipule des données, des informations… c’est immatériel. Pourtant, son utilisation consomme beaucoup d’énergie. Et surtout, l’environnement est impacté par la fabrication des équipements (épuisement de ressources naturelles non renouvelables) et leur fin de vie (pollution). Sans parler de la misère des ressources humaines que l’on épuise aussi pendant ces deux étapes.

Et puis on utilise de très très gros tuyaux. Le trafic généré, en particulier, par l’industrie médiatique nécessite des infrastructures énormes : routeurs, centres de données, centres de calcul...

Enfin, les coûts de l’informatique sont masqués à l’utilisateur final (ou ignorés). Prenons l’exemple simple d’un lecteur qui veut visiter le site web du Monde Libertaire. Si on clique sur un lien vers ce site, on consomme le coût du téléchargement. Si on lance une requête sur un moteur de recherche, on induit un coût supplémentaire considérable. Or le moteur de recherche peut être plus rapide à trouver l’information que l’utilisateur à trouver son lien vers le Monde Libertaire. Cet exemple trivial illustre que, si on ne fait pas l’effort de raisonner son utilisation, le souci d’efficacité (ou de performance) pousse à s’appuyer sur des traitements inutilement coûteux.

Un autre exemple courant est le visionnage d’une vidéo. Si on visionne en flux direct (streaming), le processus est synchrone : la chaîne complète qui va de la source à l’utilisateur final est active en même temps. Si on télécharge le fichier avant de le visionner, le transfert entre la source et l’utilisateur final est asynchrone : le téléchargement se fait par étapes sans squatter la chaîne complète. Le visionnage en flux direct est plus coûteux bien que, dans les deux cas, on transfère la même quantité d’informations. On notera au passage que la seule télévision numérique câblée, de par la résolution des images transmises et le nombre de postes desservis (le tout en flux direct), est particulièrement gourmande en ressources.

Plus généralement, l’architecture des applications logicielles distingue souvent l’accès aux données, les traitements et la présentation. L’utilisateur final ne voit que la couche de présentation (c’est l’Interface Homme-Machine) ; la partie du processus effectuée par "le réseau" lui est invisible. Et les coûts d’infrastructure que suppose l’utilisation généralisée de l’informatique ne sont pas facilement lisibles par l’utilisateur final.
 

Abstraction du monde réel, inspiration du monde réel


J’ai le souvenir de deux photos juxtaposées : un grossissement d’un processeur et une photo aérienne d’une usine. Ces deux photos étaient semblables au point qu’on pouvait les confondre. Et pour cause : la fabrication et la manipulation d’objets du monde réel utilisent des solutions qui, à l’échelle près, conviennent aussi à la manipulation de données. Dans les systèmes d’exploitation et dans les couches logicielles supérieures, le vocabulaire est aussi souvent inspiré du monde réel (propriété, administration, file d’attente, politique, fenêtre, arbre, procédure, zone…). D’une part, parce que certains problèmes posés au logiciel existent déjà dans le monde réel (en particulier, la logistique et l’administration, ce qui peut expliquer que l’utilisation de certains systèmes d’exploitation informatique rappelle la fréquentation de bureaucraties Kafkaïennes). D’autre part, parce que les ingénieurs qui produisent les solutions informatiques résolvent aussi des problèmes du monde réel. Et cette tendance à inspirer les solutions informatiques à partir de solutions du monde réel a été facilitée par l’apparition de langages de programmation dits "orientés objet".

Par ailleurs, la convergence de disciplines telles que les sciences sociales et l’informatique ont facilité la conception de systèmes experts, d’outils d’aide à la décision, qui peuvent être perçus comme des avancées (informatique médicale, supervision d’autoroute…) mais aussi comme un pillage des savoir-faire, comme le métier Jacquard du début de la révolution industrielle, avec le risque de voir s’appauvrir justement ces savoirs.
 

Informatique et pouvoir : Contrôle de l’information / accès à l’information


Historiquement, les premiers gros investisseurs dans l’informatique ont été, d’une part, des sociétés du monde de la gestion (dont les clients étaient des grandes entreprises ou des administrations) et, d’autre part, les armées. À mesure de l’entrée de l’informatique dans l’entreprise, le poste de responsable informatique a pris de l’importance, jusqu’à atteindre le rang de numéro deux dans des entreprises dont l’informatique n’est pas le cœur de métier. Côté États, au milieu d’investissements en machines de mort, la recherche a porté aussi sur la cryptographie, « considérée par la France jusqu’en 1996 comme une arme de guerre de deuxième catégorie ».

Un secteur s’est développé : l’informatique décisionnelle, « à l’usage des décideurs et des dirigeants d’entreprises. » Les logiciels de ce secteur reflètent l’organisation pyramidale dont ils doivent servir le sommet : il s’agit de produire des rapports à partir de données stockées à tous les niveaux de l’entreprise. Les données sont sélectionnées puis triées, groupées ou réparties puis traitées via des calculs statistiques ou comparatifs et enfin présentées d’une manière synthétique ou détaillée selon les attentes des dirigeants. On retrouve les notions d’indicateur et de tendance chères aux analystes.

Et puis on peut aussi s’interroger sur la pertinence et le contrôle de toute l’informatique embarquée qui, du simple calculateur d’une voiture au compteur "intelligent" d’EDF, traite un flot de données insoupçonnées, à l’aide de logiciels entièrement propriétaire sur des réseaux privés et au protocole verrouillé.

S’affranchir de la propriété intellectuelle : le logiciel libre


L’apparition de la licence publique générale GNU (GPL) est une révolution dans la propriété intellectuelle. Les initiateurs de la GPL sont Richard Stallman (pour le projet GNU) et Eben Morglen (pour les aspects juridiques). La Free Software Foundation considère comme "libre" tout « logiciel qui confère à son utilisateur : la liberté d’exécuter le programme, pour tous les usages (liberté 0), la liberté d’étudier le fonctionnement du programme et de l’adapter à ses besoins (liberté 1), la liberté de redistribuer des copies du programme (liberté 2) et la liberté d’améliorer le programme et de distribuer ces améliorations au public, pour en faire profiter toute la communauté (liberté 3). » Au passage, on notera que le logiciel libre (plus éthique) est différent de l’open source (plus pragmatique) ; mais ces deux mouvements sont très proches et, globalement, leurs définitions renvoient dans la pratique aux mêmes licences. Depuis la GPL, différentes variantes de licences de logiciel libre ont été rédigées, licences virales ou non, permettant l’utilisation dans des logiciels commerciaux ou non.

Les projets de ces mouvements sont ouverts à tous les développeurs et fonctionnent donc selon une organisation horizontale (ce qui n’empêche pas la définition de rôles particuliers, de la même façon qu’on peut définir des mandats dans une organisation politique). La contribution de chaque développeur est protégée par la licence, et qualifiée par les multiples relectures croisées. La participation à un projet libre sous-tend l’acceptation des critiques émanant des autres participants : chaque production est jugée par tous. Ce fonctionnement est basé sur le partage de la connaissance et la collaboration.

Osons une nouvelle comparaison avec le monde réel : imaginons que toute la connaissance nécessaire à la construction d’automobiles soit publique. Ça amène les considérations (à deux balles mais quand même !) suivantes : les constructeurs n’auraient plus besoin de protéger leurs centres d’essais comme des bases militaires, les services d’étude de la concurrence disparaîtraient, la compétition féroce pour être le premier à sortir la dernière nouveauté disparaîtrait aussi, les constructeurs auraient besoin d’écouler une quantité moindre de ferraille et de composants électroniques pour amortir les coûts de conception, et on éviterait un allègre gâchis de ressources naturelles et humaines... On entend une petite voix objecter que tout ce monde se retrouverait au chômage ? Évidemment, imbécile, dans une logique capitaliste et productiviste ! Mais il semble naturel d’associer le partage de la connaissance à un partage du travail et des ressources. Et c’est autrement plus attirant que les flexibilité et compétitivité qu’on nous fourgue à longueur de temps. Pour clore cette parenthèse sans se contenter de projections incantatoires, ce qui est acquis c’est le coût énorme (direct et indirect, financier ou non) de la propriété intellectuelle dans l’industrie automobile.

On a vu que le logiciel libre garantit – en gros – que personne ne soit exclu ni spolié du progrès collectif (à condition d’accéder à une machine connectée) et que l’open source permet – toujours en gros – d’avancer plus efficacement à plusieurs. Cette dernière considération tord le cou aux tenants du management (avec effort, compétition, abnégation et tout le tralala), qui défendent leur modèle au nom du pragmatisme. Même pas vrai : ça marche au moins aussi bien en partageant.

Certaines architectures logicielles permettent de mélanger des composants libres à d’autres composants. C’est le cas, par exemple de la technologie du plug-in (greffon en français). Le plug-in est un composant logiciel qui s’intègre avec un logiciel hôte. C’est le cas, par exemple, lorsqu’un navigateur web (potentiellement sous licence libre) accueille des plug-in (potentiellement propriétaires) pour lire du son ou de la vidéo. Outre la possibilité de mélanger des licences différentes (sous réserve que les deux licences le permettent), la technologie du plug-in permet surtout de séparer les développements et d’assembler des solutions logicielles au gré des besoins.

Un autre cas concret… Le génie logiciel (art de développer des logiciels) utilise une palanquée d’outils informatiques, dont les logiciels de gestion de versions. Historiquement, ces outils (cvs, subversion et autres) stockaient tout l’historique sur un serveur centralisé et fournissaient les services élémentaires de gestion de version : retrouver une version ancienne, livrer une nouvelle version, fusionner des modifications… La nouvelle génération d’outils de gestion de versions, comme git (développé par Linus Torvalds) ou mercurial, s’affranchit de cette centralisation et permet de travailler à plusieurs sans référentiel centralisé. On reviendra sur cette distinction…
 

Les standards


La standardisation, bien qu’a priori repoussante (ça évoque une uniformisation, un cadre rigide...), est une condition essentielle pour que des logiciels puissent inter-opérer. La notion de standard est évidemment antérieure au logiciel libre, mais le logiciel libre l’utilise copieusement. En gros, quand deux logiciels doivent inter-opérer, l’interface entre les deux doit être clairement spécifiée pour garantir un fonctionnement correct. Le besoin est le même que pour la plomberie, la mécanique ou d’autres métiers du monde réel. Dans le cas général, lorsqu’un éditeur développe un logiciel, il ne fournit aux utilisateurs que les artefacts nécessaires à l’utilisation du logiciel : il n’a pas besoin de fournir ni le code source, ni la documentation de développement (cahier des charges, spécifications, documents de conception, formats de fichiers manipulés…). Les utilisateurs auront donc, sur leur machine, des fichiers de formats dits propriétaires, c’est-à-dire que seuls les outils de l’éditeur sont censés pouvoir manipuler correctement. C’est une façon de verrouiller le protocole d’accès aux données contenues dans ces fichiers. Si l’on veut que d’autres entités puissent manipuler ces fichiers, il faut leur donner la description du format. Dans ce cas précis, la standardisation revient à se mettre d’accord sur un format commun, dont la description est publique. Par rapport à un format propriétaire, il y a perte de propriété de la part de l’éditeur ; mais la contrepartie collective compense cette perte. La standardisation peut donc être un moyen de casser un monopole.

Cryptographie : maîtrise par tous de la propriété et de l’authenticité.


La cryptographie est utilisée partout dans l’informatique (contrôle de l’accès à une machine, à des fichiers, à des ressources, protection des communications et des transactions financières…). Les protocoles les plus répandus utilisent des clefs. Leur utilisation est comparable à celle des clefs du monde réel. Dans le monde réel, le commun des mortels ne sait pas ouvrir une porte s’il n’a pas la bonne clef ; mais les serruriers peuvent le faire. En cryptographie, le commun des mortels ne sait pas craquer une clef (ce qui revient à accéder à tout ce que cette clef protège). Il paraît que la NSA (et probablement d’autres) savent craquer les clefs de cryptographie asymétrique mais ça leur coûte (du temps, entre autres) ; d’autre part, cette capacité s’appuierait sur des faiblesses des programmes qui implémentent ce protocole de sécurité et non sur une résolution mathématique de ce protocole. À la différence des clefs du monde réel, les clefs numériques permettent, en plus de contrôler un accès, d’authentifier une source.

C’est rappelé dans wikipedia : « la cryptographie asymétrique est fondée sur l’existence de fonctions à sens unique et à brèche secrète ». Une fonction à sens unique étant une fonction mathématique permettant de transformer un message en un résultat à partir duquel il est très difficile de retrouver le message original ("difficile" est une notion de théorie de la complexité ; en gros, ça veut dire qu’on pourrait retrouver le message original mais ça prendrait des milliards d’années… donc c’est considéré comme impossible). La "brèche secrète", c’est la clef ; quand on l’a, c’est facile de retrouver le message original. Les protocoles de cryptographie sont construits sur un assemblage de théorèmes mathématiques (groupes cycliques, théorie de la complexité...) ; cette connaissance fait partie du domaine public. Ces protocoles sont implémentés par différents programmes, dont certains en logiciel libre (donc publics aussi).

Le cas de la cryptographie asymétrique illustre une utilisation généralisée (y compris chez les bérets), pour des enjeux centraux (la propriété et l’authenticité), d’une solution accessible à tous : la théorie est publique et il existe des implémentations en logiciel libre. Pour ceusses que l’énumération de considérations théoriques et techniques rebutent, disons juste que, dans certains pays (pour être clair : ceux où on bute pour des idées), le simple fait d’échanger des mails justifie l’utilisation de la cryptographie (c’est un peu plus compliqué qu’une capote mais ça sauve aussi la vie).
 

Les réseaux sociaux, une révolution ?


L’engouement généralisé pour les réseaux sociaux est souvent présenté comme une révolution dans l’utilisation de l’informatique. Cette nouveauté repose plus sur des avancées matérielles que logicielles : la miniaturisation des ordinateurs (qui tiennent maintenant dans la poche arrière d’un jean), les interfaces homme-machine (avec les écrans tactiles) et le développement de l’infrastructure de communication (les gros tuyaux). Mais la révolution se situe plus dans l’usage qu’en font les utilisateurs qui, pour certains, se sont appropriés de façon inattendue cet outil. On passe évidemment sur l’erreur grossière d’échelle que font les gamins qui se retrouvent à plusieurs centaines à un goûter d’anniversaire ou, plus drôle encore, celle que font les militants qui comptent les amis facebook pour faire la révolution. On passe aussi sur les ados (et adultes) qui crèvent de publicité sur leur vie privée et sur les individus qui se désocialisent à force de fréquenter virtuellement leurs amis de réseaux sociaux.

Les réseaux sociaux offrent une possibilité de publication, de contrôle de cette publication, une possibilité de s’associer en dehors de toute structure hiérarchisée, de choisir ses interlocuteurs parmi le monde connecté… Sauf que, facebook, pour prendre le plus connu, base son modèle économique sur la centralisation des données qui, contractuellement, lui appartiennent : le contrôle de la publication s’applique aux autres utilisateurs mais pas à facebook. L’arnaque est de taille (bien que largement visible) : facebook mêle le fonctionnement horizontal qui séduit les foules et le fonctionnement centralisé qui séduit les décideurs (qui paient). On se retrouve avec un géant qui maîtrise, à l’échelle de la planète, les possibilités fonctionnelles de réseaux sociaux. Ça peut poser question si on rêve de s’affranchir de la propriété et de s’émanciper de l’emprise du capital. Cette considération vaut aussi pour les moteurs de recherche, dont google, qui fournissent un moyen de navigation efficace dans l’ensemble des contenus partagés et qui fournissent, par ailleurs, des informations (statistiques, entre autres) aux décideurs (une requête étant aussi une information). Encore une fois, la souplesse d’utilisation apportée par les progrès en IHM masque les enjeux réels et les coûts réels.
 

Casser le monopole et s’approprier l’outil


Il est cocasse de noter que des champions du libéralisme (libre circulation des marchandises et du fric, libre concurrence, etc) sont dans une position de quasi-monopole. Où est la concurrence stimulante ?

Plus sérieusement, il y a plusieurs stratégies face au phénomène facebook. Le boycott des réseaux sociaux est a priori le plus facile, mais il fait l’impasse sur les possibilités fonctionnelles qu’offrent ces outils (à la masse des utilisateurs, pas aux "décideurs"). La création d’un réseau social libre alternatif ne ferait probablement pas l’affaire non plus parce que les possibilités de publication sont dues à la position de leader de facebook : personne n’irait sur un autre réseau social puisque tout le monde est sur facebook. Du reste, des alternatives existent déjà, dont diaspora (sous licence AGPL v3) ou crabgrass (déployé sur riseup.net). Crabgrass est une application web de réseau social à l’usage de réseaux militants.

La démarche logiciel libre / open source donne des idées de stratégie pour casser le monopole. Ça pourrait passer par l’étude et le tri des fonctionnalités offertes par les réseaux sociaux, la standardisation de ces fonctionnalités, le développement de logiciels implémentant ces fonctionnalités, et enfin le développement de passerelles entre facebook et ces logiciels. Cette dernière étape étant censée casser la centralisation (un peu comme la dernière génération des outils de gestion de versions s’affranchit de la centralisation).

Il ne faut pas réduire l’informatique, fruit de la mathématique et de l’analyse de données, à Internet, qui n’est qu’un medium initialement créé pour partager les savoirs. La première est en perpétuelle mutation (aux rythmes de la recherche, des avancées technologiques, de la communauté logiciel libre – open source… et du capitalisme). Le deuxième devient un golem aux mains des pouvoirs.

On trouve, à travers le mouvement anarchiste et à proximité, de nombreux chantiers qui visent à l’émancipation, dans la plupart des domaines où le besoin est ressenti : organisation, alimentation, sexe, construction, transports, énergie, éducation, production… L’appropriation de l’outil informatique a déjà produit de nombreuses avancées. S’affranchir de cette confiscation par des leaders mondieux est un enjeu à la portée de la communauté.

Jean & François
Groupe de Rouen de la Fédération anarchiste

 

★ Informatique décisionnelle VS logiciel libre

Commenter cet article