Questo sito utilizza cookies tecnici (propri e di terze parti) come anche cookie di profilazione (di terze parti) sia per proprie necessità funzionali, sia per inviarti messaggi pubblicitari in linea con tue preferenze. Per saperne di più o per negare il consenso all'uso dei cookie di profilazione clicca qui. Scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, acconsenti all'uso dei cookie Ok, accetto

 2014  maggio 11 Domenica calendario

EVOLUZIONE DELLA LINGUA INFORMATICA


Un mare in costante movimento, in cui solo la nave di Java veleggia (a sorpresa) sicura. Questa è la sintesi di quanto viene fuori dall’analisi sugli open data rilasciati da GitHub fatta da un programmatore e analista sul periodo 2008-2013. Ma mettiamo un po’ di ordine, perché la storia è complicata ma molto interessante.
Da un paio di anni Donnie Berkholz, sviluppatore per la distribuzione Gentoo di Linux e analista di RedMonk ha deciso di guardare con attenzione ed elaborare i dati messi a disposizione da GitHub. Per capire il loro significato bisogna prima capire cos’è GitHub. L’azienda for-profit è nata nel 2008 da Tom Preston-Werner, Chris Wanstrath e PJ Hyett, finanziata nel 2012 per 100 milioni di dollari di ventura di Andreessen & Horowitz. Il suo lavoro è permettere il controllo delle revisioni in modalità collaborativa del software che viene sviluppato. Praticamente un GoogleDocs in cui al posto degli scrittori ci sono i programmatori che lavorano allo stesso tempo allo stesso romanzo.
L’idea dei tre creatori di GitHub è stata il modello di business (si paga un tot per numero di repository, cioè singoli progetti software) perché il motore, il "git" (che in inglese vuol dire "insopportabile") è stato creato open source nel 2005 da un Linus Torvalds profondamente insoddisfatto del precedente sistema online per il coordinamento della scrittura di Linux, BitKeeper, sistema farraginoso, poco affidabile e proprietario.
Il bello di Git è che funziona molto bene, scala ancora meglio e la società GitHub ha creato forse uno dei repository per il versionamento del codice sorgente più efficaci al mondo, che è stato preso non solo da milioni di singoli utenti ma anche di aziende che lo utilizzano per lo sviluppo dei loro software. La base di utenti oggi è di 11,7 milioni di repository, e si può essere sicuri che quel che si trova guardando GitHub è una specie di radiografia dello stato della programmazione moderna.
Da qui l’idea di Berkholz, che per successive approssimazioni ha cominciato a scaricare i dati sull’utilizzo e le tipologie di utenti e le repository, passandole da buon data scientist attraverso filtri statistici software che si è costruito e ben sapendo di cosa stava parlando, dal momento che si occupa di programmazione, cioè il dominio di utilizzo di GitHub.
I risultati sono migliorati con il tempo, perché quasi nessun progetto software di dimensioni significative ha dentro a sé un codice scritto in un solo linguaggio. Quindi, capire quali linguaggi vengono utilizzati, per dedurne poi indirettamente verso quali direzioni si sta dirigendo la tecnologia del software e della rete (perché molti sistemi lato server e molti siti dinamici sono costruiti poggiando la base del codice sorgente su GitHub, non soltanto le app da scaricare sui client), è diventato l’obiettivo esplicito dell’esperimento.
Se si escludono i linguaggi di configurazione degli editor, come VimL e il Lisp Emacs, crescono JavaScript e Java (il primo è un linguaggio di scripting che funziona solo dentro il browser, il secondo è un linguaggio di programmazione vero e proprio che gira in una virtual machine creato da Sun oggi Oracle), calano molto Ruby e Python, più dolcemente decresce il Php, mentre la debacle del Perl sembra adesso essersi stabilizzata (anche se molto ridotto). Invece, sono stabili i quattro "gemelli diversi": il vetusto C, e i suoi tre epigoni, C++, C# e Objective-C.
Il popolo della rete, o almeno la parte più nerd, si interroga su cosa significhino i dati estrapolati da Berkholz. Con durezza, perché i programmatori sono gente concreta e senza peli sulla lingua (e spesso anche senza skill sociali) perché non si fanno ingannare da grafici "parziali". Ma la rete si interroga, perché questo che passa dentro GitHub è lo specchio delle mode e delle novità. Veder calare il proprio linguaggio-beniamino non è solo un problema di tifo sportivo, come si potrebbe pensare. Invece è più come un investimento azionario: se si mettono le proprie risorse nel linguaggio sbagliato si rischia di restare tagliati fuori. Rimangono così due certezze: Java e lo zoccolo duro della famiglia "C", il linguaggio creato da Dennis Ritchie tra il 1969 e il 1973 per lo Unix dei Bell Labs, a cui si sono aggiunti anche all’Objective-C (superset del C con aggiunte da Smalltalk e oggi usato da Apple) e il C++ (detto anche "C con le classi", nato nel 1979 in Danimarca). Più problematico il rapporto con il C# di Microsoft, nato nel 2001 e per niente collegato al C. Sempre presente infine Javascript.

Antonio Dini, Il Sole 24 Ore – Nòva 11/5/2014