Alguien me dijo que su novia acaba de comenzar a aprender programación y que ella lo aprendió en 2 horas. es posible?

Programar como muchas otras asignaturas no es un “poder” o “no puedo” con dos valores. Decir que “sabes matemáticas” significa cosas diferentes para diferentes personas. Un niño de 10 años sabe matemática si sabe las tablas de multiplicar y puede hacer multiplicaciones de 2 por 2 dígitos, mientras que un profesor de Matemáticas difícilmente consideraría las tablas de multiplicar.

Me fue fácil entender los conceptos de programación. Mis compañeros de clase tenían calculadoras programables que tomé prestadas para hacer cosas divertidas como calcular factoriales donde el resultado se convirtió en [math]> 10 ^ {99} [/ math] al separar la mantisa y el exponente. Mis padres no podían pagar una calculadora programable para mí, esto fue hace mucho tiempo.

De todos modos, la programación se volvió natural para mí, pero con mi conocimiento actual no me consideraría un programador decente en ese entonces.

Una persona con talento puede captar un par de conceptos como que un programa es una serie de instrucciones, una sentencia if y quizás un bucle for (el concepto JSP de secuencia / selección y repetición) en unas pocas horas y tal vez pueda escribir un trivial programa.

Aprender un idioma llevaría mucho más tiempo. Luego, aprende un marco lo suficientemente bueno como para que funcione aún más. Finalmente, la capacidad de tomar los requisitos difusos y traducirlos en código fuente estructurado y mantenible, incluido el manejo completo de errores y las pruebas unitarias, requiere mucha experiencia.

Pregúntate a qué te refieres cuando dices ” ella lo aprendió en 2 horas”.

¿Qué aprendió ella en dos horas?

¿Qué es una variable? ¿Cómo imprimir “Hello World” a la consola? ¿Cómo usar una sentencia if?

¿Aprendió a ser una desarrolladora de pila completa con los 100 mejores entregas más rápidas a través de Crowdsourcing y encontró una startup con un valor de $ 10 millones en 2 horas?

Con toda seriedad, aunque dentro de dos horas es posible comprender los conceptos básicos de comenzar a programar, cierta sintaxis del lenguaje que está utilizando y qué tipos de datos son. Probablemente, dos horas es tiempo suficiente para comenzar a escribir programas para los que puede ver un uso y hacer que desee continuar con la programación.

Así que diría que es posible que 2 horas sean lo suficientemente largas para comenzar a aprender a programar. Pero nadie ha ‘aprendido a programar’. No importa cuánto tiempo pases aprendiendo sobre nuevas tecnologías y los detalles de diferentes idiomas, no es como si pudieras llegar al punto donde lo aprendiste. Se introducen constantemente nuevas tecnologías, lo que significa que con cada día habrá más cosas que aprender.

Yo mismo me he enfrentado a casos similares, donde las personas versadas en un lenguaje de programación deberían venir al día siguiente y decir que han aprendido otro.

Simplemente siguen los tutoriales y aprenden la sintaxis básica de entrada-salida. Para decir que sabe de programación, debe saber muchas cosas, incluidas las estructuras de datos, los algoritmos y al menos un lenguaje de programación en el que implementará todo.

Se necesitan meses, si no años, para que uno diga que son programadores.

La persona que te dijo esto está equivocada. No, no es posible. Algunos de los principios fundamentales podrían explicarse en un par de horas. Tener una comprensión superficial de los principios básicos es muy diferente a tener cualquier experiencia.

Esta es una triste historia sobre nuestra profesión. Nadie dice que su novia aprendió medicina en dos horas, odontología en dos horas, farmacia en dos horas o ley en dos horas. Ellos esperan que ella vaya para el grado pertinente.

Aprendí a dibujar un gato y perros simples en aproximadamente 30 minutos, pero eso no significa que pueda seguir pintando la última cena o dibujar un gato de aspecto realista con mis 30 minutos de lecciones de arte. Lo mismo se puede decir sobre cómo Para programar en 2 horas.