Quale linguaggio di programmazione devo imparare (o insegnare) ?

Quale linguaggio di programmazione scegliere ?

È la domanda che quasi tutti gli aspiranti programmatori si fanno, prima d’iniziare l’epica impresa d’imparare un linguaggio. C’è chi si affida all’amico più bravo, chi a Internet, chi al corso sotto casa, ma per tutti “la risposta è sbagliata”, come diceva Quelo, il personaggio di Corrado Guzzanti.

Infatti, non esiste una risposta giusta. Come ogni sistema operativo è legato all’hardware, ciascun linguaggio è legato a quello per cui è stato programmato. Esistono linguaggi scientifici, altri per elaborare dati, altri per Internet.

A questo si aggiunge che chi ti consiglia un linguaggio lo preferisce in parte anche perché ci è abituato. Se ha usato per anni il C, si sarà impratichito, dimenticando la fatica iniziale dell’apprendimento (come chi ha usato sempre macchine Windows e si trova a lavorare con Apple) e quindi potrà essere poco obiettivo in confronto ad un linguaggio appena nato (appena 13 anni fa), come il Go di Google.

E le statistiche?

Il sito di riferimento che classifica i linguaggi è TIOBE, e infatti nella prefazione viene spiegato chiaramente: “L’indice TIOBE Programming Community è un indicatore della popolarità dei linguaggi di programmazione. Le valutazioni si basano sul numero di ingegneri qualificati in tutto il mondo, corsi e fornitori di terze parti. Per calcolare le valutazioni vengono utilizzati motori di ricerca popolari come Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube e Baidu. È importante notare che l’indice TIOBE non riguarda il miglior linguaggio di programmazione o il linguaggio in cui sono state scritte la maggior parte delle righe di codice”.

Veramente un’ottima pagina web con grafici interattivi e statistiche molto precise.

Ma non esistono linguaggi generici?

Beh, sarebbe meglio iniziare con un metalinguaggio per dimostrare come si programma in modo generale e poi scegliere in base alla facilità di apprendimento, all’utilizzo, alla velocità d’esecuzione …

App Inventor 2, costola del famoso linguaggio SCRATCH (al 23° posto della classifica TIOBE), può essere un ottimo inizio. Vediamo perché:

  1. È visuale, quindi nessuna riga di comando. La curva di apprendimento alta anche per i giovanissimi, perciò già dopo due ore possiamo creare un’App.
  2. Si utilizza per dispositivi mobili. I ragazzi, ma anche gli adulti, dei miei corsi sono entusiasti perché possono giocare col proprio smartphone e contemporaneamente imparare.
  3. Come sapete, se avete già visitato questo sito, esistono altre piattaforme “concorrenti” che utilizzano la logica di App Inventor 2 della MIT. Dirette discendenti sono Kodular e Thunkable, e tante altre ne arriveranno, quindi un parco molto ampio di possibilità.
  4. Tutti i più importanti costrutti di programmazione (condizionali, loop, dichiarazioni, variabili …) sono integrati nel linguaggio. Quindi, con questa conoscenza pregressa, sarà molto facile passare a un linguaggio più professionale.
  5. Possibilità di programmare LEGO MINDSTORM , progetti ARDUINO e Internet Of Things o come si usa dire IOT.
  6. Grande libreria di guide, tutorial, forum, esempi di app, progetti aperti scaricabili gratuitamente. Qui, se permettete, modestamente mi ci metto anch’io con questo sito AppediA.it che è partito da essere la traduzione delle guide delle tre piattaforme e sta diventando in Italia il più consultato per il Visual coding.

Insomma, adesso avete più strumenti su cui ragionare e fare meglio la vostra scelta.

Salvatore Campoccia

Foto START da Pexels