Come insegnare a te stesso a programmare con successo

Dopo aver pubblicato il mio precedente articolo su come sono diventato uno sviluppatore di software di 19 anni, centinaia di persone sono venute da me praticamente con lo stesso messaggio: "Mi è piaciuto leggere il tuo articolo e voglio davvero imparare a programmare, ma semplicemente non riesco a superare quel primo passo. È così frustrante e travolgente, mi mancano la struttura e la motivazione ". Voglio coinvolgere quante più persone possibile nel mondo della tecnologia e penso che sia molto importante concentrarsi sulle persone che sono molto motivate, ma semplicemente non sanno come farlo.

So che al giorno d'oggi ci sono migliaia di risorse là fuori che "ti insegneranno a programmare". Tuttavia, questa non è sicuramente la parte più importante qui, e non è proprio di questo che tratta l'articolo. Il modo in cui strutturi la tua vita attorno ad esso, gestendo tutte le nuove informazioni, mantenerti motivato e concentrarti sulle parti giuste è fondamentale.

Sì Lydia, sembra carino e tutto, ma sento che questo sarà solo un altro articolo che mi motiverà per tipo 10 minuti, fino a quando non tornerò a guardare Netflix di nuovo! Prima di iniziare, voglio davvero che tu capisca che se sei disposto a insegnare a te stesso come programmare o imparare a programmare in generale, sei fantastico. Hai già dimostrato che puoi pensare diversi passi avanti e puoi spingerti lontano dalla tua zona di comfort, anche se non l'hai ancora fatto! Se puoi essere entusiasta di imparare qualcosa che ancora non conosci e qualcosa che ti sembra travolgente, sarai sicuramente un buon sviluppatore.

Sono stato un tutor per molti anni e spesso ho visto uno schema quando gli studenti mi hanno detto che non erano più motivati. Si sono concentrati su un obiettivo più grande, ignorando i miglioramenti piccoli ma molto importanti che stavano apportando, il che li faceva sentire come se non stessero andando da nessuna parte. Sebbene sapessi che questa è una cosa molto importante da tenere a mente quando si impara una nuova abilità, mi sono ritrovato ad avere gli stessi identici pensieri quando ho iniziato a programmare. Mi sentivo come se non stessi facendo alcun progresso, perché pensavo che tutti intorno a me fossero di molti livelli più alti di me, e non sarei mai stato capace di essere così bravo.

Mentre pensavo a tutto questo, ho completamente ignorato molti passaggi importanti che avevo già fatto. Prima che me ne rendessi conto, potevo scrivere codice senza nemmeno doverci pensare due volte e potevo creare ogni volta app più complesse. Semplicemente perché continuavo a confrontarmi con persone che avevano anni di esperienza, non lo vedevo nemmeno come un progresso. Tutto quello che riuscivo a pensare era " Sono ancora così lontano dal mio obiettivo".

La gobba quando si impara a programmare è reale e tutti lottano per superarla. La gobba è più grande per alcune persone che per altre, ma voglio davvero aiutarti a superarla. Non deve assolutamente essere lì, poiché è tutto nella tua mente, ma è più facile a dirsi che a farsi. La lotta è diversa per tutti, ma mi concentrerò sui problemi più comuni che le persone devono affrontare quando imparano a programmare: come gestire le nuove informazioni nel modo più efficace possibile e come rimanere motivati. Non mi concentrerò su come trovare il megliorisorse, poiché questo è molto soggettivo.

Gestire efficacemente nuove informazioni

Ognuno è diverso e non tutti assorbono le informazioni allo stesso modo degli altri. Sì , capitano Ovvio , ma non è così ovvio come potrebbe sembrare. Prima di iniziare a imparare a programmare, devi imparare a imparare.

Presto scoprirai, o probabilmente avrai scoperto, che ci sono due tipi di risorse disponibili ovunque: corsi online e documentazione linguistica. Tuttavia, finché non sei una sorta di genio superumano, semplicemente non ricorderai tutte le nuove informazioni solo guardando i corsi (soprattutto perché è davvero difficile rimanere concentrati, non prendiamoci in giro, possono essere estremamente noioso) o leggere un testo semplice. È del tutto normale sentirsi persi e confusi mentre si guardano i corsi o si leggono i documenti, all'inizio tutti hanno difficoltà. I programmatori possono avere difficoltà a spiegare il codice a persone che non ne hanno molta conoscenza, senza usare altri termini vaghi e geniali (guardandoti, Stack Overflow!).

Non importa quanto bravo pensi di essere: non saltare i fondamenti. Inizia sempre a imparare una lingua dall'inizio e non saltare nulla. I fondamentali sono estremamente importanti e te ne pentirai in seguito se non presti attenzione a loro! Sì, puoi sempre cercarlo su Google, ma questo ti renderà solo uno sviluppatore più lento. Se stai leggendo la documentazione, inizia dalla prima pagina (o 1.1 in molti casi) e continua a leggere. Per alcune persone questo potrebbe sembrare una perdita di tempo, ma credimi: non lo è. Presta attenzione ai piccoli dettagli e ti ringrazierai più tardi!

Se fai fatica a capire i fondamenti, rilassati! Starai completamente bene. Quanto ti sforzi in questo momento non indica assolutamente quanto sarai bravo come programmatore in seguito.

