IBM a besoin de programmeurs en langage COBOL, longtemps considéré comme obsolète

14 avril 2020 à 14h50
40
Programmation
© Pixabay

La pandémie de Covid-19 a créé des manques. Parmi eux, le secteur de la finance est à la recherche de programmeurs spécialisés dans le langage COBOL, un langage de programmation créé il y a plus de 60 ans et jugé par beaucoup comme obsolète.

IBM, qui estime que le langage concerne pourtant 220 milliards de lignes de code « activement utilisées aujourd'hui » a ainsi lancé un nouveau programme visant à faciliter le recrutement de personnes disposant de compétences dans ce domaine.


La revanche de COBOL

L'initiative, annoncée dans un communiqué de presse d'IBM, est une revanche pour COBOL. Créé en 1959, ce langage a surtout été utilisé pour des logiciels de gestion. Son nom, COmmon Business Oriented Language, peut en témoigner.

Pourtant, c'est un logiciel qui a longtemps gardé mauvaise réputation. Son surnom, l'acronyme peu flatteur Completely Obsolete But Omnipresent Language, résume le paradoxe de ce langage : il est extrêmement répandu alors que beaucoup le perçoivent comme complètement désuet. Une réputation injustifiée : encore en 2013, Bill Curtis, l'un des grands noms de la qualité logicielle affirmait que COBOL est plus performant que Java. D'après IBM, Cobol représenterait aujourd'hui 220 milliards de lignes de code. Selon le cabinet Silkhom, le langage est donc le plus largement déployé au monde, affirmant que « sa seule véritable force réside dans sa capacité à décrire les choses très clairement et de manière précise ».


Relancer les formations

Aujourd'hui, alors que le Covid-19 continue de se répandre aux États-Unis, certains secteurs d'activité sont sous tension. En période de paralysie économique, c'est notamment le cas du secteur bancaire. Or, IBM a affirmé il y a quelques années que 82 % des transactions financières s'effectuaient en COBOL. Dans son communiqué, il déclare aujourd'hui : « Au cœur de la pandémie mondiale de COVID-19, nos clients sont confrontés à des circonstances sans précédent », ajoutant que certains États américains « ont besoin de compétences supplémentaires en programmation pour apporter des modifications au COBOL ». Quelques jours plus tôt, le gouverneur du New Jersey a lancé un appel aux développeurs aptes à programmer dans ce langage.

En partenariat avec le projet Open Mainframe, IBM a donc ouvert deux forums. Le premier doit servir à mettre en relation des programmeurs COBOL avec les sociétés qui en ont besoin. Le second est dédié aux questions techniques, où des spécialistes peuvent fournir librement leur expertise. En outre, IBM a annoncé qu'il travaillait sur un cours gratuit pour apprendre le COBOL. Disponible sur GitHub, il doit remettre le plus vite possible ce langage sur le devant de la scène.

Alors que Silkhom estime que le COBOL représente 71 % des lignes de code actuellement utilisées, il n'est que le 44e langage le plus demandé par les recruteurs selon IEEE Spectrum.

Source : Ars Technica

Benoît Théry

Je veux tout savoir, et même le reste. Je me passionne pour le digital painting, la 3D, la plongée, l'artisanat, les fêtes médiévales... Du coup, j'ai toujours des apprentissages sur le feu. Actuellem...

Lire d'autres articles

Je veux tout savoir, et même le reste. Je me passionne pour le digital painting, la 3D, la plongée, l'artisanat, les fêtes médiévales... Du coup, j'ai toujours des apprentissages sur le feu. Actuellement, j'apprends à sourire sur mes photos de profil.

Lire d'autres articles
Vous êtes un utilisateur de Google Actualités ou de WhatsApp ? Suivez-nous pour ne rien rater de l'actu tech !
google-news

A découvrir en vidéo

Rejoignez la communauté Clubic S'inscrire

Rejoignez la communauté des passionnés de nouvelles technologies. Venez partager votre passion et débattre de l’actualité avec nos membres qui s’entraident et partagent leur expertise quotidiennement.

