Imparare a Programmare con Tutorial Significativi

Come si imparare a programmare?

Sicuramente no guardando esempi iper-banali di codice. Quelli tipicamente mostrati nei tutorial base di programmazione. Quindi, come si impara?

Ne parlo in questo video:

Nel video alla fine cerco di argomentare quali sono quindi quei tutorial che riescono ad essere effettivamente utili. Se vogliamo provare a caratterizzarli, si potrebbe dire che questi tutorial vanno a catturare “problemi reali dell’informatica”.

Nel senso…Avete presente tutti quei tutorial che vi spiegano la programmazione ad oggetti facendo l’esempio della persona, che poi diventa uno studente, e via dicendo? Bene il codice scritto in tutti questi esempi non serve ad una cippa. Non risolve nessun problema. Non ha nessuna utilità. È solo usato come analogia per spiegare “l’idea” della programmazione ad oggetti. Cosa per altro abbastanza malsana che non aiuta veramente ad imparare a programmare (Ebbene si, la programmazione ad oggetti, e nello specifico il modo in cui è spiegata, con il tipico dogmatismo delle religioni, non è sempre e comunque una cosa buona e giusta).

Comunque, ritornando al topic. Ok quindi, siamo densi di roba inutile. Ma c’é anche tanta roba utile. Eh si, internet per fortuna è un posto bello grosso, e contiene al suo interno un po’ di tutto.

A seguire una lista di tutorial che sono “utili”, nel senso che vanno ad implementare, totalmente o parzialmente, soluzioni a problemi “significativi” nel contesto informatico.

L’ultima risorsa in particolare contiene un sacco di tutorial a progetti del genere. Tutti basati sulla creazione di tecnologie utilizzando il software.

Notate, tra l’altro, come queste risorse sono praticamente solo in inglese? Cosa si trova di simile in italiano? Di cose che vanno oltre le basi basi dico… Per questo l’inglese è fondamentale.

4 Likes

Ecco purtroppo questo è il mio tallone d’Achille… a scuola ho studiato un altra lingua e faccio una fatica immane a capire un testo inglese. Per fortuna ci sono strumenti per la traduzione… in attesa che qualche AI faccia una traduzione anche del parlato in tempo reale.

Devo dire però che ci sono anche anche ottimi corsi e/o tutorial in italiano, un esempio per me che mi ha dato tanto MorroLinux e ovviamente al padrone di casa :wink:

1 Like

Concordo pienamente su tutto quello detto nel video, ma non capisco come applicarlo a livello universitario. Per esempio tra un mese ho l’esame di programmazione I in C e sono veramente in ansia perché non ci ho capito nulla a lezione. Non vorrei dare la solita colpa al prof, ma in questo caso è così, ancora siamo fermi agli array e le slide che presenta sono pessime lol. Mi sento molto perso e spaesato, quindi se ci sono consigli da chi ci è già passato sono tutt orecchie, magari fonti da cui studiare e fonti da cui esercitarmi.

Purtroppo di risorse utili in italiano che insegnano C in modo serio con i puntatori etc ed altro, non conosco.

C’è questo di Standford che funziona un po’ come introduzione generale alla computer science che ha un po’ di C

thx :)), comunque l’inglese non è un problema, lo mastico abbastanza bene per fortuna.

Ti suggerisco di forkare il Suckless Dynamic Window Manager (DWM): https://dwm.suckless.org/

Non limitarti a studiarlo, modificalo liberamente secondo le tue esigenze, fagli fare quello che vuoi tu, ignorando le intenzioni originali del creatore. Questo approccio ti permetterà di:

  • Vedere come è strutturato un progetto C reale
  • Imparare a capire come funziona il codice di altri programmatori
  • Comprendere le best practices di programmazione in C
  • Sperimentare con le modifiche e vedere gli effetti in tempo reale
  • Sviluppare capacità di debugging e problem solving
  • Familiarizzare con i build-systems come make e git

Non deve essere per forza DWM: qualsiasi progetto open source in C può andare bene. L’importante è che tu abbia progetti reali su cui sperimentare e imparare .

È molto più efficace imparare così che studiando solo teoria!

:alien: Impara a programmare C in 5m

2 Likes

Questo è un ottimo consiglio, ed è infatti assai triste osservare come questa attività è raramente svolta nei corsi universitari.

L’unico modo sensato di imparare un linguaggio è utilizzarlo per fare cose significative o leggere cose significative scritte da altri.

1 Like

grazie mille per il consiglio :), terrò sicuramente a mente DWM dato che volevo già provarlo da tempo su un vecchio pc.