Programmazione: come imparare da zero

Programmare può sembrarti una impresa scoraggiante in cui impegnarsi, riservata a qualche tipo di nerd della tecnologia. O forse pensi che se non inizi quando sei giovane, prima a scuola e poi proseguendo con studi specialistici, sarà semplicemente impossibile. Ma questo è semplicemente sbagliato: al giorno d’oggi è sufficiente un po’ di impegno e di buona volontà per ottenere risultati eccellenti, persino iniziando da zero.

This is true thanks to programming languages becoming easier, with a simpler syntax and also requiring less technical skills. For example, it’s not strictly necessary to be able to use the DOS interface and the related commands. On the other hand, you now have access to so many user friendly and often interactive materials to help you learn. Courses, tutorials, videos, and other resources are widely available so if you want to learn programming, it’s really more a matter of dedication, certainly not of accessibility or of excessive complexity.

Questo avviene grazie al fatto che i linguaggi di programmazione stanno diventando più facili, con una sintassi più semplice e con minori requisiti tecnici. Per esempio non è più strettamente necessario per imparare a programmare saper utilizzare l’interfaccia DOS e i relativi comandi. D’altra parte ormai si ha accesso a tantissimi materiali ben fatti e spesso interattivi con cui imparare. Corsi, tutorial, video e altre risorse sono a disposizione di tutti, dunque se si vuole imparare a programmare è di fatto più una questione di volontà, comunque di certo non di accessibilità o di eccessiva complessità.

Costruirsi un background: cosa bisognerebbe sapere prima di iniziare a programmare

Prima di imparare a studiare il coding e il coding applicato a un certo linguaggio di programmazione, dovresti impiegare un po’ di tempo a capire il concetto di “algoritmo”. Ogni programma è in realtà un algoritmo e se non sai cos’è un algoritmo e come scriverlo in modo ottimale, in effetti POTRESTI imparare a programmare ma ci metterai di più e il tuo codice sarà probabilmente meno “elegante”. Questo step non è quindi assolutamente necessario, ma sicuramente renderà le cose più facili.

Dovresti anche capire quel che stai veramente facendo quando scrivi “un programma”: come riesci a far sì che una macchina non intelligente faccia cose intelligenti? Queste competenze sono relative all’informatica teorica ma non è necessario intraprendere un corso in informatica teorica per impararle. Per esempio su Code.org puoi trovare delle eccellenti e agili introduzioni a questi argomenti, perfettamente adeguate a ciò di cui hai bisogno, dato che per imparare a programmare non hai bisogno di avere una conoscenza dettagliata e approfondita di questi ambiti. Puoi limitarti ad una comprensione generale di come le cose “funzionano”. Se sei curioso e vuoi saperne di più puoi approfondire e dare un’occhiata ai libri della O’Reilly, che costituiscono il punto di riferimento nell’ambito della computer science. Le versioni pdf dei loro libri sono disponibili gratis online (per esempio l’ottimo Algorithms in a nutshell)

Da dove iniziare? Come scegliere il tuo primo linguaggio

Programmare significa programmare in un certo linguaggio. Ogni linguaggio ha una certa sintassi ed è adatto a certe cose. Certi linguaggi sono più generali (per esempio sono adatti a ogni compito) altri sono più specifici (sono sviluppati avendo certi compiti o aree di applicazione in mente). Alcuni linguaggi funzionano su qualsiasi sistema operativo, altri sono limitati a solo un OS. Quando ti avvicini alla programmazione per la prima volta, puoi provare con un linguaggio con un’interfaccia semplificata, che ti permette di fare alcune cose senza utilizzare il codice (sono simili alle interfacce per scrivere l’html), ma naturalmente questo è adatto solo come primo approccio.
Il miglior modo per approcciare la programmazione è scegliere un linguaggio di programmazione che non sia eccessivamente difficile o eccessivamente specializzato. Il Python è la scelta perfetta: è facile da usare, è generale, e si trovano tantissimi tutorial, libri di ogni livello di difficoltà, librerie, comunità di supporto. Ovviamente se ti stai avvicinando alla programmazione per un motivo specifico (per esempio vuoi fare data analysis o vuoi sviluppare un’app) dovresti individuare il linguaggio più adatto ai tuoi obiettivi. Per esempio per la data analysis l’R o il Julia potrebbero essere scelte adeguate mentre per sviluppare un’app per IOS dovresti preferire lo Swift. Dunque impiega un po’ di tempo per capire quale linguaggio è più adatto a te e alle tue necessità.

Vuoi andare veloce? Fai un corso

Se non ti vuoi angosciare con le tribolazioni del self study, potresti prendere in considerazione di fare un corso introduttivo. Ci sono eccellenti corsi online (un’opzione che – per imparare a programmare – potrebbe rappresentare un’interessante alternativa) oppure tradizionali. Cosa scegliere dipende dal tempo che hai, dal tipo di persona che sei e da quanto veloce devi andare. Talent Garden per esempio propone un corso veramente completo e auto conclusivo, il CodeMaster, che in poche settimane ti può portare da principiante assoluto a persona in grado di scrivere i primi programmi. Poi puoi facilmente continuare a studiare ed a fare pratica in modo autonomo, oppure puoi fare un altro corso, magari meno generico e che ti aiuti a focalizzarti su un certo aspetto o linguaggio. Ma tieni conto che come in tante altre cose quando hai a che fare con la programmazione, la pratica è tutto. Dunque non delegare tutto a ciò che puoi imparare durante il corso. Mettiti alla prova, sperimenta, gioca con il codice: questo è l’unico modo di diventare un vero maestro.

Iscriviti alla nostra newsletter

Rimani aggiornato sulle ultime novità