Porque cuando eres joven e inexperto, tiendes a fijarte metas y estándares más bajos, y a veces tu ego te impide evaluar con precisión la calidad de tu propio trabajo. Sobreestima su propia competencia y subestima el tipo de desafíos involucrados en la producción de trabajo de calidad profesional.
Hasta cierto punto, esto es necesario para estar motivado para aprender nuevas habilidades y no ver la verdadera extensión del camino por delante, para que no se desanime y se dé por vencido sin intentarlo.
Cuando estaba en cuarto o quinto grado, comencé a cambiar de QBASIC a Visual Basic. Hice docenas de programas y juegos de juguetes con interfaces de texto y gráficos y animaciones simples. Todavía no había aprendido animación en 3D o estaba al tanto de los principios básicos de ingeniería de software. No había aprendido a hacer programación de sockets. Utilicé técnicas de animación muy rudimentarias que eran completamente poco prácticas para producir juegos de calidad comercial y usé un lenguaje que no era muy adecuado para la mayoría de los desarrollos de juegos.
Pero cuando un nuevo compañero de clase me describió MUDs, tratando de impresionarme con la genialidad de la experiencia de juego, me burlé, “¿Qué? ¿Sin gráficos? Eso es fácil. ¡Podría escribir un juego así!”
Mi compañero de clase no era programador. Supuse que se impresionaba fácilmente por su ignorancia. Y cuando él me apostó a que no podía construir un MUD por mi cuenta, felizmente acepté la apuesta y fui a su casa después de la escuela para ver de qué se trataba todo este disparate “MUD”.
Ahora, había jugado un juego de aventura de texto para un jugador antes. Sabía que implicaba analizar el lenguaje natural y rastrear la posición del jugador en un mapa vasto y complejo. Y me dijo muy claramente desde el principio que los MUD eran juegos multijugador que permitían a los jugadores interactuar entre sí a través de Internet. Realmente, debería haber sabido que esto estaba más allá de mi escasa capacidad de programación en ese momento. Pero me concentré solo en las partes que describió, que se superponían con mi limitada experiencia en programación. Después de todo, un juego basado en texto es claramente tan difícil de escribir como otro, ¿verdad? Todo es solo aceptar texto del usuario y generar dinámicamente más texto en respuesta, después de todo.
No fue hasta que llegué a su casa y lo vi jugar mientras intentaba descubrir cómo replicar cada detalle de la experiencia que la realidad eventualmente estableció. Todos esos detalles sin importancia, como cómo hacer que se ejecuten múltiples programas diferentes computadoras para hablar entre sí o cómo permitir que el mapa se extienda continuamente o solo la gran cantidad de planificación, escritura y codificación requeridas de repente parecían mucho más desafiantes de lo que había imaginado.
Baste decir que fue un momento bastante vergonzoso cuando tuve que comer mis propias palabras antes de escribir una sola línea de código. Afortunadamente, mi compañero de clase fue muy amable y me permitió retirarme de la apuesta.
Cuando eres joven e inexperto, es fácil engañarte a ti mismo pensando que la experiencia limitada que tienes te da una imagen precisa de la gama completa de desafíos y habilidades necesarias para trabajar en un campo en particular. Cada pequeño logro que logra se infla en su mente (a menudo con la ayuda de familiares y amigos aduladores). Del mismo modo, eres rápido para extrapolar de tus experiencias.
Ahora, esto definitivamente puede causar vergüenza y se vuelve más problemático a medida que envejece. Pero todavía hay algún valor en este tipo de comportamiento desde el principio.
Quiero decir, bajo diferentes circunstancias, si no me hubiera desanimado tan fácilmente, tal vez habría hecho un intento respetable de crear mi propio MUD. Quizás me hubiera llevado un par de años completarlo. O incluso si intenté y fracasé en construir mi propio MUD, no creo que haya sido necesariamente un peor resultado desde una perspectiva educativa.