Ho programmato per 15 anni con laurea non CS. Il motivo principale per cui ho iniziato a programmare è stato che mi piaceva imparare cose nuove e applicarle al mio lavoro. E sono stato in grado di trovare e correggere gli errori di programmazione e le loro cause più velocemente di altri. Ma non mi trovo mai un guru o un esperto, forse a causa del mio maggiore non CS. E quando ho visto grandi programmatori, ho notato che sono molto bravi, molto meglio di me, naturalmente, nel risolvere i problemi.
Un'abilità che ho trovato nella mia metà carriera è quella di pensare a requisiti e compiti in ordine inverso e astratto. In questo modo, posso vedere cosa è veramente necessario per me fare senza dettagli e trovare rapidamente parti di soluzioni già esistenti.
Quindi mi chiedo se ci sono altre capacità di pensiero per essere un buon programmatore. Ho seguito Q & come sotto e in realtà leggere alcuni dei libri consigliati lì. Ma non potevo davvero prendere buoni metodi direttamente applicabili per il mio lavoro di programmazione.