¿Cuáles son los escollos más comunes que enfrentan los nuevos programadores?

  1. Falta de confianza,
  2. Dudar acerca de dedicar tiempo para aprender y utilizar un buen editor,
  3. Ver los reveses como fallas en lugar de eventos comunes, y
  4. Buscar el tipo incorrecto de ayuda con preguntas.

Tan pronto como leí esta pregunta, entré en línea para ver si podía encontrar un gran artículo que alguna vez leí sobre cosas que nunca deberías decirle a un nuevo programador. No pude encontrarlo, pero la conclusión principal fue que un nuevo programador debería tener tiempo para hacer pequeños programas utilizando el lenguaje de su elección. Desafortunadamente, en lugar de escuchar aliento positivo, a los nuevos programadores a menudo se les dice que su elección del problema, la elección del idioma, la elección del editor y / o el enfoque general para el aprendizaje es todo incorrecto y que deben hacer x, y y z en su lugar.

Creo que la trampa más común es perder la confianza al principio del proceso. En un mundo ideal, más personas escribirían anécdotas divertidas sobre sus muchas fallas de programación. Y no serían historias de fracaso falsas, “alardeadas” que solo hacen que los novatos se sientan peor. La programación lleva tiempo y requiere persistencia. Es una de las pocas áreas donde cometer errores es común y devastador. En un momento tienes un programa de trabajo y al siguiente no tienes nada.

La segunda trampa puede sonar un poco extraña, pero se relaciona con el problema de la confianza. Si aprende a adoptar un buen editor, le facilitará la vida y le ahorrará mucho tiempo, sin mencionar que se ve y se siente genial cuando realmente utiliza todos los atajos para guardar, sangrar, comentar, ejecutar su código del editor en lugar de la línea de comando, etc. Sin embargo, algunos estudiantes están tan abrumados con la sintaxis de la codificación que lleva tiempo convencerlos de que explorar el editor vale la pena.

El tercer obstáculo es darse cuenta de que muchas cosas no funcionan de forma inmediata, especialmente cuando se trata de instalar y usar paquetes / bibliotecas. El pasado trimestre tuve la oportunidad de impartir un curso sobre programación intermedia de Python. Podría haberme centrado en las estructuras de datos, pero en lugar de eso intenté centrarme en la resolución de problemas (tanto de software como de hardware). Uno de los proyectos en la clase fue crear un programa Pygame. De 80 estudiantes, * quizás * un tercio pudo ejecutar el programa de demostración en su primer intento. El resto tenía una miríada de problemas que iban desde diferencias en el sistema operativo, hasta problemas de instalación de paquetes, hasta la competencia de software por recursos. Un estudiante incluso tuvo que hacer un proyecto por separado porque nunca pudimos resolver todos los problemas de instalación. Y eso está bien . Puede ser muy enriquecedor darse cuenta de que a veces, cuando las cosas no funcionan, no necesariamente se debe a algo que usted hizo .

La cuarta trampa que mencioné tiene que ver con buscar ayuda. Recomiendo encarecidamente codificar con un amigo, sin embargo, haga el esfuerzo de evitar hacer referencia inmediata al código de otras personas para la misma tarea al principio del proceso. Es realmente difícil “desvelar” el código. Si está pidiendo ayuda a otros, hágalo con un bolígrafo y papel, no frente a su computadora portátil o la de ellos. Para aprender a programar, es mejor hablar sobre sus problemas generales, no sobre líneas de código específicas.

Hay muchas otras formas de caerse de los rieles (por ejemplo, no dedicar tiempo regular a un proyecto, codificar para terminar en lugar de codificar para comprender, no seguir las rúbricas con mucho cuidado, etc.). Su mejor opción es crear un equipo de apoyo, trabajar juntos en una ubicación común, ayudarse mutuamente con pequeños problemas de depuración e instalación, y recordar alejarse de vez en cuando. Regresar de un pequeño descanso puede hacer una gran diferencia.