Programming2026-07-21

El juego de la serpiente fue mi primer proyecto de programación. Por eso sigue importando.

Todo programador recuerda su primer proyecto. El mío fue un juego de la serpiente cutre y lleno de errores. Dos décadas después, sigo pensando que es el punto de partida perfecto.

Escribí mi primera línea de código cuando tenía doce años. No fue un programa "Hola, Mundo" — mi padre se saltó los formalismos y me dio un libro sobre QBasic con una barra de Snickers y un encogimiento de hombros compasivo. Lo primero que realmente construí fue un juego de la serpiente. Era terrible. La serpiente podía atravesar paredes y aparecer en el lado opuesto de la pantalla — lo que pensé que era una característica hasta que me di cuenta de que simplemente no había programado la detección de colisiones. La comida aparecía dentro de las paredes la mitad del tiempo. El contador de puntuación dejó de funcionar después de nueve puntos porque usé una variable de un solo dígito. Era una obra maestra de incompetencia.

He estado pensando en ese juego de la serpiente cutre últimamente. No porque me sienta particularmente nostálgico — aunque lo estoy, un poco — sino porque he empezado a enseñar a un amigo a programar, y me encontré recomendando exactamente el mismo proyecto. No una calculadora. No una lista de tareas. La serpiente. Y creo que sigue siendo el mejor primer proyecto que puedes construir.

He aquí por qué. La serpiente tiene la complejidad justa para enseñar conceptos reales sin ser abrumadora. Necesitas un bucle de juego, que introduce inmediatamente la idea de estado y actualizaciones de estado. Necesitas manejar la entrada del teclado, lo que enseña programación dirigida por eventos de una manera tangible. Necesitas detección de colisiones, que es un rompecabezas divertido que no requiere matemáticas avanzadas. Y necesitas un sistema de puntuación, que introduce variables y lógica de visualización. Todo esto cabe en probablemente cincuenta a cien líneas de código en la mayoría de los lenguajes. Puedes construir una versión funcional en una noche.

Pero la magia real de la serpiente es que es inmediatamente jugable. Hay algo profundamente satisfactorio en ejecutar tu código por primera vez y ver un pequeño cuadrado pixelado moverse por la pantalla en respuesta a tus pulsaciones de teclas. Ese subidón de dopamina es crucial cuando estás aprendiendo. Es lo que te mantiene adelante cuando chocas contra el muro inevitable. Y confía en mí, chocarás contra muros. Choqué contra tantos muros que mi padre empezó a llamar a la mesa de la cocina mi "centro de comando de programación" porque tenía papeles esparcidos por todas partes y una expresión permanente de confusión en mi cara.

La serpiente también te enseña algo que los proyectos más complejos ocultan: el valor de la iteración. Puedes construir la serpiente en etapas. Primero, consigue que un cuadrado se mueva. Luego, haz que gire. Luego, genera comida. Luego, haz crecer la cola. Luego, añade una condición de fin de juego. Cada etapa es un hito discreto y alcanzable. No estás mirando una página en blanco preguntándote cómo construir una aplicación web completa. Solo estás tratando de hacer que un cuadrado se coma a otro cuadrado. Eso es alcanzable. Eso es divertido.

Creo que complicamos demasiado la programación para principiantes. Hay bootcamps y cursos y tutoriales de YouTube que te lanzan React, bases de datos y APIs en la primera semana. Eso es una locura. Nadie aprende a cocinar organizando una cena de doce platos. Aprendes haciendo un sándwich de queso grillado. La serpiente es el sándwich de queso grillado de los proyectos de programación.

Cuando finalmente conseguí que mi juego de la serpiente funcionara — con detección de colisiones incluida — sentí que había escalado el Everest. Llamé a mis abuelos. Se lo mostré a todos en la escuela. A nadie le importó, pero no me importó que no les importara. Había hecho algo que no existía antes. Se movía. Tenía reglas. Podías perder. Podías ganar. Era mío.

Esa sensación nunca desaparece realmente. Construir software sigue siendo eso. Tomas nada, añades lógica, y de repente hay algo donde no había nada. La serpiente fue mi primer sabor de eso, y he estado persiguiendo ese subidón desde entonces. Si estás aprendiendo a programar, construye la serpiente. Constrúyela mal. Constrúyela de nuevo. Y luego construye otra cosa. Pero empieza con la serpiente.