Vive le « vieux-connisme » en informatique ! :)

Cet article m’a été inspiré par la longue réflexion de Didier sur la peste que sont devenues les rustines en informatique. C’est le deuxième, après un consacré à une geekerie un peu chtarbée 🙂

Oui, deux articles coup sur coup, ça fait beaucoup. Mais je dois dire que la prose de Didier m’a particulièrement inspirée. Et écouter l’excellent « Dehumanizer » de Black Sabbath (deuxième époque Dio) colle parfaitement au contenu de cet article 🙂

Dans son long article, Didier pointe du doigt ce qui rend l’informatique moderne indigeste, comme l’ajout de couches les unes au dessus des autres, que ce soit .net, DirectX ou des cadriciels à la electron.

On ne parle plus de développer les logiciels en langage de bas niveau, comme l’assembleur, le C ou le C++. Programmer en assembleur sur des Ryzen ou des Core iQuelquechose ? Bon courage 🙂

Depuis des années, on a droit à des cadriciels pour simplifier le développement… Mais les dits cadriciels (frameworks en anglais) sont devenus des monstruisités en terme de taille. Si on prend electron (orienté technologies internet), on se retrouve avec le logiciel lui même qui dépasse les 160 Mo en dehors des dépendances à installer.

Avec les dependances, on arrive à quoi ? Dans les 500 Mo ? Pour mémoire, MS-Windows XP – qui a eu la plus longue durée de vie à savoir 13 ans – avait les pré-requis système suivants en ce qui concerne l’espace disque : 1,5 Go minimum, 6 recommandés.

Je sais, on parle d’un OS sorti il y a 20 ans, mais voir qu’un cadriciel seul doit peser avec ses dépendances pas loin du tiers de ce qui était nécessaire au minimum pour installer MS-Windows XP, ça fait peur !

Comme l’a si bien dit Didier et je me permets de le citer ici :

[…]
Je vous laisse méditer sur le fait qu’un ordinateur d’aujourd’hui qui a plusieurs coeurs à plusieurs Gigahertz, des mémoires et disques SSD met presque plus de temps pour arriver à l’ouverture d’un traitement de texte que je ne pouvais le faire dans les années 80.
[…]

Je n’ai pas utilisé de traitement de texte dans les années 1980, mais lancer Microsoft Word au milieu des années 1990, ça demandait une trentaine de secondes sur des 486/Pentium et des disques durs qui n’étaient pas foudre de guerre.

Par comparaison – qui vaut ce qu’elle vaut – lancer LibreOffice depuis mon nvme, c’est facilement une dizaine de secondes. Et on ne peut pas dire que la bande passante d’un nvme est du même niveau que celle d’un disque dur des années 1995 à 2000.

L’informatique moderne est devenue à mes yeux – comme à ceux de Didier ? – une usine à gaz qui souffrirait de flatulences. Je veux bien qu’en l’espace de 20 ans, les capacités de calcul ait été multiplié par 10, par 30 ou 40 pour la bande passante. Mais les logiciels ont gagné une telle complexité que rustiner est la seule solution si on n’est obnubilé par une date de livraison donné.

L’exemple du jeu sorti tellement vert que c’était à la limite inédit, malgré un marathon de développement sur un an, c’est Cyberpunk 2077 qui a reçu une quantité de rustine à peu près équivalente à celle du jeu d’origine. Et 60€ pour cela… Ça fait mal quelque part !

Après on s’étonnera que le rétro-ludique avec son matériel standardisé, ses limites techniques d’une autre époque où les mauvais jeux étaient lynchés en place publique, creuse sa niche. Personnellement, cela ne m’étonne pas.

Bien entendu, j’apprécie l’informatique moderne pour les technologies qu’elle nous a apporté depuis une ou deux décennies. Mais les jeux finis à la pisse de coureur cycliste professionnel, non merci. Je m’en passe largement.

Oui, les jeux auxquels je joue pique les yeux et les oreilles. Mais ils n’ont pas besoin de la dernière carte graphique à la mode pour activer le ray-tracing et se retrouver avec l’intelligence artificielle des personnages non joueurs pire que ce pouvait proposer Quake en 1996. Et pourtant les ennemis étaient particulièrement cons à l’époque !

Mais après tout, chacun voit midi à sa porte, non ? 🙂

Allez, bonne fin de journée !

12 réflexions sur « Vive le « vieux-connisme » en informatique ! :) »

  1. Inflation du code, voila c’est l’inflation du code.

    En 1980 les machines étaient « petites » et coutaient cher. donc il fallait optimiser son code et bannir tout ce qui est inutile.

    De nos jour les machines sont « grosses » et relativement abordables ont peut donc « les gaver ».

    « plus la plomberie est complexe plus facilement elle se bouche. » dans star trek 3.

    PS « putin de capacha. » si on se plante il faudrait ne pas perdre le message mais juste ressaisir une nouvelle capcha merci.

    1. J’ai aussi été victime du vilain Captcha lol
      Ma méthode : faire un copier de sauvegarde de tout mon commentaire juste avant de le valider. Comme ça si ça foire j’ai juste à faire un coller et je retrouve tout.
      Sinon je suis surpris de la vitesse d’ouverture de LibreOffice sur le PC de Fred.
      Avec un Manjaro Gnome, et surtout un pauvre SSD en sata 2 pouces et demi et un processeur souffreteux chez moi ça s’ouvre en 5 ou 6 secondes grand max.

  2. Et encore … Pour écrire des applications machine learning , tu dois sois passé sur scikit kearn , sois tensor flow , tu dois acheter des GPU , passé par des middlewares , téléchargé des données d’entrainements . Cela reste la partie la plus simple , tu crées des interfaces graphiques , donc HTML 5/CSS3 , tu fais des tests d’intégrations et de sécurité . En viens le déploiement : Docker – Kubernetes .

    On n’écrit plus pour les systèmes depuis longtemps , le bas niveau c ‘est chiant , malgré les avancées du C++ . il est plus simple et économique de faire du multiplateforme : PHP – HTML 5- CSS3

  3. Avant les machines 16 bits , on passait le plus souvent par le BASIC , l’assembleur sur du z80 , je ne veux mème pas imaginé . Oui sur les bécanes 8bits , tout était cher et propriétaire . Pourquoi s’emmerdé sur des machines à courtes , voir très courtes durées de vie et optimisé un truc . Cela se gâta avec les Amiga et Atari , l’il y avait des OS , des bibliothèques , donc le C et C++ avaient des raisons d’être , surtout pour les faux jumeaux ST/1000 , une recompilation et basta .

    Concernant le raytracing , oui c ‘est exagéré

  4. Pour être honnête, word/excel 365 chez moi c’est 2sec pour l’ouverture. LibreOffice c’est bien plus.
    Office 365 mettre 5 sec pour l’ouverture.

    Pour ce qui est des frameworks, on le sait et on cherche à changer ça. Exemple, .NET 5 qui ne prendra que ce dont tu as besoin pour la livrée.

    Les applications ne se complexifient pas par plaisir des devs, mais à la demande des clients.
    Et comme les applications ont plus de besoins, les framework suivent.

      1. Pareil sous linux. LO prend son temps.

        Je ne sais pas si c’est une course à l’armement. Mais il faut réponde aux besoins des clients.
        Perso, je veux des gros cpu pour build le moins longtemps possible.

Les commentaires sont fermés.