Dopo ogni 10 minuti o dopo ogni paragrafo che hai letto, spiega con parole tue ciò che hai appena imparato . Questo può essere piuttosto difficile, ma scoprirai presto quali parti non hai ancora capito del tutto. L'insegnamento è il modo migliore per imparare, anche se non c'è nessuno in giro! Fai finta di spiegarlo a qualcun altro e una volta che hai capito di non capire molto bene una certa parte: ricercala subito e scrivi la risposta! Scrivendolo, stai pensando ancora di più alla risposta, il che la rende molto più facile da ricordare.

Non limitarti ad ascoltare il corso o non limitarti a leggere la documentazione: partecipa attivamente mettendo a disposizione il tuo progetto personale. Implementa ogni nuova cosa che impari, non importa quanto piccola sia! Non è così facile come sembra, anzi può essere molto frustrante, ed è allora che sai che lo stai facendo bene. Migliora le tue capacità di codifica facendolo spesso, non semplicemente conoscendolo! Credimi, stai migliorando in questo ogni volta che lo fai, anche se non te ne rendi conto!

Rimanere motivati

Molte persone mi hanno chiesto come ho potuto spingermi a programmare così tanto in un giorno normale. Mi ci è voluto un po 'per trovare un buon modo per spiegare i miei pensieri dietro, ma penso di averlo finalmente trovato!

A tutti piace giocare, indipendentemente dal tipo di gioco. Alla gente piace giocare perché ottieni una gratificazione immediata, ti senti come se avessi realizzato qualcosa e riesci a vedere te stesso che stai migliorando. Questa è la formula perfetta per la motivazione!Sono stato in grado di ottenere la stessa esperienza, ma mentre codificavo invece di giocare. Ed è molto più facile di quanto pensi.

Stabilisci piccoli obiettivi. Non perché non si preoccupano di miglioramento: ma perché si fa cura di miglioramento. Fai una lista delle cose che vuoi fare quel giorno: forse sta solo leggendo 1 pagina, o guardando 1 corso, o semplicemente scrivendo 10 righe di codice. Potendo dire che hai completato tutta la tua lista di cose da fare, ti sentirai molto soddisfatto e molto più sicuro dei tuoi progressi. È molto meglio dire " ho fatto tutto quello che volevo fare oggi ", piuttosto che dire " ho completato solo il 2% del corso oggi ". Inoltre, anche se hai letto solo 1 pagina o creato 1 campo di input, è comunque estremamente importante saperlo. Gratificazione immediata!

Ricorda costantemente a te stesso quanto lontano sei già arrivato. Può sembrare davvero difficile, perché spesso passa inosservato. Non ti vedi attivamente progredire, ma credimi: ogni giorno che codifichi (anche un po '), stai migliorando. Il modo migliore per farlo è avere un piccolo diario. Spiega in una frase con cosa hai lottato quel giorno e ripensaci un mese dopo. C'è una possibilità molto, molto grande che ora non combatti affatto! Puoi vederti migliorare in questo.

Lavora su un progetto personale che ti interessa davvero! Non uno dei milioni di elenchi di cose da fare là fuori, ma qualcosa che vuoi davvero costruire. Ora non pensare a un'auto a guida autonoma oa un robot che può lavare i piatti per te, ma scegliendo qualcosa di più piccolo, come ricreare il layout di un sito web o un piccolo gioco, noterai che sei molto più motivato a finiscilo. Una volta che il progetto è finito, hai effettivamente qualcosa da mostrare: hai realizzato qualcosa!

Renditi conto che stai facendo molto meglio di quanto pensi di essere. Si chiama anche sindrome dell'impostore. Potresti sentire che tutti intorno a te ne sanno molto di più ed è molto più bravo di te: ma semplicemente non è vero. Non posso enfatizzarlo abbastanza: sarai un buon sviluppatore se continui a spingere. Hai già dimostrato di essere in grado di programmare semplicemente essendo abbastanza motivato da impararlo, hai perfettamente capito.

Cose da tenere sempre a mente

  • Non confrontarti mai con altri sviluppatori . Consiglio molto cliché, ma è fondamentale. Non confrontare il tuo capitolo 1 con il capitolo 20. Ti ritroverai nella loro posizione molto, molto più velocemente di quanto pensi! Ho postato questa foto sopra, perché so che mi sarei sentito intimidito se l'avessi vista 4 mesi fa. Ora, ne rido e posso persino individuare alcuni errori che ho fatto lì!
  • Stai facendo molti più progressi di quanto pensi. Ogni volta che studi o scrivi codice, stai crescendo. Accettalo e basta (so che è difficile).
  • Tutti lottano all'inizio, non sei solo, e questo non significa che sarai un cattivo programmatore. Il modo in cui ti senti ora è del tutto normale e questa è solo una parte del processo di apprendimento. Presto guarderai indietro a questa frustrazione che stai attraversando e sarai d'accordo con me!

Se puoi, prova a trovare un mentore. Ho avuto il migliore che potessi mai desiderare, e sono assolutamente disposto a essere tuo se mi contatti . È fantastico se puoi fare domande veloci a qualcuno e ottenere ispirazione, questo sicuramente aiuta a superare quella gobba.

Sentiti libero di farmi domande o chiedermi le risorse giuste inviandomi un messaggio sul mio Instagram o aggiungimi su LinkedIn!