La mejor manera de comenzar a aprender a programar es encontrar un proyecto accesible que le interese. Debe ser algo que se pueda simplificar lo suficiente como para que un novato pueda hacer un progreso significativo en él mientras aprende a codificar, pero lo suficientemente ambicioso como para proporcionar una serie sucesiva de problemas cada vez más difíciles para mejorar sus capacidades de programación.
En comparación con los ejercicios de programación de libros de texto, este enfoque autodirigido de forma más libre fomenta más creatividad y auto motivación.
Este estilo de aprendizaje es mucho más azaroso y es probable que deje lagunas en su conocimiento, pero cuando comienza a programar, lo más importante es hacer que la actividad sea divertida para motivarse y convertir la programación en un pasatiempo, no en una tarea. .
Por lo tanto, su primer programa tendrá muchos problemas fundamentales, y perderá tiempo con enfoques ineficientes o sin salida, pero si se está divirtiendo mientras construye la experiencia y la mentalidad de un programador, entonces aún vale la pena.
- ¿Es difícil aprender a hacer marketing de Facebook para una pequeña empresa?
- ¿Cuáles son algunas cosas básicas que debería saber sobre fotografía?
- Cómo aprender a tocar el ukelele.
- ¿Contribuir a un proyecto de código abierto es una buena forma de aprender un nuevo lenguaje de programación?
- ¿Qué idioma aprender, volver a lo básico? ¿Libros?
Por ejemplo, puedes comenzar con un juego de disparos 2D descendente. La forma más básica de esto es simplemente poder mover un personaje / imagen por la pantalla con las teclas de flecha (eventos de pulsación de tecla). Una vez que tenga eso, querrá poder crear una instancia de los proyectiles que viajan a una velocidad fija a través de la pantalla (temporizadores y sprites generados dinámicamente). Entonces querrás a los tipos malos que pueden matar a tu personaje o que te maten cuando son alcanzados con una bala (detección de colisión). Luego, puede comenzar a usar sprites animados para hacer que los gráficos sean más atractivos (spritemaps, animation). Después de eso, puede agregar un contador de puntaje, un número limitado de vidas, un tablero de puntaje superior e implementar gradualmente más reglas / mecánica / elementos de UI. Entonces es posible que desee desplazarse por el fondo o guardar niveles / mapas personalizados, que son solo matrices 2D de mosaicos, como archivos externos (matrices y acceso a archivos). Luego puede agregar efectos de sonido, multijugador en red, efectos de partículas, gráficos de procedimientos, etc. Las posibilidades son literalmente infinitas y, sin embargo, puede comenzar con la versión más sencilla con una experiencia de programación mínima (utilizando el lenguaje correcto).
Si no puedes encontrar una manera de hacer que la programación sea divertida, entonces básicamente estás muerto en el agua. Con una gran autodisciplina, es posible que pueda aprender a programar a pesar de que le resulte aburrido, pero muy pocas personas lo logran de esta manera.
Lo que me lleva al siguiente tema: la diferencia entre aprender informática y programación. Programar es algo realmente fácil de aprender, incluso a una edad temprana, porque es una habilidad práctica de inmediato que se presta bien para el aprendizaje por descubrimiento autodirigido. Es algo que se aprende principalmente al hacer, y el proceso de aprendizaje generalmente involucra retroalimentación inmediata que genera mucha novedad para llamar su atención. Usted escribe unas pocas líneas de código, lo ejecuta y la computadora inmediatamente hace algo genial.
La informática, por otro lado, es mucho más teórica y carece de ese rápido bucle de refuerzo positivo. Se necesita más reflexión y no es tan interactivo la mayor parte del tiempo. Es posible que tenga que leer o investigar un concepto durante unos minutos antes de entenderlo, y puede llevarle aún más tiempo encontrar una manera de hacer uso del concepto y darle vida. Esto requiere mucha más disciplina y paciencia.
Si quieres estímulos constantes y novedades, como las que te dan al ver la televisión o leer noticias breves, lamento decir que probablemente no sucederá. Al igual que el aprendizaje de las matemáticas (que es la base de muchas ciencias de la computación), generalmente se debe seguir un plan de estudios planificado para aprender los conceptos en una secuencia lógica para que tengan sentido.
Basado en la forma en que se formula la pregunta, suena casi como si el “miedo a la programación” fuera un código de impaciencia o falta de motivación. Quiero decir, no poder leer libros, incluso sobre temas que disfruta, es un problema mucho más fundamental que lo detendrá en casi cualquier disciplina intelectual. No tiene que leer novelas para divertirse, pero si no puede concentrarse en una actividad intelectual durante un período prolongado sin estímulos externos, eso creará una barrera importante para captar temas más complejos en casi cualquier campo.
No todo en la vida puede presentar la misma experiencia estética que ver televisión. No sé si hay algo que pueda evitar eso.