Vous la connaissez sans doute
C'est l'histoire du développeur COBOL qui a fait fortune avec les maintenances liées au passage à l'an 2000. Avec son argent, il décide de se faire cryogéniser et de tomber dans un sommeil (presque) éternel.
Un jour quelqu'un le met au micro-onde et le réveille. Le développeur COBOL ouvre les yeux et demande: pourquoi vous me réveillez ? L'autre lui répond: on est en l'an 9999 , et il paraît que vous savez développer en COBOL...
Du linéaire A au français
Et bien oui, le COBOL reste encore massivement utilisé par de très riches entreprises, qui ont fait basculer leur gestion de documents (et transactions), du mode papier/secrétaire, vers l'IA/mainframe. Le proglème est que COBOL, est ancien, très ancien, environ 20 générations de processeurs (une tout les 3 ans en moyenne). C'est comme si on codait et communiquait avec une forme de langage figée depuis 5 siècles (humains). Ce qui serait plutôt difficile.
Sans être impossible a faire, écrire du code en COBOL requiert un suivit assez lourd et étrange de contraintes concernant l'écriture du code (sans parler des limites dans la gestion de variables et de la mémoire système). Oui, COBOL reste encore utilisé. Oui, COBOL ne va pas disparaitre de suite. Mais, COBOL est inadapté aux évolutions techniques depuis plus de 25 années. Le développement de processeurs multi-coeurs, à fréquence variable. L'usage de systèmes de stockage de données reposant sur des supports mélangés (cartouches magnétiques, HDD, SSD, optiques, et autres). Evolution des technologies de communication, de la variation de signal électrique modulé pour aboutir (aujourd'hui), à l'usage de la lumière pour transmettre des paquets de données mélangées via fibre optique. Cela COBOL ne le gère pas en direct, mais fait appel à des bibliothèques de fonctions écrites en assembleur, pour chaque module utilisé.
Et je ne parle pas des problèmes de sécurité des communications, et de ceux liés à la conservation des données (ainsi que leur authentification). Car, oui les grands groupes restent sous COBOL, plus par paresse (et avarice fonctionnelle), que pour offrir une réelle sécurité.
Et non, COBOL (et ses utilisateurs), vont devoir rattraper le reste du monde. Sans oublier le principal problème, pour les développeurs informatiques : se former à ce langage. Car les lieux de formation sont rares, et donc cela coûte cher. Sans compter les EDI, peu nombreux, développés en mode fermé (donc de fiabilité non garantie, sinon par leurs propres fournisseurs, ce qui est de confiance faible, voire nulle). Et le principal problème, le vieillissement des systèmes basés sur COBOL.
La durée de vie d'un système de gestion (mainframe/station de travail/poste d'accès aux données/data center/ et autres) reste limitée. L'usure physique des composants (qu'il s'agisse des disques durs ou des processeurs et des cables de communication) est réelle. Un CPU peut tenir jusque 30 ans (si bien fabriqué, et jamais stressé), de même qu'une cartouche de données (bandes magnétiques IBM par exemple). Mais le reste du système, n'a pas cette chance. Comme la carrosserie d'une voiture, et ses pneus. Le moteur d'une voiture peut rester fonctionnel des décennies, mais le reste (amortisseurs, pneus, capot, sièges, etc.), tout ça provoque la destruction de toute la voiture.
Alors, oui, allez-y apprenez COBOL, foncez vers les banques, assurances, gouvernements, et autres grandes institutions qui refusent d'évoluer. Mais quand leurs systèmes seront vraiment dépassés, et surtout hors d'usage et sans maintenance possible (absence de pièces détachées pour réparer), il sera trop tard pour tout. Durée de migration des données, services proposés, sécurité des communications, tout cela ne pourra plus être fournit avec COBOL.
Même RSA est fragile. Son asymétrie ne garantit pas son infaillibilité (sans parler de l'algorithme de base).
Donc, pour moi COBOL doit être remplacé par un langage beaucoup plus récent, et surtout construit pour aller avec le matériel actuel dès sa conception. Sinon, malgré sa continuation, son ancienneté causera sa perte. Comme une vieille espèce animale face à un nouveau virus.:aie: