¿Me equivoco al pensar que casi todos los programadores son puramente autodidactas (sin un mentor / maestro)

Tienes razón y estás equivocado. Los programadores aprenden de una fuente u otra; ningún programador surge en el vacío. Una persona, libro o tutorial en línea se utiliza como profesor. No puedes aprender programación 100% solo.

Soy lo más autodidacta posible, pero yo también tuve una combinación de clases, instrucción individual, extracción de información de libros, etc. La forma en que aprendí a programar podría ser ilustrativa.

Tengo graves dificultades de aprendizaje, por lo que no aprendí a leer hasta los 11.5 años. Obtuve mi primera computadora en casa a los 11 años (1981), y dentro de las 48 horas de jugar con ella, aprendí los conceptos básicos de la programación con solo ingresar el texto divertido en las ilustraciones del manual de referencia de Apple II (antes de aprendí a leer).

Este es un talento natural, pero el talento por sí solo no lo convierte en un programador profesional. A partir de ese momento, tomé todas las clases que pude encontrar en computadoras generales, y afortunadamente, la mayoría de las clases en esos días eran prácticas, no teóricas. Corté la escuela, yendo a la biblioteca CS en UC Berkeley. Aprendí mucho allí.

Al final, diría que el 80% de lo que aprendí surgió de errores al escribir código, y el resto provino de tipos no tradicionales de capacitación “formal”.

Por ejemplo, casi reprobé mi último año de secundaria, porque estaba cortando la clase para sentarme detrás de las clases de CS en la UCB. Debido a que era un estudiante de educación especial, me salvé cuando el distrito escolar me permitió tomar clases en el colegio comunitario local, donde tuve acceso a un antiguo IBM 360, etc.

Entonces, mi aprendizaje no fue 100% autodidacta, pero mi ruta educativa fue muy poco tradicional. Al final de mis 30 años, finalmente obtuve un BS real en educación CS. Una cosa que les enseño a mis alumnos: nunca tome lo que el libro o lo que digo es el principio y el final.

En cierto sentido, un maestro no puede enseñar a alguien que no está tratando activamente de aprender, por lo que la autoaprendizaje es un componente de eso. Pero, por otro lado, alguien que trata de aprender sin un maestro (o un libro o curso) está haciendo su vida mucho más difícil de lo necesario.

El aprendizaje es una actividad social para crear nuevos patrones de pensamiento en el alumno. Cuanto más participe el alumno en esto, mejor será el proceso. Cuanto mejor adapte el profesor el material al nivel de comprensión del alumno, mejor será el proceso. Los maestros también ayudan a aportar ideas al alumno que de otro modo no se considerarían, y pueden ayudar a evitar los “agujeros” que las personas autodidactas suelen tener al asegurarse de que todo el material esté bien cubierto.

Entonces sí, está mal. Hay desarrolladores autodidactas por ahí, y si tienes una larga carrera serás autodidacta, al menos en parte. ¿Pero todo? De ninguna manera. Eso es demasiado difícil o ineficiente para la mayoría de las personas.

Sí, estás completamente equivocado.

Los programadores no son autodidactas. Si no aprenden de una clase, aprenden de un tutorial, un libro o documentación.

Alguien más impartió la información de la que un programador aprende, incluso si no es un aula universitaria.

No puedes sentarte frente a un teclado y aprender a escribir código de la misma forma en que puedes coger una guitarra y descubrir cómo tocar.

Ningún programador es autodidacta, a algunos les gusta acariciar sus egos porque se motivaron para aprender en caminos no tradicionales.

Mi punto de vista puede ser un poco extremo, pero veo la educación formal como equivalente a leer la tabla de contenido en un libro que hace un buen trabajo dividiendo el contenido en un montón de pequeñas secciones. Tienes una idea decente de lo que hay disponible para aprender. Pero cuando sales al mundo real, ese es el momento en que realmente lees el libro.

Creo que esto es cierto para casi todos los temas, no solo para la programación. Pero ha sido particularmente cierto en mi propia experiencia.