Perché dovresti seriamente prendere in considerazione di insegnare la programmazione ai tuoi collaboratori (e impararla tu stesso)?

coding, imparare a sviluppar ein azienda

Premessa

L’idea di questo articolo nasce da un post di Raffaele Gaito di molto tempo fa. Nel suo post, Raffaele indicava 10 ottime ragioni per insegnare a programmare ai bambini. Le ragioni che lui indicava sono:

  1. È una delle lingue più usate al mondo
  2. Aiuta a non essere consumatori passivi
  3. Da piccoli si apprende meglio
  4. Stimola la creatività
  5. Permette di realizzare un’idea
  6. Introduce al problem solving
  7. Stimola il pensiero critico
  8. Favorisce il pensiero computazionale
  9. Orienta allo storytelling
  10. È divertente

Molte di queste sono valide anche per noi adulti, ma altre se ne aggiungono più importanti per il mondo del lavoro.

La situazione attuale

Sono alcuni anni ormai che insegno l’uso dei programmi di produttività ad aziende e professionisti e sono sempre più sorpreso dal fatto che sotto una patina di vaga conoscenza dei software c’è il buio più totale.

In pochi conoscono in maniera decente persino la suite dei programmi di Office.

In molti sanno che Word si usa per scrivere. Ma pochi sanno sfruttare a fondo le sue potenzialità più avanzate.

Tendo a dare la colpa di questo alla scuola. Ritengo che l’uso del computer, almeno dalla scuola media in poi, dovrebbe essere importante quanto il saper scrivere con la penna.

Ma inizio a pensare che la responsabilità di questa mancanza debba ricadere in parte anche sulle aziende che non pretendono, anzi che non considerano implicito nella formazione di una persona, il saper usare decentemente il computer.

Mi fa sempre sorridere leggere nelle offerte di lavoro “conoscenza del pacchetto MS Office”. E mi domando perché non scrivano anche “saper leggere, scrivere e far di conto”, già che ci sono.

L’uso di PowerPoint oscilla tra coloro che non sanno che farsene a chi lo usa anche per fare offerte.

Excel è considerato appannaggio dell’amministrazione, e all’interno di questa solo dei “più esperti” o addirittura solo del CFO.

Ho avuto uno studente che si era iscritto al corso solo per imparare come utilizzare la funzione CERCA.VERT.

Nota. La funzione CERCA.VERT consente di cercare un valore nella prima colonna di un intervallo di celle (detto tabella-matrice) e restituisce il contenuto di una delle celle a destra sulla stessa riga.

Le tabelle pivot? Esclusivamente per i più temerari.

I grafici? …perché Excel può fare anche i grafici?

Potrei raccontare anche di quello che faceva i conti con la calcolatrice e inseriva i risultati in Excel, ma potrebbe sembrare una barzelletta. Purtroppo non lo è.

Eppure… Eppure c’è fame di conoscenza degli strumenti informatici. E non solo tra i giovani, che vedono i segnali che si può fare molto, ma pure tra le persone con esperienza, che sanno che c’è bisogno di fare di più.

Gli strumenti

Ho iniziato parlando di Office perché è la base. Direi che è l’equivalente del saper tracciare dei segni sulla carta, dell’imparare la grafia. La prima elementare, insomma.

Excel è uno dei primi strumenti che permettono di capire come automatizzare alcune operazioni o per organizzare e pianificare il lavoro.

Ammettiamo che tu abbia dei dati per i quali devi restituire un report periodico. Hai mai pensato che potresti automatizzare la raccolta dei dati e la loro formattazione? Se sei bravo puoi anche fargli aggiungere dei commenti a seconda dei valori e predisporre il report in Word.

Oppure, una buona applicazione potrebbe aiutarti a definire il carico di lavoro dei macchinari e pianificarne l’utilizzo nel corso del mese, valutare il numero di ore di lavoro e stabilire i fermi macchina per la manutenzione.

Ma presto lo strumento Excel diventa stretto. Se vuoi fare qualcosa di più, hai bisogno di più potenza, di più elasticità, di più controllo.

Perché imparare a programmare?

Stiamo andando verso una digitalizzazione sempre maggiore

