Una delle preoccupazioni maggiori per uno studente è quella di trovare un buon insegnante per la materia che si vuole imparare.

Questo discorso è eccezionalmente valido per la programmazione e il data science.

Sono dell'idea che tutti noi, a prescindere dall'età, possediamo già gli strumenti e le risorse per poter imparare e diventare bravi e operativi in questo campo. Dico questo perché una delle argomentazioni più comuni che sento da aspiranti analisti che però hanno gettato la spugna ha a che vedere con l'età e come questa sia un ostacolo che ferma lo sviluppo personale e professionale ancora prima di iniziare.

Ma questa è solo una scusa per non affrontare quello che abbiamo davanti: matematica, statistica e programmazione.

In termini invece di potenziale intellettivo, fatevi dire che tutti siamo in grado di imparare qualsiasi cosa a patto che non abbiamo particolari patologie o disturbi dell'apprendimento. Non fatevi dire l'opposto da nessuno.

Gli unici limiti sono la nostra motivazione e obiettivi.

Detto questo, vorrei proporre quelle che secondo me sono le migliori risorse per imparare Python online. Queste sono state selezionate in quanto hanno avuto un grosso impatto sul mio sviluppo da programmatore e a distanza di anni si rivelano essere ancora delle pietre miliari per la mia formazione.

Queste risorse sono siti web, canali YouTube, blog e altro. Non c'è un particolare ordine di priorità, in quanto tutte sono eccellenti e facilmente accessibili. Sono anche tutte gratis, ma nel caso di Coursera potete iscrivervi al corso e pagare per ottenere una certificazione. La maggior parte dei contenuti sono in lingua inglese.

Iniziamo.

Python For Everybody

Il corso che ha introdotto a Python me e altri centinaia di migliaia di studenti intorno al mondo. Charles Severance è un docente eccellente, che spiega concetti come pochi sanno fare. Questo corso da il benvenuto al mondo della programmazione, e tocca argomenti basilari con un dettaglio ma senza mai annoiare. La community è anche molto attiva e Dr. Severance risponde spesso online alle domande degli studenti.

Il curriculum include:

  • Python for everybody - una introduzione alla programmazione per iniziare a capire di cosa si tratta e cosa possiamo fare
  • Strutture dati in Python - liste, dizionari, tuple e altro
  • Interfacciarsi al web con Python attraverso delle librerie specifiche come Requests
  • Una introduzione ai database relazionali e SQLite3

Consiglio questa specializzazione a chiunque voglia iniziare la sua avventura nella programmazione o chi vuole migrare da un altro linguaggio a Python.

Python Programming.net

Senza ombra di dubbio una delle risorse online più rilevanti per Python. Fondato e gestito da Harrison Kinsley, noto come Sentdex su YouTube e Twitter, offre contenuto per ogni livello di esperienza con Python e data science. Sentdex è una sicurezza in termini di qualità e profondità di contenuti su Python, data science e analytics. Fate un favore a voi stessi e seguite questa persona su Twitter.

I contenuti sono raggruppati in argomenti facilmente accessibili. Alcuni dei più rilevanti sono:

  • Python Fundamentals
  • Data analysis
  • Machine learning

Consiglio a tutti di spulciare questi argomenti e di andare nel dettaglio in quelli che interessano. Quelli su Python sono sicuramente ben curati e accessibili sia al neofita che all'utente intermedio.

C'è anche un server di Discord dove è possibile connettersi ad altri analisti appartenenti alla community.

Sentdex

Segue il punto precedente proprio il canale YouTube di Sentdex. Questo canale rappresenta tutto quello che un appassionato di programmazione e data analytics possa aspettarsi di ottenere da un insegnante online.

Harrison trasmette la passione per l'argomento, toccando argomenti basilari in Python e data science fino a quelli più complessi, come il reinforcement learning applicato al gaming, all'addestramento di sistemi di computer vision per il riconoscimento di oggetti in tempo reale e alla computazione quantistica.

Davvero un bacino di conoscenza enorme, dal quale sarebbe un errore non attingere.

Kaggle.com

Anche se Kaggle è conosciuto come l'hub principale del data science nel web, i suoi corsi introduttivi su Python sono molto validi ed efficaci per prepararci al nostro percorso da analisti. Sono curati proprio per dare consapevolezza all'utente dei concetti più rilevanti per poter affrontare i discorsi più legati al machine learning. Il curriculum comprende:

  • introduzione a variabili e tipi di dato
  • funzioni e condizioni
  • strutture dati
  • uso di librerie

Il corso su Python si raggiunge da questo link.

Corey Schafer

Corey Schafer ha contribuito parecchio alla mia formazione, soprattutto con le sue spiegazioni di Pandas e Flask. Purtroppo l'autore è inattivo da più di un anno su YouTube, ma il suo contenuto è in gran parte ancora molto ben posizionato e facilmente accessibile.

Ha una cadenza vocale e un modo di strutturare il suo contenuto che rapisce e aiuta la comprensione anche degli argomenti più ostici. Spiccano i tutorial su Pandas, Matplotlib, Django e Flask. Suggerisco di completare la specializzazione Python For Everybody e poi spulciare il suo canale per solidificare ulteriormente le basi.

Real Python

Real Python espande sul contenuto proposto da Sentdex andando anche ad esplorare la parte più orientata alla software engineering, con tutorial e guide per chi vuole programmare applicazioni di vario genere in Python.

Offrono percorsi formativi per vari livelli di expertise, tutti di alta qualità e con numerosi commenti per migliorare la comprensione e connettere con la community attraverso quiz, podcast e Q&A con degli esperti.

Conclusione

Concludo l'articolo dicendo che queste risorse rappresentano ancora oggi per me dei pit stop quasi giornalieri per i problemi che devo risolvere nei miei progetti. Mentre alcuni, come Python for Everybody, sono introduttivi e si focalizzano sulle basi, i blog e i canali YouTube indicati vanno molto più a fondo in varie tematiche che possono interessarci.

Devo molto a ogni creatore coinvolto nel materiale esposto qui, e anche molti altri non menzionati. Le comunità nell'ambito della programmazione e data analytics sono davvero molte e partecipare ad esse ci permette di esperire il contatto diretto con gente più brava di noi. Ed è in questo particolare momento che cresciamo - proprio quando ci mettiamo nei panni degli allievi.

Se volete far parte di una community di appassionati di programmazione, data analytics e machine learning, iscrivetevi alla newsletter di questo blog e unitevi al server Discord di questo blog!

A presto,