S'inscrire

Commentaires (40)

Bombing_Basta
Faut appeler Starbuck!<br /> Comprenne qui pourra
Elinyhs
Ou les Lords
sebstein
Ce n’est pas parce qu’un langage est performant qu’il n’est pas désuet… à ce prix là, ASM serait au top de la modernité.
darkpe
viper VII ?
trollkien
en 2006 j’ai croisé un ancien programmeur KOBOL qui avait fini « formateur » aigri dans une section informatique de l’AFPA, faute de travail en tant que dev sur ce language qui était sa spécialité.<br /> Voir ce genre de niouze en 2020 est… bizarre on va dire.
TotO
"Bill Curtis, l’un des grands noms de la qualité logicielle affirmait que COBOL est plus performant que Java. "<br /> En même temps, si JAVA était performant ça se saurait.
toNNio
Oui et même si vous un programmeur en Algol68, c’est demandé !
Bombing_Basta
Mk VII<br /> Oublie pas le Mk
KlingonBrain
en 2006 j’ai croisé un ancien programmeur KOBOL qui avait fini « formateur » aigri dans une section informatique de l’AFPA, faute de travail en tant que dev sur ce language qui était sa spécialité.<br /> Voir ce genre de niouze en 2020 est… bizarre on va dire.<br /> Bah, tu sais, les employeurs, ils veulent pouvoir virer quand ils veulent. Et ils s’attendent à retrouver la personne disponible quand ils en auront besoin… 10 ans après…<br /> Quand tu vire des gens et qu’ils ne trouvent plus de boulot, ils changent de métier ou de spécialité et même parfois de région. Après les employeurs viennent pleurer : ouin,ouin on trouve pas de programmeur en machin chose. Ouin,ouin les gens veulent pas travailler. Ouin, ouin l’état ne nous fournit pas tout ce qu’on demande.<br /> Si un employeur à besoin de programmeurs en Cobol ? Et bien c’est facile, il embauche des programmeurs et il leur paye des formations en cobol. Et après il les garde…<br /> IMHO c’est pas au contribuable de payer des formations alors qu’il y a quelques années, on a recyclé des tas de vieux programmeurs en livreur de pizza.
KlingonBrain
Ce n’est pas parce qu’un langage est performant qu’il n’est pas désuet… à ce prix là, ASM serait au top de la modernité.<br /> En même temps, rappelons qu’aucun langage de programmation ne peut fonctionner sans le langage machine(appelé assembleur par abus de langage) qui est pour rappel le seul langage qu’un processeur peut comprendre.<br /> Bien qu’il soit aujourd’hui moins pratiqué de manière directe, la programmation en langage machine reste pratiquée dans beaucoup plus de cas de figure que beaucoup de gens l’imaginent.
Ma_Be
En tant que coboliste (et d’autres langages bien plus récents), je peux vous certifier que le language fonctionne parfaitement (pourquoi donc en changer, et par quoi?), est omniprésent (chaque jour vous l’utilisez sans le savoir), et qu’il y a depuis bien longtemps une pénurie de développeurs en Cobol: ce n’est pas une question de covid.<br /> Dans ma région nous recherchons constamment des cobolistes et n’en trouvons pas, et c’est le cas dans beaucoup de pays.
papem
Le Cobol s’apprend en une journée si on a un QI normal…
Niverolle
Donc, si je comprend bien, savoir programmer en COBOL fait partie des comorbidités du COVID-19… Est-ce que par hasard Fortran et ADA n’en feraient pas eux aussi parti ? Parce que dans ce cas, je serais vraiment mal; c’est qu’il me reste un ouvrage de chaque dans ma bibliothèque !<br /> Bon, à partir de maintenant, je jure solennellement de ne plus taper que du Javascript, et ce exclusivement pour du projet web jetable !!!
Denis_PHILIBERT
Bonjour [Ma_Be]<br /> Vous écrivez :<br /> « Dans ma région nous recherchons constamment des cobolistes et n’en trouvons pas » :<br /> Cela m’intéresse, j’ai 10 ans d’expérience cumulée sur Cobol, et je cherche actuellement une mission.<br /> Savez-vous qui je pourrais joindre ?<br /> Cordialement.
sebstein
Le langage machine c’est une suite de 0 et de 1. Assembleur n’est pas du langage machine. C’est le langage qui s’en rapproche le plus, parce qu’une simple « traduction littérale » permet de passer de l’asm au binaire, mais ce n’est pas similaire.<br /> Ce n’est pas qu’un langage de programmation ne peut fonctionner sans langage machine, ce sont deux choses différente. L’un permet une représentation compréhensible par l’homme d’un programme, l’autre est le représentation compréhensible par le processeur de ce même programme.<br /> Mais, je ne vois pas pourquoi tu réponds ça par rapport à mon commentaire… ASM est ultra performant (s’il est bien utilisé), puisqu’il représente exactement ce à quoi le processeur s’attends, il n’en reste pas moins que, lorsque l’on peut l’évider, on l’évite, parce que le gain en performance ne justifie que rarement l’énorme perte de temps, de risque d’erreur et difficulté de maintenabilité.<br /> Je doute que, comme tu le dis, beaucoup de développement se font encore en ASM. Même la part de code ASM des noyaux Linux ou Windows est minime, le reste c’est du C/C++, pareil en électronique.
kijimo
Les banques françaises grosses consommatrices de cobolistes vont les former puis chercher au Magreb. Ca revient moins cher. Et on peut les virer facilement.<br /> (un coboliste de 40 ans d’expérience toujours actif et qui en a mare).
micquer2
meme si c’est exact tu peux pas te permettre aujourdhui de te passer des langages modernes pour la rapidite d’exuction et la visibilite du programme !
KlingonBrain
Personne ne dit le contraire.<br /> Mon propos était d’expliquer que la programmation en langage évoluée et la programmation en langage machine ont chacun leur domaine d’application.<br /> Même si le temps ou l’on programmait beaucoup de choses en langage machine est révolu, cela ne rends pas pour autant cette programmation obsolète. Parce qu’il y a des choses qu’on ne peut tout simplement pas faire dans un langage de haut niveau.
aladin_78
Si qq a besoin d’un programmeur assembleur Motorolla 6502, je peux aider…
KlingonBrain
Le langage machine c’est une suite de 0 et de 1. Assembleur n’est pas du langage machine. C’est le langage qui s’en rapproche le plus, parce qu’une simple « traduction littérale » permet de passer de l’asm au binaire, mais ce n’est pas similaire.<br /> Pas tout à fait.<br /> Le langage machine binaire et sa forme symbolique compréhensible par l’humain sont juste deux représentations différentes de la même chose.<br /> A l’origine, le mot « assembleur » désigne le programme qui permet de passer de passer de la forme compréhensible par l’humain à celle compréhensible par la machine. Et le désassembleur permet de faire l’inverse. Au passage, je précise que j’ai écrit dans ma vie plusieurs compilateurs et même un assembleur.<br /> Donc, c’est par abus de langage qu’on a utilisé le mot assembleur pour parler du langage machine et de la forme symbolique compréhensible par l’humain. Mais bon, ce n’est pas un problème puisqu’en général on se comprends.<br /> Et puis, si on était rigoureux en informatique, on ne pourrait plus s’amuser à voir les mathématiciens et les scientifiques devenir fous <br /> Ah le kilo à 1024, quel bonheur pour tromper l’ennemi. Et le signe égal pour les assignations… <br /> Ce n’est pas qu’un langage de programmation ne peut fonctionner sans langage machine, ce sont deux choses différente. L’un permet une représentation compréhensible par l’homme d’un programme, l’autre est le représentation compréhensible par le processeur de ce même programme.<br /> Ce qui ne change rien à ce que j’ai affirmé, à savoir que votre joli programme écrit en langage évolué ne servira jamais à rien s’il n’est pas traduit en langage machine ou interprété par quelque chose qui est exécutable.<br /> D’ailleurs, pour les langages évolués, ce que vous dites la peut se discuter (même si ce n’est pas non plus complètement faux) dans la mesure ou il s’agit plus d’une translation que d’une représentation différente. Il n’existe pas de correspondance directe entre une instruction en langage évoluée et une instruction en langage machine.<br /> Même si on considère le concept de groupes d’instructions, il n’existe pas non plus de correspondance simple, ni une manière unique de traduire une instruction en langage évoluée vers un groupe d’instructions en langage machine. Deux compilateurs ne vont pas générer le même code et la compilation n’est que partiellement réversible (dé-compiler est très difficile).<br /> Mais, je ne vois pas pourquoi tu réponds ça par rapport à mon commentaire… ASM est ultra performant (s’il est bien utilisé), puisqu’il représente exactement ce à quoi le processeur s’attends, il n’en reste pas moins que, lorsque l’on peut l’évider, on l’évite, parce que le gain en performance ne justifie que rarement l’énorme perte de temps, de risque d’erreur et difficulté de maintenabilité.<br /> Programmer en langage machine n’est ni une perte de temps, ni une source d’erreur si vous utilisez ce langage à bon escient, quand son utilisation est indiquée et de la manière dont il faut le faire.<br /> Ce qu’il faut comprendre c’est que contrairement aux idées reçues, la programmation en langage machine n’est pas obsolète et ne le sera jamais si l’on considère les usages qui sont pertinents pour ce langage.<br /> Je doute que, comme tu le dis, beaucoup de développement se font encore en ASM. Même la part de code ASM des noyaux Linux ou Windows est minime, le reste c’est du C/C++, pareil en électronique.<br /> Sauf que la quantité de lignes de code ne dit rien sur la pratique d’un langage. Car cela n’est ni représentatif du temps passé, ni de l’importance de ce code.<br /> Aujourd’hui, le langage machine est utilisé pour de petites portions de code très fortement optimisées (donc qui comptent beaucoup dans la performance d’un ordinateur) ou pour utiliser certaines fonctions particulières des processeurs. Dans ce cadre, cela peut demander plus de temps d’écrire 10 lignes de code en langage machine que 5000 lignes pissées en Java.<br /> Donc ce n’est pas en comptant les lignes de code que vous aurez une idée du nombre d’heure que les programmeurs consacrent a du langage machine.<br /> Au passage, il n’y a pas que les noyaux et les drivers qui utilisent des portions de code en langage machine. C’est le cas de beaucoup de logiciels performants.<br /> Et il y a bien d’autres usages, par exemple dans le déverminage de programmes. Devant un comportement aberrant et incompréhensible dans un programme dont le code est correct, il faut soupçonner un bug du compilateur. L’étude et le traçage au niveau langage machine permet de savoir rapidement ce qui se passe.<br /> Même si c’est un cas de figure qui n’arrive pas tous les jours, j’ai rencontré le cas plus d’une fois. Et ceux qui ne pratiquent que les langages évolués seront incapables de trouver le problème.<br /> On pourrait ajouter que la maîtrise et la compréhension du langage machine améliorent beaucoup la compréhension des programmeurs par rapport à ce qu’ils écrivent en langage évoluées. Ce qui améliore en pratique beaucoup leur capacité à écrire du code efficient.<br /> pareil en électronique.<br /> Pas vraiment.<br /> Dès lors qu’il y a besoin d’un contrôle du timing au delà d’une certaine précision, on peux oublier tous les langages évolués, même le C.<br /> Et il existe bien d’autres cas de figure. Par exemple sur les petits microcontrôleurs, la programmation en langage évoluée peut s’avérer pénible. J’ai vu plus d’un programmeur s’y casser les dents à tenter de faire ça en C. « je comprends pas, j’appelle la fonction et ça fait n’importe quoi, ça fait 3 semaines que je tourne en rond ». Bah ouais jeune padawan, t’as une pile riquiqui et c’est vraiment vite fait de l’écraser. T’aurais fait ça en langage machine, t’aurais gagné du temps… et cerise sur le gâteau, t’aurait encore des cheveux
Guillaume1972
KlingonBrain
L’Intel Z80 vaincra
Monba
La force du cobol est dans la manipulation des fichiers, maintenant que tout le monde s’oriente vers les bases de données, le cobol perd de son attirance; on continue à s’attacher au cobol pour la définition des variables en display, aucune perte de données monétaires, ce que cherchent les financiers<br /> Je pourrais bien rendre service à ceux qui le désirent en télétravail
juju251
Je pense qu’il a fait exprès :<br /> Quelques posts plus haut, a été posté « Motorola 6502 » (peut-être par erreur), or le 6502 a été créé par Mos Technology et non Motorola. <br /> Edit : Mais oui, en effet, le Z80 c’est Zilog.
KlingonBrain
Je pense qu’il a fait exprès<br /> Ouaip…
KlingonBrain
T’a mordu mon troll
kellog89
Ah et c’est où ta région? Je suis un ancien développeur Cobol recyclé.
Ryukenalpha
Attention, les TV Samsung depuis 2018 ne supportent pas le dts, et c’est très gênant !
Kfabien
Il y a longtemps qu’il manque de programmeurs Cobol
juju251
fred1968:<br /> Trop long le message, et comme je sortais de convalescence forcée par des apothicaires rancuniers, je me suis économisé pas tout lu.<br /> [MODE GENTIL TROLL ON]<br /> D’ailleurs les predateurs rodent, j’en ai un qui me colle au post.<br /> [MODE GENTIL TROLL OFF<br /> Je ne sais pas qui est le plus rancunier …<br /> ce qui est certains c’est que si tu continues sur cette voie là, tu vas avoir vite fait d’y retourner.<br /> Edit : Il n’y aura pas 50 avertissements.
jpato72
Comme Denis_PHILIBERT, je suis coboliste en recherche d’une nouvelle mission et ce dans le grand-ouest.
Ma_Be
Bonjour Denis_Philibert, bonjour jpato72,<br /> Énormément de disponibilités en région Parisienne, sur Strasbourg, Nantes, Dijon, etc.<br /> (« Énormément ? Mais ça fait 20 fois moins de postes qu’en C# par exemple » =&gt; oui, mais pour 100 fois moins de développeurs).<br /> Peu d’annonces car la main d’oeuvre n’existe pas: le mieux est de contacter les services informatiques des banques, assurances, ou encore des ESN (si possible les grosses qui ont des contacts privilégiés avec ces entreprises).<br /> Pour ceux qui apprennent le cobol en une journée : félicitations, vous pensez qu’un « Hello World » avec Visual Cobol représente le monde du mainframe donc vous n’y connaissez rien. Batch, cics, IMS, jcl, etc, sont nécessaires à maîtriser : devient-on développeur web parce qu’on a appris uniquement le HTML une journée ? Niet <br /> Oui, le cobol est très verbal comme langage, mais il évolue régulièrement et l’optimisation du code est primordial sur les mainframes!
edibos
On ne doit pas être dans la même région. En recherche d’emploi, ayant pratiqué le COBOL plusieurs années, personne n’est venu me demander …
edibos
Le COBOL s’utilise aussi très bien avec les SGBD
esna50
Demain, ne vont-ils pas réclamer des programmeurs en GAP ?
haliway
IBM c´est vraiment des rigolos, c´est les premiers à avoir persuadé les clients d´outsourcer la programmation COBOL ou l´administration de systèmes AIX le tout en Inde et ensuite ils viennent pleurnicher que les compétences n´existent plus ailleurs.<br /> Au bout d´un moment il faut être cohérent…<br /> Ils ont fermé la Gaude (et tous les experts sont partis) et ensuite pareil ils viennent essayer de trouver les mecs qu ils ont remercié car tu comprends y a des clients bah non fallait y penser un peu avant…
haliway
Tkt IBM ils vont leur envoyer les indiens qu´ils ont formé en masse en COBOL… Ca évitera de payer les charges sociales occidentales.
Voir tous les messages sur le forum
Haut de page

Sur le même sujet