Il film “2001: Odissea nello spazio” si apre con l’iconica scena di un ominide che dopo essere venuto in contatto con il monolite nero brandisce un osso come strumento per dominare l’ambiente intorno a sé.

Dal punto di vista tecnologico non siamo molto lontani da questa immagine. Stiamo vivendo un periodo di incredibili cambiamenti tecnologici, sociali, organizzativi e culturali.

Se non vogliamo restare indietro dobbiamo iniziare a capire gli strumenti che possiamo utilizzare per sfruttare al meglio le opportunità che questo momento sta portando.

Per fare ciò abbiamo bisogno di sviluppare un mindset digitale che ci aiuti ad orientarci nel nuovo panorama che si sta profilando.

Aiuta a capire come funziona il mondo in cui ci muoviamo

Quando prendiamo la patente buona parte del corso è dedicata al motore, poi si parla della segnaletica stradale e del comportamento che bisogna tenere nella guida. Tutto ciò non ha molto a che fare con il saper condurre un’autovettura, eppure nessuno ritiene che quella parte del corso sia inutile, anche se tutti sappiamo che non metteremo mai mano al motore.

Siamo sempre più a lungo e più spesso online. La nostra vita online è sempre più intensa. Gli strumenti che usiamo sono online.

Ma online le leggi del mondo fisico che conosciamo funzionano con ingranaggi diversi da quelli a cui siamo abituati.

Cosa succede quando facciamo click sul pulsante “Acquista” su Amazon? Quali processi scatena negli uffici di Amazon.com Inc.

Probabilmente non arriveremo mai a comprendere a fondo cosa succede, ma averne un minimo di concezione può permetterti di capire come progettare meglio i tuoi processi.

Permette di interagire in maniera più approfondita con le macchine che usiamo

Gli strumenti con cui interagisci quotidianamente e le macchine che hai in azienda hanno un livello di utilizzo base per il quale non hai quasi mai bisogno di leggere il libretto di istruzioni.

E poi ne hanno un altro. Per il quale il libretto di istruzioni non basta.

Quando iniziamo a capire i principi della programmazioni, iniziamo a comprendere che oltre alle operazioni che facciamo normalmente ce ne sono molte altre a cui un semplice click ci non può neanche avvicinare.

Quando troviamo un limite dello strumento che stiamo utilizzando, quando non ci piace quello che fa, è il momento di cercare di capire se possiamo fargli fare quello che vogliamo veramente.

Permette di inventare nuovi modi di far interagire i sistemi e i macchinari

Non è un caso se l’integrazione tra macchinari è uno dei cardini della politica di sostegno all’innovazione del Governo italiano e dei governi in generale.

Le tecnologie digitali abilitano un livello di automazione impensabile fino a poco tempo fa. E automazione significa maggiore efficienza, minore possibilità di errore e minori rischi.

Accedere al livello di logica dell’infrastruttura è uno dei requisiti fondamentali per disegnare una piattaforma produttiva funzionale alla richiesta di presenza globale e ai ritmi di oggi.

Stimola il pensiero critico nei confronti delle tecnologie

Si sente tanto parlare di cloud. Ma cos’è il cloud? E perché la tua azienda potrebbe averne bisogno? Ma poi ne ha davvero bisogno?

Quando un fornitore vuole venderti una nuova tecnologia, come fai a capire se ti serve, se fa tutto ciò che ti serve e nel modo in cui ti serve?

Sento di tanti programmi di innovazione dei processi aziendali che falliscono perché le tecnologie scelte sono sbagliate. Ma mi chiedo se qualche volta non è perché sono troppo avanzate per gli utilizzatori non abbastanza formati.

Capire la logica dei sistemi digitali permette di avere una maggiore sensibilità nelle scelte che facciamo.

Non solo per sapere se è quella giusta, ma anche per capire se abbiamo le competenze per sostenerla. Se dobbiamo formare qualcuno al nostro interno (cosa che consiglio di fare sempre e comunque) oppure se è bene che lo andiamo a cercare sul mercato (ma poi, c’è qualcuno all’interno capace di selezionarlo?).

