Pues algunas personas, que se pueden considerar buenos programadores lo han logrado a través de pesadas sesiones, de cometer miles de errores, de ser regañados por sus jefes, de comerse libros y en fin, muchisimas adversidades más sin embargo, con la experiencia que van adquiriendo logran HACERSE programadores
Sin embargo, también existen personas, que tiene ciertas habilidades naturales, de encontrar patrones dentro de codigos complejos, manejar una lógica muy sencilla para problemas muy complejos, romper paradigmas, etc, y que al programar no lo consideran trabajo, tienen una facilidad y una pasión, que al encontrar nuevos retos se quedan hasta la madrugada en la oficina, pierden la noción del tiempo, olvidan que tienen hambre, etc..
saludos