jeudi 1 février 2007

Loi de Moore / Loi de « Lourd » ... match nul ...

Le logiciel, une technologie qui régresse ... !?
Préambule important : je parle ici de la technique informatique, c'est à dire ce que nous avons sur nos bureaux actuellement, pas de la science informatique qui elle non seulement fait des progrès phénoménaux mais en plus crée des ponts vers à d'autres sciences fondamentales comme la biologie, la physique quantique, la sociologie, etc... C'est justement cet écart que je veux montrer ici et essayer d'en trouver les raisons...

Cette réflexion est partie d'un souvenir de galère quand j'éditais mon rapport de stage ingénieur en 1995, sur un PC sous Windows avec Word ... Le document commençait à dépasser une soixantaine de page avec quelques images et schémas, et l'édition devenait extrêmement difficile car le programme plantait régulièrement , la mise en page était hasardeuse et chaque sauvegarde était suffisamment longue pour être gênante... Ce souvenir m'est revenu à l'esprit très récemment en éditant mon support de cours du deuxième semestre, qui comporte environ une soixantaine de pages avec quelques schémas et images... L'édition est difficile, car des bugs rendent la mise en page passablement aléatoire , et la sauvegarde est péniblement longue ...

Pourtant plus de 10 ans séparent ces 2 situations très similaires, 10 ans de développement, 10 d'évolution. La loi de Moore sur cette période stipule que l'électronique va normalement 64 à 128 fois plus vite. Cette loi est une réalité, l'ordinateur que j'utilise est facilement 64 fois plus rapide que celui que j'utilisais en 1995, ou plutôt l' électronique va 64 fois plus vite, mais le couple électronique et logiciel qui constitue l'ordinateur, va finalement à peu près à la même vitesse qu'il y a dix ans. En terme de fonctionnalités je n'ai rien de plus (dont j'ai besoin pour éditer un document) : du texte des image, des figures, un sommaire, et une mise en page automatique.

Il y a un statu quo fonctionnel sur les 10 dernières années, alors que la loi de Moore exprime un progrès fulgurant de l'électronique. Cela veux bien dire que l'évolution logiciel à « absorbé » les progrès de l'électronique.

Dit autrement , si on avait figé tout le logiciel en 1995 on aurait la même situation qu'actuellement, mais au moins, ça tournerait 10 fois plus vite. C'est bien le signe que l'évolution logicielle, du point de vue fonctionnel, régresse, car on on aurait une situation plus confortable si le logiciel avait été figé. L'évolution logicielle de ces 10 dernières années est donc facteur de régression pour l'informatique pratique.

Si on voulait comparer cela à l'industrie automobile c'est comme si on avait actuellement des véhicules qui n'avaient pas évolué depuis plus de 10 ans. Ou plutôt seules leur esthétique et l'ergonomie du tableau de bord auraient changé. Donc on enlève les air bags, les ABS et ils consommeraient et pollueraient bien plus. Si on ajoute à cela l'émergence des virus, vers, spam , spyware, troyens, et autres, ont peut se dire qu'en plus ils seraient plus dangereux à utiliser....

Cela me semble suffisamment important pour y attacher un nom. Voici ma proposition :
  • Loi de Moore : tous les 18mois l'électronique double sa vitesse de fonctionnement (et approximativement au même prix).
  • Loi de « Lourd »: tous les 18mois le logiciel est deux fois plus lourd/volumineux et mal écrit ce qui amène à un doublement du temps d'exécution (sur une même machine).
  • Match nul : le bilan de ces deux lois font que la productivité informatique stagne.

J'ai bien conscience que cette réflexion est assez sombre et pessimiste, il faut quand même tenir compte d'un certain nombre de progrès indéniables.
  • Les technologies P2P : c'est indéniable c'est une belle technologie mais qui en pratique est actuellement déconnecté de toute augmentation de productivité professionnelle. De plus cela a amené à l'augmentation des DRM qui en pratique sont une perte de liberté pour le consommateur. Donc je ne pense pas qu'on puisse décider aujourd'hui si l'impact du P2P est quelque chose de globalement positif ou négatif...
  • Les logiciels libres : C'est un progrès fantastique, mais c'est un progrès de modèle économique, ce n'est pas un progrès technique même si cela amène théoriquement à un progrès technique par l'ouverture du code (les logiciels libres sont réputés plus stable que les logiciels propriétaires). Pour la petite histoire le logiciel d'édition de texte qui m'a fait suer sur mon support de cours est open office . Il s'agit d'un est un logiciel libre en version 2.1 (donc théoriquement très loin d'une version béta).
  • Les grilles de calcul ou grid permettent de fédérer des ordinateurs hétérogènes pour en cumuler leur puissance de calcul, progrès technique et scientifique évident. Mais qui en pratique ne profite pas à l'utilisateur standard de l'informatique, mais plus aux scientifiques, et à quelques rares grandes entreprises.
  • Les progrès en simulation numérique (construction automobile, aéronautique ou même nucléaire, ...) , sont eux aussi notables même si ils sont en bonne partie dus au progrès en électronique, le logiciel à quand même évolué mais en pratique le nombre d'industries impactées par ce progrès est relativement limité.
  • Les progrès des jeux vidéo sont eux tout à fait exceptionnel. Il sont pourtant bien plus complexe qu'un traitement de texte, mais bien plus stable et plus innovant... C'est notable et très intéressant. On y reviendra dans la suite de ce billet. Il quand même décevant de se dire que le principal progrès de ces 10 dernières années en informatique visant le grand public se situe (uniquement ?) dans le jeu vidéo.
Pour revenir à mes galères d'édition, les puristes me diront d'utiliser LaTeX pour créer un document. Ce logiciel est plus un compilateur/processeur de texte qu'un éditeur de document de type word ou open office... Ce logiciel existe depuis 1985, il ne s'agit donc en aucun cas d'un progrès récent. Ce logiciel à évidement évolué depuis, mais il est loin d'être utilisable par les utilisateurs classiques de l'informatique (même « l'utilisateur 2.0 » ne s'y risque pas ;-)). Il est quand même extrêmement décevant de se dire que en 2007 il n'existe pas de logiciels wysiwyg (ce que LaTeX n'est pas) fonctionnels pour l'édition de documents. Fonctionnel voulant dire , pour moi , être capable d'éditer un document de plus de 60 pages avec quelques figures et images et un sommaire automatique, le tout devant permettre une interaction sans délais... Ce qui me semble assez raisonnable comme exigence en 2007, mais qui pourtant n'existe pas de nos jours.
[billet à suivre... on parlera des hypothèse pouvant expliquer la loi de « lourd » ainsi que son évolution futur...]