Roberto Staglianò, la Repubblica 1/9/2013, 1 settembre 2013
CREATIVI DEL SOFTWARE È IL VOSTRO MOMENTO
Una vecchia battuta dice che un pessimista è un ottimista al corrente dei dati. Ma si può avere fiducia nel futuro anche conoscendoli. Ad esempio questo, fornito dall’ufficio statistiche del Ministero del lavoro statunitense: c’erano 913 mila posti da programmatore nel 2010 e ce ne saranno il 30 per cento in più entro il 2020. Ovvero più del doppio della media della crescita delle altre occupazioni. Per chi ne terrà conto il sol dell’avvenire resta splendente. Nonostante la crisi. Eppure quelli che sanno scrivere codice (il linguaggio dei computer, ndr) scarseggiano, anche in Italia, e l’America è costretta a importarli dall’India dove gli informatici sono tanti e tanto bravi. Non è che stiamo sbagliando qualcosa? Cioè, piuttosto che studiare lettere e finire a lavorare in un call center forse varrebbe la pena fare un’altra facoltà e inventarsi call center più intelligenti. Oppure i prossimi Google o Facebook.
Tutto sta nel migliorare la reputazione dell’informatica. Che non è quella cosa arida e noiosa che siamo stati indotti a credere da prof. senza immaginazione. Ma è un linguaggio pluripotente per costruire mondi, anche più entusiasmanti di quello vero (pensate ai videogiochi). In ogni caso, piaccia o no, ci viviamo dentro. Comprendere un po’ come funziona diventerà competenza obbligatoria. Ovviamente la Rete se ne è accorta, e con una quantità di siti che insegnano a programmare già dall’età in cui si mettono le astine alle T. Per esempio Scratch, visuale e intuitivo, si rivolge a bimbi dagli 8 anni in su e ha avuto tanto successo che da solo totalizza il dieci per cento delle pagine web del Mit. Mitchel Resnick, direttore del progetto, non ha dubbi: «Così come tutti dovrebbero saper scrivere, tutti dovrebbero saper programmare». Né più né meno. Oppure Hopscotch, che funziona sui tablet rendendo l’interazione più naturale. Per i ragazzini più grandi c’è App Inventor, che creare le applicazioni per iPhone o Android. Anche per gli adulti la scelta non è mai stata così ampia. Da Codecademy a Treehouse, molti promettono di farvi passare dal livello Neanderthal a due tacche sotto Steve Jobs in poche settimane. Che probabilmente è la nemesi sbagliata dell’approccio tradizionalista.
Dunque: è realistico imparare da soli, davanti a un computer, ciò che altrimenti richiederebbe un intero corso universitario? «No, se si inizia da zero è fondamentale un buon tutor» ritiene Paolo Ruscitti, cervello tecnologico dell’aggregatore di blog Liquida, «se invece si conosce già almeno un linguaggio di programmazione, anche il fai-da-te online può funzionare ». Per consuetudine risalente agli inventori del linguaggio C, il primissimo programma di un principiante consiste nel far apparire sullo schermo la scritta “Hello World”. «Dopo qualche ora di lezione, bastano pochi minuti per ottenerla» stima Ruscitti. «Per qualcosa di più consistente, 4-5 lezioni da un paio d’ore l’una». Un softwarista esperto impiega almeno tre mesi di immersione totale per imparare benino un nuovo linguaggio. Bene, un anno. Benissimo, una vita. «In poche ore si crea una semplice pagina web in html e javascript» garantisce Emanuele Terracina, co-fondatore della web-agency Gag, «Per cose più complesse servono anni. E non basta mai». Soprattutto, avverte, ci vuole una disciplina da maestro Jedi: «Ore e ore davanti al computer, in solitaria. E poi auto-formazione continua, perché questo è un ambiente che si rinnova totalmente ogni pochi mesi». Quanto alla turbo-crescita prevista in America, fa notare, riguarda i progettisti, i creativi che si inventano programmi nuovi, più che gli esecutivi.
Per un entusiasmo senza riserve sui tutorial online bisogna espatriare. Il britannico Eben Upton è convinto che «sì, è realistico imparare da soli anche da zero. D’altronde negli anni ’80, quando ho iniziato io, ordinavo i manuali in biblioteca e ci mettevano settimane ad arrivare. Volete mettere oggi la comodità: l’accesso istantaneo a materiali, video e gruppi di discussione! ». Nonché corsi impartiti a distanza, gratis, da prof. di Stanford come Andrew Ng, non a caso seguiti da oltre centomila persone. Sull’onda del successo, ha fondato Coursera che compete con Udacity nella fornitura di lezioni universitarie. Dopo una laurea in fisica e ingegneria a Cambridge, dove ha preso anche il dottorato in filosofia, Upton ha messo in piedi una fondazione che produce Raspberry Pi, un mini-computer delle dimensioni di una carta di credito e dal prezzo di una cena al ristorante (35 dollari) sul quale bimbi tra 7 e 9 anni imparerebbero a programmare in Python. Dice: «Per un principiante produrre qualcosa in pochi minuti è la chiave per tenerne desti attenzione ed entusiasmo». Quella stessa gratificazione istantanea che è tra i motivi per cui tanti suonano la chitarra e tanti meno la tromba, dove solo il far uscire un suono giusto può rivelarsi un investimento di mesi.
La verità sui tempi di apprendimento starà verosimilmente nel mezzo. Di certo i bravi programmatori non temono la routine. Paul Allen, il più dotato del duo con Bill Gates, motivò così il trasloco di Microsoft dal New Mexico a Seattle: «Piove sempre, è un posto ideale per programmare». Quanto alla psiche periclitante dei coders, Douglas Coupland ne ha scritto nel memorabile Microservi.
«Si fatica a trovare ottimi softwaristi» ammette Ruscitti, «e quando lo sono effettivamente hanno spesso seri problemi relazionali ». Terracina conferma e insiste su un carenza diffusa: «Ci vuole una buona capacità di esposizione, per farsi capire dai clienti e da chi lavora nella tua squadra». Bisogna, soprattutto, sapere astrarre dal problema per generalizzare la soluzione. Non illudersi che sia una passeggiata, né lasciarsi spaventare. «Facendo un’analogia con l’auto, un programmatore non è come un meccanico, ma solo uno che non vuole essere un passeggero» scrive Douglas Roushkoff, autore di Program or Be Programmed.
Al Congresso, dove è stato ascoltato come esperto, ha scandito: «Le classi di informatica non possono essere i luoghi dove insegnare ai ragazzi a usare il software di oggi, ma dove imparino a creare quello di domani ». In Estonia lo fanno. Il Miur è in ascolto?