Por qué fallar en programación es algo bueno

Una de las cosas que más buscamos transmitir en nuestro curso de Programación es que ¡fallar está bien! De hecho, es algo muy bueno. Los errores forjan el carácter. Y el fracaso, en un entorno de apoyo adecuado, es esencial para aprender a lidiar con las dificultades que vendrán más adelante en la vida. Si no nos acostumbramos al fracaso y aprendemos a superarlo en la infancia, luego podremos enfrentar situaciones que, en lugar de motivarnos a triunfar, nos desmoralizarán.

¿Por qué la programación es una buena oportunidad para aprender a lidiar con el fracaso? Porque aprender a programar correctamente implica dominar formas precisas de ciencia y arte.

Con las aplicaciones de programación cualquier cosa puede salir mal.

Si te interesan los juegos y las apps, como a la mayoría de los usuarios de smartphones, habrás notado que muchas veces incluso las mejores aplicaciones fallan. Esto se debe a que hay errores en el código que a veces provocan bloqueos y otros comportamientos extraños. ¿Por qué? Porque programar es complejo. Y cuanto más compleja es la aplicación, más complicada es programarla. Estamos hablando de, cómo mínimo, varios cientos de líneas de código. Y una sintaxis menor mal escrita, tarde o temprano puede causar problemas.

Lograr el código correcto para una aplicación es casi imposible aun cuando ya se ha lanzado en la tienda de aplicaciones. Por eso es que cada tanto hay actualizaciones disponibles. Son para corregir líneas de código problemáticas o para proteger contra fallos detectados por los usuarios, quienes los han reportado para que los corrijan. ¿Qué nos enseña esto? Que escribir código, incluso el más simple, puede complicarse.

Si tus hijos escribieran su propio código para una aplicación o un juego, tendrían que estar preparados para los problemas que podrían surgir al ejecutar ese código. A veces, corregir el código problemático significa tener que revisar las líneas de código una por una, en busca el error original. Otras veces se trata de encontrar qué líneas de código están en conflicto entre sí. Como es probable que fracasen numerosas veces, por estas razones que acabamos de enunciar, tus hijos necesitarán desarrollar una actitud resiliente de cara al fracaso. Y esto les permitirá estar mejor preparados para hacer frente a los contratiempos del mundo real.

Cómo solucionar una falla

En la programación, el principio se llama depuración. La depuración es el proceso de búsqueda de errores en el sistema, normalmente llamados «bugs», en inglés. Un error, por supuesto, es una línea de código fallida que causa problemas en el juego o la aplicación. Veamos un ejemplo: hay un juego en el que corres por una ciudad de 40 kilómetros cuadrados. Puedes interactuar con los ciudadanos, aceptar misiones para ganar dinero y hasta conducir vehículos. Así, por decir algo, si el personaje puede atravesar las paredes, o no puede salir de un coche, es porque hay un error, un bug. Cuando los desarrolladores se enteran de este problema (ya sea gracias a sus propias pruebas o a los informes de los jugadores), su trabajo es cazar el error.

(Como hemos mencionado en publicaciones anteriores, el término «bug», que en inglés quiere decir «bicho», proviene de la época en la que las computadoras eran del tamaño de habitaciones enteras, con componentes enormes, y los insectos podían entrar fácilmente. En ese caso, si el equipo no se comportaba como se esperaba, alguien tenía que entrar a la computadora para sacar el «bicho»).

Hablar de millones de líneas de código en un juego complejo, no es una tarea sencilla. Y lo que es más interesante, a veces corregir una línea de código puede afectar a otra línea de código y causar un problema diferente. Esto pasa todo el tiempo. Por lo tanto, en el momento en que tus hijos vayan a escribir el código para un programa simple, y no salga como lo planearon, se enfrentarán a una búsqueda de errores. Y no es fácil hacerlo solos.

Una línea de nuestro código personal es: ayudar

