Prima di tutto, questa non è la domanda generica di "farmi un programmatore migliore", anche se il risultato di porre questa domanda potrebbe sembrare simile ad esso. Su programmers.SE, ho letto e visto questi si chiudono qui , qui , qui , qui e qui .
Sappiamo tutti che ci sono una moltitudine di suggerimenti generici per affinare le tue abilità di programmazione (ad esempio leggere SO, leggere libri consigliati, seguire blog, essere coinvolti in progetti open-source, ecc.). Questo è non quello che sto cercando.
Riconosco anche i lettori attivi su questo sito Web e spero che funzioni a mio favore, fornendo alcune grandi risposte. Dalla lettura della corrispondenza qui, sembra che ci sia un vasto numero di persone esperte che stanno lavorando, o hanno lavorato, campi legati alla programmazione. E molti di voi possono trasmettere pensieri in modo eloquente e conciso.
Di recente ho notato la distinzione tra qualcuno che è capace di programmare e un programmatore che può davvero pensare . Mi rifiuto di credere che per diventare grandi programmatori, semplicemente ci sottomettiamo a una vita di comportamento spugnoso (cioè, assorbiamo tutto ciò che è relativo al nostro campo leggendo, ascoltando, guardando, ecc.). Direi anche che semplicemente conoscendo ogni singolo concetto di programmazione che ti permette di risolvere il problema X più velocemente di tutti quelli che ti circondano, se non puoi pensare , stai enormemente limitando te stesso - sei solo un robot veloce.
Mi piace credere che ci sia un altro aspetto di essere un grande programmatore che non è correlato a quanto sai sulla programmazione, ma è quanto puoi intrecciare nuovi concetti e applicarli alla professione di programmazione o al tuo hobby. Non ho visto nessuno approfondire, o affrontare, questo aspetto della mente umana e della programmazione. (Sì, è anche possibile che non sia stato abbastanza duro anche io - scusa se è così.)
Quindi, per chiunque abbia passato del tempo a pensare a quello che ho menzionato sopra - o forse è tutto qui perché sono un po 'indietro nel mio sviluppo personale / professionale - quali sono i tuoi suggerimenti su come imparare pensa? A parte la solita lettura, cos'altro hai fatto per essere migliore delle altre persone nel tuo / nostro campo?