¿Por qué la gente en Quora dice que dominar la programación de computadoras lleva 10 años?

Debido a que los proyectos importantes requieren años por persona para un primer lanzamiento, necesita algunos años de evolución para ver el impacto a largo plazo de sus decisiones, debe hacerlo varias veces para aprender, y necesita algunos años de experiencia trabajando para avanzar proyectos para manejar ese alcance. Eso totaliza más de diez años sin unos pocos trabajos intermedios donde no aprendes a ser mejor.

También necesita tiempo para reunirse y trabajar con personas de las que pueda aprender, por lo que comienza a pararse sobre sus hombros, no al nivel del suelo, con milenios de personas por encima de usted.

No llegarás allí como aficionado porque eso deja muy poco tiempo para practicar y no permite el acceso a los mejores mentores, aunque eso está bien. Puede disfrutar de la programación de la misma manera que la gente disfruta de deportes como el ciclismo y el esquí con menos dedicación profesional.

Me parece que dominar cualquier cosa requerirá 10 años (es decir, mucho tiempo). ¿Cuánto tiempo lleva dominar las matemáticas, la música o el ajedrez?

Esto es lo que la mayoría de la gente no entiende: programar es difícil . De la misma manera que las matemáticas, la música y el ajedrez son difíciles. Se requiere una disciplina mental para aplicar la lógica y la razón para resolver problemas técnicos.

Solía ​​jugar ajedrez en torneos. Déjame decirte que, durante los primeros 10 años, chupé el ajedrez. Pero seguí enchufándolo hasta que me recuperé.

Lo mismo con la programación.

Permítanme dejar una cosa perfectamente clara: aprender un lenguaje de programación NO es lo mismo que aprender programación . El primero trata sobre el aprendizaje de la sintaxis y características del lenguaje, no demasiado difícil. El último se trata de aprender a resolver problemas ; Esto es muy difícil. Se necesita tiempo, paciencia y trabajo duro para desarrollar sus habilidades.

La estimación de diez años es solo una regla general aproximada. El “dominio” es subjetivo. Algunas personas entienden que significa al menos 10,000 horas de estudio, o una maestría, o convertirse en un maestro artesano, o … [gran lista de alternativas eliminadas debido a la pereza, que es una de las tres principales virtudes de un programador].

Una persona inteligente y trabajadora puede alcanzar los hitos mencionados en menos de diez años, pero, por otro lado, ¿qué significa dominar todos los lenguajes de programación principales? Cuando intentas responder a esa pregunta, estás lidiando con la vaguedad del término ‘dominio’ y, además, con las preguntas de qué constituye una ‘lengua de programación principal’ y cuánto tiempo debe ser exactamente la lista de ‘lenguajes de programación principales’.

No existe una definición generalmente aceptada de ‘computadora consciente’. Simplemente con tal definición … bueno, si desea que la comunidad científica lo tome en serio, debe tener un doctorado en ciencias de la computación y filosofía (en mi muy humilde opinión). Lograr eso probablemente te lleve más de diez años.

La cifra de los “diez años” es solo una intuición que comparten muchos coroanos. Han aprendido que ‘dominar la programación’ implica tanto comprender una gran cantidad de teoría de la informática como mucha práctica. ¡No dejes que eso te desanime! Podrían creer que un programador maestro debería estar familiarizado con las obras de Dijkstra, Knuth y Turing, pero eso no significa que ningún supergenio común y corriente no pueda venir y crear una singularidad kurzweiliana. !

Recomiendo ignorarlos, si usted es serio y puede sentarse durante aproximadamente 12 horas de 24 horas con algunos pequeños descansos en el medio, es posible aprender un idioma completo y usarlo de todas las formas posibles, lo que lo hace casi dominarlo. . Literalmente leí la totalidad de C ++ y STL desde aquí (referencia de C ++ – cppreference.com) en exactamente 10 días trabajando aproximadamente 12 horas con pocos descansos. Si eres serio, interesado y enfocado, me sorprendería mucho lo que puedes hacer en 10 * 365 días.