Il coronavirus continua a causare problemi, anche in modi che non ci saremmo mai immaginati. Un esempio è l’improvvisa e urgente richiesta di programmatori di COBOL da parte degli Stati Uniti per far fronte all’emergenza.
I governatori del New Jersey, Connecticut e Kansas hanno promosso la ricerca di programmatori volontari che possano gestire i sistemi di previdenza sociale pubblica, vecchi ormai di più di 50 anni.
Il COBOL (COmmon Business-Oriented Language, ovvero linguaggio orientato alle applicazioni di business) nasce nel 1961 come linguaggio atto all’elaborazione di dati commerciali. Tra gli autori troviamo Grace Murray Hopper, che ebbe un ruolo primario nel suo sviluppo.
Il primo standard validato dall’ANSI è il COBOL 68. A seguire ci furono il 74 e l’85 (relativi all’anno di sviluppo); quest’ultimo è lo standard su cui si basano molti dei programmi ancora in uso. La grande utilità del COBOL ai tempi va ritrovata nella maggiore velocità di input/output, nell’artimetica con il punto decimale fisso e la sintassi molto simile al linguaggio naturale.
In questo linguaggio non c’è la strutturazione a blocchi che conosciamo bene, l’I/O è orientato ai record e non allo stream ed è organizzato per frasi. È possibile specificare più istruzioni in un’unica frase, che termina col punto. Per costruire le istruzioni del linguaggio si utilizzano parole chiave, costanti e operatori matematici. In particolare, le parole chiave fondamentali sono i verbi imperativi: ognuno di essi indica un comando che si vuole eseguire.
Mancante della struttura a blocchi, il linguaggio prevede che le variabili siano sempre globali e non ci siano scope impliciti. Ogni variabile fa parte di un record, ovvero un insieme di campi che costituiscono delle informazioni. Ogni record ha una dimensione specifica e stabilita, a seconda se questa verrà registrata sulla memoria di massa o se verrà stampata.
Si stima che attualmente ci siano ancora 220 miliardi di linee di codice in COBOL ancora in uso. I sistemi che più lo utilizzano sono quelli bancari: vecchi di 40 anni, il costo per riscriverli con linguaggi più moderni e conosciuti è sempre stato troppo alto per le aziende, che hanno quindi continuato a utilizzare i vecchi sistemi.
Mentre il mondo informatico avanzava verso linguaggi più nuovi e si modernizzava, i sistemi governativi e bancari rimanevano con un linguaggio vecchio di 60 anni. Il problema, adesso, è trovare programmatori che conoscano il COBOL e che siano in grado di effettuare la manutenzione di questi sistemi.
Il linguaggio non viene più insegnato nelle Università (salvo rari casi), e a ragione. Il risultato è che le uniche persone che lo conoscono sono i programmatori degli anni 70-80, che ora sono in pensione. E in questo periodo particolare che stiamo attraversando, i sistemi gestionali e bancari rischiano un collasso a causa dell’alta disoccupazione e delle relative richieste di supporti allo Stato.
In America, in particolare, il problema è molto sentito: con un tasso di disoccupazione del 13% (contro il 4.4% di un mese fa), i sistemi hanno un bel da fare nel gestire i disoccupati e relative assicurazioni. La situazione è talmente grave che il Congresso ha deciso di dare la stessa cifra a tutti i lavoratori in disoccupazione, invece che utilizzare i sistemi per calcolare il bonus di ognuno.
I sistemi rischiano di crollare a fronte dell’altissimo numero di richieste ed elaborazioni da effettuare. Le infrastrutture informatiche sono al limite, e c’è un disperato bisogno di persone in grado di gestirle, manutenerle e garantirne il funzionamento in un momento di crisi mondiale. Per questo motivo i governatori di diversi stati americani si sono rivolti ai vecchi programmatori, nella speranza che potessero fornire aiuto con la loro conoscenza.
IBM, una delle aziende che ha più supportato il COBOL e che offre ancora mainframe in quel linguaggio, rilascerà in settimana un corso gratuito sul COBOL, su Coursera, aperto a tutti i programmatori.
Ha inoltre aperto un forum per facilitare la ricerca di programmatori con le conoscenze di COBOL e il matching con le aziende con cui collaborare.
Il coronavirus sta cambiando il nostro modo di vivere, sotto ogni aspetto. Il problema dei sistemi obsoleti che si sta verificando in questo momento è un forte monito per gli stati. Al termine dell’emergenza globale dovranno rivalutare l’importanza che va data alla modernizzazione delle infrastrutture informatiche.