Il suo nome è COBOL, acronimo di COmmon Business-Oriented Language, ed è uno dei più vecchi linguaggi di programmazione esistenti. Sebbene la sua natura sia avulsa alla conoscenza, il nome è già stato probabilmente sentito da chi abbia compiuto anche il più superficiale degli studi informatici, poiché quando si parla di COBOL si parla davvero delle basi, le origini, l’essenza. Tuttavia parlare di COBOL non significa necessariamente parlare di passato e, anzi, metter mano ai numeri regala uno sguardo del tutto diverso su quella che è la realtà dei fatti: COBOL è oggi più vivo che mai, soprattutto in ambito business, e la sua presenza è capillarmente e silenziosamente presente nella vita quotidiana.
Miliardi di persone in tutto il mondo, anche se non ne hanno alcuna consapevolezza, ogni giorno utilizzano più volte dispositivi e piattaforme che sfruttano questo linguaggio di programmazione le cui radici affondano addirittura negli anni ’60. Basti sottolineare che oltre il 70% delle transazioni business sono svolte in COBOL, linguaggio di programmazione che si trova, per esempio, alla base dei sistemi delle banche e dei bancomat (il 95% di tutte le transazioni ATM ne utilizzano il codice).
COBOL è un linguaggio di programmazione noto anche per la sua grande stabilità tanto che, per esempio, gli applicativi scritti in passato hanno permesso di evitare il pericolo del temibile Millennium Bug che aveva minacciato tutte le infrastrutture digitali del mondo. COBOL giunge dunque da un passato remoto per essere ancora tremendamente attuale nonostante oggi si preferisca, almeno all’apparenza, l’utilizzo di linguaggi di programmazione come JAVA o C++. Un vero peccato perché, come riporta un’indagine di Micro Focus, sono ancora molte le realtà aziendali che cercano programmatori COBOL e dunque la conoscenza di questo linguaggio di programmazione può generare anche nuove opportunità di lavoro.
Anche il mondo accademico è concorde sul fatto che COBOL possa ancora essere un’opportunità in quanto secondo un sondaggio il 58% dei dirigenti scolastici di 119 università nel mondo dichiara che questo linguaggio di programmazione dovrebbe essere inserito nel piano di studi. Peccato però che nei fatti la ricerca evidenzi come lo scorso anno il maggior numero di programmatori inseriti nel mondo del lavoro siano stati sviluppatori Java, seguiti dai programmatori in C# e C++, mentre il numero di laureati con competenze COBOL è stato di gran numero inferiore (5%).
La logica suggerirebbe però di agire altrimenti: sebbene la domanda di lavoro nel mondo COBOL sia in lento declino, l’offerta di competenze è al tempo stesso crollata, aprendo così nuove opportunità nonostante il linguaggio sia considerato dai più una sorta di ferraglia del passato.
COBOL, ritorno al futuro
COBOL è stato progettato nel 1959 nel contesto della Conference on Data Systems Languages e nel 1961 era ufficialmente portato al debutto. Il suo sviluppo nasce dalla volontà di creare un linguaggio di programmazione che permettesse di elaborare software in grado di girare su più macchine (aspetto oggi tanto comune quanto impensabile ai tempi). La sua origine è in gran parte firmata dal lavoro di Grace Murray Hopper (deceduta il 1 gennaio 1992), pioniera dell’informatica che per prima inventò il termine “bug” come accezione per descrivere le disfunzioni di una macchina: curioso, ma probabilmente non casuale, il fatto che la stessa mente che ha etichettato le vulnerabilità abbia poi dato origine ad uno dei linguaggi di programmazione più longevi della storia dell’informatica, divenendo addirittura salvagente contro quel Millennium Bug che rischiava invece di appiedare l’intero ecosistema basato su codice binario.
In breve il COBOL divenne una sorta di standard e, proprio grazie alla sua trasversalità, divenne la lingua comune per tutte le applicazioni legate al mondo delle istituzioni, della sicurezza e del commercio. Nel corso degli anni il linguaggio ha saputo evolversi per adattarsi alle nuove esigenze per arrivare ai tempi moderni con l’approvazione dello standard COBOL2002 (passando per i vari step intermedi Cobol68, Cobol74 e Cobol85) che include elementi di programmazione ad oggetti e tutte quelle caratteristiche oggi necessarie per programmare piattaforme ed applicativi moderni.
COBOL 2002 è uno standard riconosciuto e registrato come ISO/IEC 1989:2002. Tuttavia una nuova versione ha visto la luce da breve: ISO/IEC 1989:2014 è oggi quella che da più parti viene battezzata come la versione definitiva di COBOL, l’ultima, quella che ne sigilla le regole in qualità di lingua morta. COBOL 2014, potenzialmente l’ultimo, la tappa che ne chiude il percorso.
La fine di un impero? La storia insegna che con COBOL è meglio evitare qualsivoglia sentenza, perché il declino è tanto lento quanto difficoltoso è l’abbandono di un linguaggio che tanta stabilità e sicurezza ha regalato alle proprie applicazioni. Secondo analisti Forrester COBOL non morirà prima della decade 2020/2030: questione di costi e di investimenti, nonché dell’assenza di alternative ed opportunità vere. La sostituzione di COBOL è semplicemente non conveniente, il che sconsiglia qualsivoglia manovra finalizzata ad una sostituzione che molti non hanno alcun interesse nel portare avanti.
COBOL, Hello Word
000001 IDENTIFICATION DIVISION.
000002 PROGRAM-ID. HELLOWORLD.
000003 ENVIRONMENT DIVISION.
000004 CONFIGURATION SECTION.
000005 DATA DIVISION.
000006 PROCEDURE DIVISION.
000007
000008 DISPLAY ‘HELLO, WORLD.’.
000009 STOP RUN.
Secondo molti dirigenti scolastici, COBOL è anche un linguaggio di programmazione di facile apprendimento, in alcuni aspetti anche più facile di linguaggi come Java o C++. Sfortunatamente, perdura un’immagine negativa di questo sistema operativo a causa della sua “vecchiaia”. Molto utile e poco cool, insomma: nonostante le qualità riconosciute, la diffusione e le permanenti prospettive, infatti, vige una sorta di opinione negativa legata al linguaggio, in gran parte derivante dalla sua carta di identità in confronto ad altre realtà più nuove, meno diffuse, ma sicuramente di maggior evidenza.
La reintroduzione di COBOL nel mondo accademico andrebbe dunque incentivata: ad auspicarlo è Giuseppe Gigante, Regional Marketing Manager di Micro Focus:
La risposta al gap delle conoscenze deve iniziare dai banchi di scuola. Le aziende e le università devono lavorare insieme per dimostrare che conoscere il COBOL è importante ed è essenziale per avere un futuro più promettente.
I giovani sviluppatori devono essere incoraggiati verso questo linguaggio e deve essere incrementato il numero di lauree IT che lo prevedono e avviati nuovi corsi. Su un totale di 310 miliardi di linee di codice, ben 240 miliardi, dopo tutto, sono scritti in COBOL. È il linguaggio utilizzato in oltre il 65% di tutti i codici attivi e nell’85% di tutte le transazioni giornaliere. Le aziende hanno bisogno di persone che conoscano questo linguaggio, non solo per supportare le applicazioni esistenti, ma anche per costruire e sviluppare le applicazioni di domani.
COBOL verso il domani
Il futuro di COBOL sarà discusso in occasione della prima “COBOL Conference 2014“, evento tutto italiano organizzato da Micro Focus per il prossimo 27 novembre. L’appuntamento è descritto come «un’occasione unica di incontro per ISV, programmatori e aziende sotto un unico “codice”, aperto a Java e .net, Visual Studio e Eclipse». Ogni informazione è disponibile sul sito dedicato.