En nuestros cursos online de Programación animamos a los estudiantes para que se ayuden entre sí. Para que formen un vínculo que les permita sentirse cómodos pidiendo ayuda. Cuando se encuentran con un inconveniente y no pueden resolverlo por su cuenta, como el caso de una línea de código mal escrita, siempre tienen a la mano la ayuda necesaria. Como somos una escuela online, con clases en vivo, los niños pueden comunicarse entre sí. De hecho, nuestros estudiantes tienen un gran sentimiento de comunidad. Algo que la mirada cansada de un estudiante no puede reconocer como problema, la mirada fresca de otro estudiante sí puede.

Al igual que en la vida, y por la gran cantidad de cosas que pueden salir mal durante la programación, todos necesitamos una mano amiga de vez en cuando. En la vida, no pedir ayuda puede hacer que te atasques o empeorar aún más la situación.

Entender que pedir ayuda no es una debilidad, sino una fortaleza es lo que da a los estudiantes madurez emocional. Después de todo, somos una especie que ha evolucionado por cooperar, como comentamos en este artículo de nuestro blog. Negar la colaboración por razones inútiles, como el ego o la incapacidad de pedir ayuda, no es una actitud recomendable para ninguna persona, menos para los niños mientras crecen hasta la edad adulta. El fracaso en la programación puede significar que necesitas mejorar la forma de recurrir al otro. Y, por supuesto: ayudar a otros, a su vez, desarrolla un sentido altruista de comunidad.

Resolución de problemas: otra razón por la que fracasar es algo bueno

A veces es necesario ser bueno para deducir y así dar con la línea de código problemática. Pero lo que es igualmente importante es averiguar por qué está causando problemas. Una mala línea de código puede influir en áreas que no parecen relacionadas con ella. Y esto hace que sea aún más desafiante encontrar el error. Y más difícil saber el porqué. Resolver el problema requiere el uso tanto del pensamiento lateral como del pensamiento lineal. Llamamos pensamiento lateral a «pensar de lado», es decir, pensar de una manera que establece conexiones entre cosas que no parecen inmediatamente obvias y

sin embargo, es esencial en la resolución de problemas. Pensar linealmente no es suficiente. El pensamiento lineal es el abordaje paso a paso. Como cuando pides ayuda porque tu computadora no enciende y lo primero que te piden es que compruebes que esté conectada (sorprendentemente, esta es la solución la mayoría de veces). Pero con los problemas de programación, donde la aplicación simplemente no responde como debería, el enfoque paso a paso, si bien es importante, no siempre resuelve la situación.

El pensamiento lateral también se conoce como «pensamiento fuera de la caja». Es cuando tratas de usar tu imaginación y creatividad para crear asociaciones relacionadas con el problema y lo que podría estar causándolo. Esto activa las partes menos utilizadas del cerebro (pues el sistema escolar tradicional se encarga de enseñarnos principalmente el pensamiento lineal, a expensas del lateral).

A veces, la respuesta nos golpea como un rayo en un «momento eureka». Cuando eso sucede, y la línea específica de código se corrige y entonces desaparece el problema, el estudiante siente una inmensa sensación de victoria. Normalmente, después de esto sobreviene una sensación de «obviedad». Se cree que la causa del problema debería haber sido evidente. Pero no lo era, y fue solo gracias al proceso de hacer las conexiones correctas en el cerebro que la respuesta se hizo visible.

La resolución de problemas es excelente para el cerebro, que es probablemente la razón por la que muchas personas completan crucigramas en las revistas.

Es hora de que tus hijos tengan éxito en el fracaso.

Nuestra escuela está diseñada para ayudar a los niños a tener éxito incluso cuando se equivocan. A través de nuestro aprendizaje online, el acompañamiento del guía, y la plataforma de enseñanza diseñada para la interacción con los compañeros de clase, los niños tienen el espacio libre para experimentar, fracasar, volver a intentarlo, desarrollar resiliencia, pedir ayuda, resolver problemas y, finalmente, tener éxito. Lo que, a su vez, no solo les enseña las «habilidades duras» de las materias, sino también las «habilidades blandas» necesarias para tener éxito en la vida. ¡Inscríbelos hoy en nuestros cursos!

 

Responses

Comment below