Cambios de mentalidad para aprender a programar de manera efectiva
Aprender a programar es un viaje que muchos sueñan con comenzar, pero que a menudo encuentran desafíos en el camino. El camino para convertirse en desarrollador de software no se trata solo de tutoriales y elegir el lenguaje de programación adecuado. También está fuertemente influenciado por la mentalidad y el enfoque de cada uno hacia el aprendizaje. En este artículo, exploraremos algunos cambios de mentalidad transformadores que pueden mejorar drásticamente la forma en que aprendes programación y te desarrollas como ingeniero de software.
Ya sea que estés comenzando desde cero o ya hayas incursionado en la codificación, estos principios pueden contribuir tanto a tu crecimiento técnico como a tu desarrollo personal.
Enfócate en la práctica, no en la teoría
Inicio del video que discute el primer cambio de mentalidad
El primer y quizás el cambio de mentalidad más importante es enfocarse en la práctica en lugar de la teoría. El orador comienza compartiendo cómo inicialmente malinterpretó la "regla de las 10,000 horas". La regla sugiere que para dominar una habilidad, necesitas dedicarle 10,000 horas. Como programador principiante, pensó que esto significaba leer libros, ver tutoriales y consumir la mayor cantidad posible de información teórica en esas horas. Sin embargo, luego se descubrió que esto era contraproducente.
En cambio, abogan por el enfoque de las "10,000 líneas de código". Esta mentalidad valora la codificación y la construcción de proyectos sobre el consumo de información pasiva. Al escribir código activamente, incluso si es ineficiente y propenso a errores al principio, mejoras continuamente. Con cada hito, es decir, cada milésima línea de código, tus habilidades se agudizan.
Codificar, argumentan, es un oficio, más parecido a la carpintería, a tocar un instrumento musical o a dibujar que a estudiar campos informativos densos como el derecho o las finanzas. La maestría se logra a través de la creación y el refinamiento, no simplemente memorizando conceptos.
Además, enfocarse en la práctica ayuda a evitar la infame trampa del "tutorial hell". La trampa del tutorial ocurre cuando los estudiantes siguen interminablemente tutoriales sin aplicar el conocimiento a proyectos del mundo real, dejándolos mal preparados para construir de manera independiente. Si este video alcanza un cierto número de "me gusta", el orador promete crear una guía separada para escapar del tutorial hell.
El ego es el enemigo
Evitando decisiones impulsadas por el ego durante el proceso de aprendizaje
El siguiente cambio crucial de mentalidad es reconocer que el ego es tu enemigo. Cuando el orador comenzó a aprender a programar, su ego lo llevó a intentar proyectos ambiciosos como crear un clon de Facebook o un clon de Reddit. Al mismo tiempo, desestimó proyectos básicos fundamentales, como crear sitios web de recetas simples en HTML y CSS. Estos parecían "por debajo de ellos"; su orgullo insistía en que estaban listos para temas avanzados.
Esta mentalidad fue un obstáculo. Admiten que si hubieran dejado de lado su ego y comenzado con lo básico, habrían progresado mucho más rápido y se habrían convertido en desarrolladores competentes en un período de tiempo más corto. Los proyectos fundamentales, aunque aparentemente simples, son esenciales para entender los principios clave y desarrollar las habilidades necesarias para aplicaciones complejas.
La lección aquí es la humildad. Como principiante, aceptar tu nivel de habilidad actual es fundamental. Dominar lo básico no solo es necesario, sino invaluable. Esa base te permite abordar problemas más complejos con claridad y confianza.
Hazte cómodo con la incomodidad
La necesidad de hacerse cómodo con la incertidumbre en la programación
En la ingeniería de software, la incertidumbre es parte del territorio. El cambio de mentalidad aquí es abrazar estar incómodo y verlo como parte del proceso de aprendizaje, en lugar de como un obstáculo. El orador enfatiza que como desarrollador profesional, nunca sabrás todo, y eso está bien.
Tu papel como desarrollador es ser un "gestor de información". Puede que no tengas todas las respuestas de inmediato, pero se espera que resuelvas problemas dentro de tu dominio eventualmente. Esto a menudo implica investigar, probar y encontrar soluciones, un proceso que naturalmente incluye momentos de duda o confusión.
En lugar de resistir esta incomodidad, sugieren inclinarse hacia ella. Considera cada desafío como una oportunidad para crecer y aprender algo nuevo. Esta mentalidad transforma las inevitables luchas de la programación en una parte agradable del proceso. Cuando sientas esa sensación de incomodidad, es una señal de que estás empujando tus límites, mejorando y expandiendo tus capacidades.
Por ejemplo, cuando te enfrentes a conceptos o tareas desconocidas, no dejes que la confusión inicial te desanime. Tómalo como una oportunidad emocionante para profundizar tu conocimiento y experiencia. Este cambio de mentalidad no solo hace que el viaje sea más placentero, sino que también fomenta la resiliencia, una cualidad crítica para cualquier programador.
Nunca dominarás la programación
[Sin imagen disponible para esta sección a los 357 segundos del video.]
El último cambio de mentalidad discutido es la realización de que nunca dominarás verdaderamente la programación. El orador señala que los desarrolladores aspirantes, especialmente los principiantes, a menudo se fijan en la idea de "dominar" un lenguaje o concepto antes de avanzar. Pueden pasar un tiempo excesivo refinando su comprensión de un tema particular, como CSS flexbox, antes de intentar construir algo con ello. Este enfoque es defectuoso.
La mejor manera de aprender es de forma iterativa. Comienza aprendiendo lo básico, luego aplícalo en proyectos. Por ejemplo, al aprender un nuevo concepto, como flexbox, en lugar de tratar de entender cada matiz de antemano, úsalo en proyectos. Con la aplicación repetida, tu comprensión se profundiza de manera natural con el tiempo. La programación es un oficio, y la maestría se logra a través de la práctica constante, la experimentación y la iteración.
Es importante destacar que al entrar en la industria, no se espera que seas un "maestro". Para los desarrolladores junior, las empresas buscan individuos con conocimientos fundamentales, disposición para aprender y perseverancia para crecer. Intentar "dominar" las habilidades de codificación antes de postularte para trabajos no es necesario y es contraproducente. El orador asegura a los desarrolladores aspirantes que la industria valora la adaptabilidad y el deseo de aprender por encima de un dominio exhaustivo de conceptos específicos de programación.
Los buenos desarrolladores, enfatizan, nunca dejan de aprender. Aceptan el proceso iterativo: construir proyectos, buscar retroalimentación y mejorar continuamente. La búsqueda de la maestría es continua, y el viaje en sí es donde se encuentra el verdadero crecimiento.
Conclusión: Adopta la mentalidad adecuada para el éxito en la codificación
El viaje de aprender a programar no es una línea recta; está lleno de giros, vueltas y tropiezos ocasionales. Sin embargo, adoptar la mentalidad adecuada puede marcar la diferencia en tu éxito.
Puntos clave:
- Prioriza la práctica sobre la teoría: Enfócate en escribir código y construir proyectos en lugar de gastar tiempo excesivo consumiendo contenido pasivo.
- Deja tu ego en la puerta: Comienza con proyectos pequeños y concéntrate en los fundamentales antes de abordar los complejos.
- Abraza la incomodidad: Ve la confusión y los desafíos como oportunidades de crecimiento en lugar de obstáculos.
- Deja atrás la idea de maestría: Concéntrate en el aprendizaje continuo y la construcción en lugar de fijarte en perfeccionar conceptos antes de actuar.
Estos cambios de mentalidad no solo hacen que aprender a programar sea más efectivo, sino que también cultivan la paciencia, la persistencia y la resiliencia, cualidades que posee cada gran desarrollador. Ya sea que estés comenzando o ya estés en la acción, aplicar estos principios puede potenciar tu viaje como desarrollador de software.
Comienza con proyectos pequeños, mantente humilde y recuerda: cada línea de código que escribas es un paso más cerca de alcanzar tus metas.