JavaScript, HTML, CSS e... !
0 commenti

Non chiedere la soluzione... Cercala!

Come imparare a Programmare da Soli

Imparare a fare le cose da solo. Questa è una delle regole fondamentali, non scritte, per maturare la mentalità dello sviluppatore.

Te ne parlo in questo video!

Cosa ti racconto nel video:

La prima risposta che solitamente mi viene da dare quando qualcuno mi fa una domanda di tipo tecnico, di quelle di cui so che la soluzione si trova davvero dietro l’angolo, è "Hai fatto una Ricerca su Google?". Non lo chiedo per provocazione ma banalmente perché è la prima cosa che farei io. Ci sono molte valide fonti in rete, i motori di ricerca offrono risultati sempre più pertinenti e si trovano esempi praticamente per tutto.

A questo punto, una delle obiezioni che solitamente mi vengono fatte è "come posso cercare qualcosa che non so come si chiama? Non so cosa cercare". Bene, è proprio questo il concetto alla base di tutto. Intanto inizia, in ogni caso difficilmente troverai la soluzione al primo colpo, probabilmente nemmeno al secondo o al terzo, ma dopo un po’ di ricerche, anche se non hai ancora trovato la tua risposta, avrai indirettamente imparato qualcosa, avrai scoperto dei termini nuovi, parole più pertinenti rispetto a quelle che hai utilizzato per le prime ricerche e che andranno ad arricchire il tuo dizionario, capirai come migliorare le ricerche successive e svilupperai sempre di più la tua capacità di individuare tra le risposte quelle che effettivamente possono aiutarti.

Ad oggi il web è pieno di domande e risposte, è molto probabile che cercando con i giusti termini si possa trovare la soluzione cercata, anche se difficilmente troverai la corrispondenza esatta al tuo specifico problema. Tuttavia, con consapevolezza e interpretazione troverai lo spunto o il suggerimento necessario che ti aiuterà a sbloccare la situazione di stallo in cui ti trovi.

In un certo senso si tratta sempre di chiedere qualcosa, ma è diverso. Ingaggiare direttamente qualcuno per fornirti la soluzione non ti aiuta, ti dà l'impressione di soddisfazione in quel momento perché non vedi l'ora di risolvere il problema che ti blocca, ma cosa ti rimane? Appena cambierà una virgola, molto probabilmente sarai di nuovo nella condizione di dipendere da lui. È come se tu chiedessi a qualcuno quale pezzo di un puzzle va messo in un determinato punto, lui lo cerca, te lo fornisce orientato nel verso giusto e te non fai altro che metterlo al suo posto. Questo non significa programmare, è un'occasione non sfruttata per avvicinarsi alla mentalità dello sviluppatore. Molti dei problemi apparentemente bloccanti, una volta risolti, sembreranno delle banalità. Ma dal momento che lo stesso o un altro errore potrà verificarsi di nuovo in altre occasioni o sotto altre forme, non è importante aver capito dove stava quello specifico problema, è importante capire cosa puoi fare per risolverlo.

Thomas Fuller disse "Tutto è difficile prima di diventare facile". Questo passaggio però richiede di cambiare qualcosa, richiede di cambiare mentalità, di spendere del tempo.

Non importa se per risolvere ci impiegherai 1h, 2, 5 o a seguito di un'illuminazione notturna dopo una giornata disarmante e piena di ricerche apparentemente senza successo… se riesci a risolvere da solo, avrai imparato, e non sarà stato il punto di arrivo a portarti valore bensì tutto ciò che ti separava dalla soluzione. Quello che sta in mezzo è il vero valore, si dice che non è importante la meta ma il cammino, ed è proprio questo che ti farà fare un passo dopo l'altro in avanti verso la mentalità dello sviluppatore. Ripetere questo processo in ogni occasione che lo richiede ti porterà al cambio di mentalità. Perché avrai provato, visto errori, cercato di capire perché funziona o perché in quel modo non può funzionare… il senso di soddisfazione dopo aver risolto è impagabile, come se tutte le emozioni negative dovute ai vari tentativi fallimentari fatti fino a quel momento cambiassero improvvisamente di segno. Se invece in quel momento di difficoltà passi la palla ad un altro ed è lui a risolvere al posto tuo, quando vedrai dove stava il problema, realizzerai che ti mancava davvero così poco alla soluzione... a quel punto, invece della grande soddisfazione vi chiederete come avete fatto a non pensarci prima. Sicuramente ci sarai già passato come ci sono passato anch'io :)

Avere la disponibilità di qualcuno che ne sa più di te dà certamente sicurezza, ma imponiti di utilizzarlo come ultimissima spiaggia (e con questo intendo, non utilizzarlo, perché se lui ce la farà allora vuol dire che in qualche modo potevi farcela anche te). Considera che questo qualcuno non è nato imparato, se risolve più o meno velocemente un problema è perché in un momento passato ci ha sbattuto la testa per ore su quel problema e per ore su un altro problema, fino ad acquisire quelle competenze che oggi sembrano scontate. Ma la cosa bella è che molto probabilmente questo qualcuno non ha neanche la soluzione in mano al problema che gli stai proponendo ma ha maturato l'esperienza necessaria per sapere dove dover guardare o nel caso... cosa cercare. Praticamente farebbe la ricerca al posto tuo...

Ci metterai di più, che sia per te, per un amico o per l'azienda rischierai di fare tardi la sera, di andare a letto con un pensiero irrisolto e di portarti dietro il problema per qualche giorno, ma pensa sempre che il tempo che stai spendendo per risolvere il problema non è per quello specifico lavoro che ti è stato commissionato, dall'altra parte interessa solo il risultato finale... quel tempo lo stai invece dedicando a te, per il passaggio alla devèloper mindset.

Fammi sapere nei commenti se ti sei riconosciuto in questo scenario o se hai già avuto modo di mettere in pratica questo approccio e quali sono stati i risvolti che ne hai tratto.

Iscriviti al mio canale se ancora non l'hai fatto per rimanere aggiornato sui prossimi video!

Per il momento ti saluto e ci vediamo al prossimo video, ciao ;)

Tags

Michele Pisani

Michele Pisani

Sviluppatore Javascript ed esperto in Digital Analytics

L'esperienza nel settore Digital Analytics unita ad anni di sviluppo in Javascript ha trovato la massima espressione in Google Apps Script che mi ha permesso, con estrema facilità e poche righe di codice, di realizzare potenti applicazioni interattive e processi automatizzati integrati con i prodotti della G Suite.

Come contattarmi
scrivi un commento

0 Commenti

Non ci sono commenti

Nessuno ha ancora commentato questo articolo, fallo tu per primo!

scrivi un commento

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato.I campi contrassegnati da un * sono obbligatori
Puoi utilizzare i seguenti tag nei commenti:
[bold]testo[/bold] se vuoi evidenziare un testo con il grassetto[code]function helloworld() { }[/code] se vuoi pubblicare una porzione di codice[url]https://www.appsscript.it[/url] se devi riferirti ad un indirizzo web