di Lydia Hallie
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 con fondamentalmente lo stesso messaggio: “Mi è piaciuto leggere il tuo articolo, e voglio davvero imparare come programmare, ma semplicemente non riesco a superare quel primo passo. È così frustrante e travolgente, mi mancano la struttura e la motivazione.”Voglio coinvolgere il maggior numero possibile di persone 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 ci sono migliaia di risorse là fuori al giorno d’oggi che ti “insegneranno come codificare”. Tuttavia, questa non è sicuramente la parte più importante qui, e non è proprio questo l’argomento di questo articolo. Come strutturare la vostra vita intorno ad esso, la gestione di tutte le nuove informazioni, mantenere se stessi motivati, e concentrandosi sulle parti giuste è fondamentale.
Sì Lydia, che suona bello e tutto, ma mi sento come questo sarà solo un altro articolo che mi motiverà per come 10 minuti, fino a quando sono tornato a binge-watching Netflix di nuovo! Prima di iniziare, voglio davvero che ti rendi conto che se sei disposto a insegnare a te stesso come codificare o ad imparare come codificare in generale, sei fantastico. Hai già dimostrato che puoi pensare a diversi passi avanti e puoi spingerti lontano dalla tua zona di comfort, anche se non l’hai ancora fatto! Se si può essere entusiasti di imparare qualcosa che non sai ancora e qualcosa che si sente schiacciante, sarà sicuramente un buon sviluppatore.
Sono stato un tutor per molti anni, e spesso ho visto un modello quando gli studenti mi hanno detto che non erano più motivati. Si sono concentrati su un obiettivo più grande, ignorando i piccoli ma molto importanti miglioramenti che stavano facendo, che li hanno fatti sentire come se non stessero andando da nessuna parte. Anche se sapevo che questa è una cosa molto importante da tenere a mente quando si impara una nuova abilità, mi sono trovato ad avere gli stessi pensieri quando ho iniziato a programmare. Mi sentivo come se in realtà non stavo facendo alcun progresso, come ho pensato che tutti intorno a me era così tanti livelli più alti di me, e non sarei mai stato in grado di essere così bravo a farlo.
Mentre stavo pensando a tutto questo, ho completamente ignorato molti passi importanti che avevo già fatto. Prima che me ne rendessi conto, potevo scrivere codice senza nemmeno doverci pensare due volte e potevo creare app più complesse ogni volta. 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 fanno fatica a superarla. La gobba è più grande per alcune persone che per altri, ma voglio davvero aiutarti a superare questo. Non deve assolutamente esserci, perché è 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 affrontare le nuove informazioni nel modo più efficace possibile e come rimanere motivati. Non ho intenzione di concentrarsi su come trovare le migliori risorse, in quanto questo è molto soggettivo.
Gestire efficacemente le nuove informazioni
Ognuno è diverso e non tutti assorbono le informazioni allo stesso modo dell’altro. Sì, capitano Ovvio, ma non è così ovvio come potrebbe sembrare. Prima di iniziare a imparare come codificare, devi imparare come imparare.
Scoprirai presto, o probabilmente lo avrai scoperto, che ci sono due tipi di risorse disponibili ovunque: i corsi online e la documentazione linguistica. Tuttavia, finché non sei una specie di genio super-umano, semplicemente non ricorderai tutte le nuove informazioni semplicemente guardando i corsi (soprattutto perché è davvero difficile rimanere concentrati, non scherziamo, possono essere estremamente noiosi) o leggendo un testo normale. È del tutto normale sentirsi persi e confusi mentre si guardano i corsi o si leggono i documenti, tutti lottano all’inizio. I programmatori possono avere difficoltà a spiegare il codice a persone che non ne hanno molta conoscenza, senza usare altri termini vaghi geek (guardandoti, Stack Overflow!).
Non importa quanto bene pensi di essere: non saltare i fondamenti. Inizia sempre ad imparare una lingua dall’inizio e non saltare nulla. I fondamenti sono estremamente importanti e te ne pentirai più tardi se non presti attenzione a loro! Sì, puoi sempre 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 leggere la strada fino. Per alcune persone questo potrebbe sembrare una perdita di tempo, ma credetemi: non lo è. Presta attenzione ai piccoli dettagli e ti ringrazierai più tardi!
Se fai fatica a capire i fondamenti, rilassati! Starai benissimo. Quanto si lotta in questo momento assolutamente non indica quanto bene di un programmatore si sarà 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 presto scoprirai quali parti non capisci ancora. Insegnare è il modo migliore per imparare, anche se non c’è nessuno in giro! Fai finta di spiegarlo a qualcun altro, e una volta capito che non capisci molto bene una certa parte: cerca subito e scrivi la risposta! In realtà scrivendolo, stai pensando alla risposta ancora di più, il che lo rende molto più facile da ricordare.
Non basta ascoltare il corso o non basta leggere la documentazione: partecipare attivamente avendo il proprio progetto personale sul lato. Implementa ogni nuova cosa che impari, non importa quanto sia piccola! Questo non è così facile come sembra, infatti può essere molto frustrante, ed è allora che sai che stai facendo bene. Migliora le tue abilità di codifica facendolo spesso, non semplicemente conoscendolo! Fidati di me, stai migliorando in questo ogni volta che lo fai, anche se non te ne rendi conto!
Rimanere motivati
Molte persone mi hanno chiesto come sono stato in grado di spingermi a codificare così tanto in un giorno normale. Mi ci è voluto un po ‘ per trovare un buon modo per spiegare i miei pensieri dietro di esso, ma penso di averlo finalmente trovato!
A tutti piace giocare, non importa che tipo di gioco. Alla gente piace il gioco perché ottieni una gratificazione immediata, ti senti come se avessi realizzato qualcosa e riesci a vederti diventare migliore. Questa è la formula perfetta per la motivazione! Sono stato in grado di ottenere la stessa esperienza, ma durante la codifica invece di gioco. Ed è molto più facile di quanto pensi.
Imposta piccoli obiettivi. Non perché non si cura di miglioramento: ma perché si cura di miglioramento. Crea una lista di cose che vuoi fare in quel giorno: forse sta solo leggendo 1 pagina, o guardando 1 corso, o semplicemente scrivendo 10 righe di codice. Essendo in grado di dire che hai completato l’intero todo-list, vi sentirete molto soddisfatto e molto più sicuri circa i vostri 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, questo è ancora estremamente importante da sapere. Gratificazione immediata!
Ricorda costantemente a te stesso quanto sei già arrivato. Questo può sembrare davvero difficile, perché spesso passa inosservato. Non ti vedi attivamente progredire, ma credimi: ogni giorno codifichi (anche un po’), stai migliorando. Il modo migliore per farlo è avere un piccolo diario. Spiega in una frase cosa hai lottato con quel giorno, e guardalo indietro un mese dopo. C’è una molto, molto grande possibilità che ora non lottare con esso a tutti! Si può vedere se stessi diventando meglio a questo.
Lavora a un progetto personale che ti interessa davvero! Non uno dei milioni di todo-list là fuori, ma qualcosa che in realtà si vuole costruire. Ora non pensare a un’auto a guida autonoma o a un robot che possa fare i piatti per te, ma scegliendo qualcosa di più piccolo, come ricreare un layout di un sito Web o un piccolo gioco, noterai che sei molto più motivato a finirlo. Una volta che il progetto è fatto, in realtà hai qualcosa da mostrare: hai realizzato qualcosa!
Renditi conto che stai facendo molto meglio di quanto pensi di essere. Si chiama anche sindrome dell’impostore. Si potrebbe sentire come tutti intorno a te sa molto di più su di esso ed è molto meglio di te: ma questo non è semplicemente vero. Non posso sottolinearlo abbastanza: sarai un buon sviluppatore se continui a spingere. Hai già dimostrato di essere in grado di codificare semplicemente essendo abbastanza motivato da impararlo, hai totalmente ottenuto questo.
Cose da tenere sempre a mente
- Non paragonarti mai ad altri sviluppatori. Consigli molto cliché, ma è fondamentale. Non confrontare il tuo capitolo 1 con il capitolo 20 di qualcun altro. Sarete nella loro posizione molto, molto più veloce di quanto si pensi! Ho postato questa foto qui sopra, perché so che mi sarei sentito intimidito da esso se ho visto questo 4 mesi fa. Ora, ho appena ridere e può anche individuare alcuni errori che ho fatto lì!
- Stai facendo molti più progressi di quanto pensi. Ogni volta che studi o codice, stai crescendo. Accettalo (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 è completamente normale, e questa è solo una parte del processo di apprendimento. Presto, si guarda indietro a questa frustrazione che stai attraversando, e d’accordo con me!
Se sei in grado di, prova a trovare un mentore. Ho avuto il meglio che potessi mai desiderare, e sono assolutamente disposto ad essere tuo se ti rivolgi a me. È fantastico se puoi fare domande veloci a qualcuno e ottenere qualche ispirazione, questo aiuta sicuramente a superare quella gobba.