Stimola a cercare nuove soluzioni, stimola l’innovazione

Quando hai nozioni di programmazione, hai un po’ di mattoncini per capire cosa puoi fare, cosa puoi voler fare.

Significa aver scollinato nel panorama dell’innovazione.

Puoi iniziare a immaginare nuovi traguardi, nuove soluzioni, nuovi prodotti, nuovi mercati.

Le nozioni di programmazione non si applicano solo al software, ma all’insieme dei sistemi. Con queste nozioni possiamo capire come questi sistemi interagiscono tra loro e cercare i fili per connetterli e orchestrarli.

Stimola la creazione di nuovi modelli di business

Che tu ci creda oppure no, questo significa abilitare una nuova mentalità produttiva che impatta in maniera del tutto nuova con il mercato.

I processi stessi -e tra questi la vendita- diventano componenti di un modello che hanno particolari relazioni tra loro.

I dati diventano parte del processo e impariamo ad usarli per prendere decisioni, quando possibile automatiche e controllate.

Le relazioni sono connessioni attraverso cui far fluire i dati, dentro e fuori l’azienda.

Il mondo e la nostra impresa diventano un tutt’uno che possiamo controllare a nostro vantaggio.

Favorisce l’integrazione tra unità organizzative interne (riduce i silos)

Quando inizi a pensare da “sviluppatore” ,i dati assumono un significato nuovo. Impari a leggerli e a trattarli.

A questo punto non ti bastano più. Inizi ad aver bisogno dei dati anche dell’ufficio accanto. Hai la necessità di creare nuove relazioni, nuovi modi di connetterli per capire cosa stia succedendo e come reagire.

Quando hai nozioni di programmazione, inizi ad avere un sentimento del sistema nervoso della tua azienda che si estende ben oltre le mura del tuo ufficio.

Non farlo ha dei costi

Oltre ai rischi a cui ho già accennato, c’è da considerare il fatto che molte cose possono essere fatte internamente senza doversi affidare a fornitori o consulenti esterni. Dei quali, senza nozioni di base, non avresti comunque modo di verificare l’operato.

Dal sito web alla campagna di marketing, dall’infrastruttura di gestione dei macchinari alla fatturazione. Sono tutti sistemi che riesci a far funzionare meglio con competenze di sviluppo informatico.

È più facile di quel che pensi

Nessuno pensa che l’inglese sia una cosa da intellettuali o “da smanettoni”. Ma è visto come uno strumento di lavoro.

E nessuno che esprima l’interesse a imparare la lingua si sente rispondere “non fa per te”.

Imparare a programmare è alla portata di chiunque sappia leggere e scrivere. E abbia un minimo di senso critico.

È facile quanto imparare ad usare la funzione CERCA.VERT in Excel. Ma questa funzione è solo un primo passo da cui iniziare un viaggio verso l’innovazione nella tua azienda e del tuo modo di considerare le tecnologie digitali.

Chi dovrebbe saper programmare in azienda?

Potrei rigirarti la domanda in maniera provocatoria:

Chi deve saper leggere, scrivere e far di conto nella tua azienda?

Più seriamente.

Innanzitutto, TU. Chiunque tu sia, qualunque ruolo tu abbia.

Avere nozioni di programmazione ti permette non solo di sapere cosa si può fare, ma soprattutto cosa puoi chiedere a chi ne saprà -inevitabilmente- più di te.

Se il tuo supporto IT non ha competenze di programmazione rimedia immediatamente.

Le unità di sviluppo del business come abbiamo visto se ne possono avvantaggiare moltissimo perché possono trattare i dati con maggior efficacia.

Chiunque si occupi di progetti. Insegnare loro a programmare significa fornirgli un nuovo kit di attrezzi estremamente potenti. Sia che debbano sviluppare/realizzare il progetto, sia che debbano gestirlo. Gli strumenti probabilmente saranno diversi: a ciascuno il suo kit.

La tua segretaria. Eh sì, può sembrare eccessivo, ma ho visto spesso assistenti con migliori competenze di programmazione dei colleghi “ingegneri” e impiegarle per svolgere lavori in maniera ben al di là di quel che siamo abituati.