La respuesta de Scott Sturgeon es excelente, y me gustaría agregar un toque personal a lo que ha dicho.
Necesita muy poca codificación real. Lo más importante es elegir problemas que estén en el mejor rango para desarrollar su habilidad, lo cual es bastante difícil de resolver por sí mismo (es por eso que las personas van a la escuela para aprender programación / CS).
Encuentre problemas sugeridos por programadores experimentados. Elija uno que parezca que tomará mucho tiempo * comprender * y resolver, pero no necesariamente mucho tiempo para codificarlo. Luego, siéntese, tenga dolores de cabeza, intente cosas, frustrarse.
- ¿Qué es más preferible que el otro: un CSE MAIT (segundo turno) o un CSE MSIT (primer turno)?
- Si amas la programación de computadoras y eso es todo lo que quieres hacer, ¿qué título universitario elegirías?
- ¿Cómo puede un estudiante no CS entrar en Google?
- ¿Qué es mejor para un trabajo en ciberseguridad, tecnología de la información o informática?
- Cómo comenzar a vivir del desarrollo del juego
Como regla general, un buen problema es frustrante, pero no totalmente confuso. Si observa un problema durante 20 minutos y literalmente no tiene idea de qué hacer, es demasiado difícil. Si básicamente lo resuelve en 20 minutos y solo tiene que hacer la codificación, es demasiado fácil. Un buen ejercicio lo hará progresar después de unos minutos de mirarlo, y debería tomar algunas horas para obtener una solución agradable y limpia. Es bueno complementar con algunos ejercicios más fáciles para mantener su confianza, y también para revisar los ejercicios que ha completado y resolverlos nuevamente, solo para ayudarlo un poco, ya que sentirse tonto es un efecto secundario del aprendizaje, y tenemos que sentirnos inteligente a veces también!
Dicho todo esto, es útil tener fluidez en la sintaxis de * one * language. Simplemente elija uno que sea multipropósito y que tenga muchos recursos de aprendizaje, como python. Esa fluidez se traducirá a cualquier otro idioma que encuentre más adelante.