En primer lugar, te diré lo que no debes hacer para convertirte en un buen programador. No importa lo que te digan, si pasas demasiado tiempo haciendo cualquiera de las siguientes cosas puede que mejore un poco tus habilidades, pero nunca serás un buen programador:
- No te convertirás en un buen programador sólo leyendo libros.
- No te convertirás en un buen programador memorizando código y algoritmos. La programación consiste en pensar, no en recordar. Puedes tener la mejor memoria, pero si no piensas por ti mismo NUNCA serás un buen programador, es decir, tenemos ordenadores e internet para recordar cosas por nosotros, así que no hay necesidad de que recuerdes nada, sólo tienes que saber dónde y cómo encontrar la información que necesitas.
- No te convertirás en un buen programador escribiendo funciones y algoritmos sueltos de los libros que lees, es decir, escribiendo estúpidas funciones de ordenación de burbujas.Por ejemplo, escribiendo estúpidas funciones de ordenación de burbujas y algoritmos inútiles similares.
- No te convertirás en un buen programador probando el código de otras personas, por ejemplo, probando el software utilizándolo o escribiendo pruebas unitarias, etc.
- No te convertirás en un buen programador leyendo y depurando el código de otras personas. Esto podría ayudar a corto plazo, pero sólo si el código de la otra persona está bien escrito para que puedas recoger algunos buenos hábitos, pero el uso de código malo como ejemplos te enseñará malos hábitos que finalmente tendrás que desaprender. A largo plazo, pasar demasiado tiempo leyendo y depurando el código de otras personas será perjudicial para tu crecimiento.
- No te convertirás en un buen programador permitiendo que otros te microgestionen... porque, de nuevo, la programación consiste en pensar por ti mismo.
Sólo hay una manera de convertirse en un buen programador: tienes que asumir un proyecto y empezarlo y terminarlo tú mismo de principio a fin. No te centres demasiado en leer libros, sintaxis, algoritmos y funciones, es decir, no te centres en los detalles al principio. Simplemente siéntate y piensa en una aplicación/sistema que te gustaría desarrollar para ti... algo que realmente disfrutarías construyendo y usando para ti. Pide una idea a tus amigos/familiares/profesores si lo necesitas, pero debes empezar el proyecto desde cero y terminarlo por ti mismo de principio a fin. Una vez que tengas la idea, mantén la idea en tu cabeza y apasiónate por terminarla... a partir de ahí todo empezará a encajar poco a poco. Tendrás en tu mente características que quieres implementar y en ese momento empezarás a investigar cómo implementar esto o aquello. Es en este momento cuando debes coger un libro o buscar en internet respuestas sobre cómo implementar esa función tan chula que has pensado hacer. A medida que tu app/sistema crezca, poco a poco y por ti mismo empezarás a pensar en escribir un código más limpio para mantenerlo en el futuro y hacer tu propia vida más fácil.
Sólo a través del proceso y la lucha de dar vida a tu propia idea aprenderás a convertirte en un buen programador. Debes verte a ti mismo como un artista, no sólo como un tipo que escribe código para que compile y se ejecute. Si sólo trabajas en el código de otra persona, o sólo lees libros, etc., perderás tu motivación muy rápidamente y nunca encontrarás o utilizarás tu talento.