Los juegos para aprender a programar funcionan por algo que ningún tutorial consigue: te ponen a programar antes de entender la teoría —escribiendo código o encajando bloques— y el juego te responde al instante si acertaste o no. Esa respuesta inmediata es lo que sostiene a un principiante durante la primera semana, que es justo donde se cae casi todo el mundo.

Dicho lo bueno, la limitación: un juego de programación te enseña lógica, no te enseña a construir. Vas a salir de aquí resolviendo puzzles con bucles, condicionales y funciones, y sin haber montado un proyecto de verdad, sin tocar un repositorio ajeno y sin pelearte con un error que nadie documentó. Eso viene después, y viene precisamente cuando dejas el juego.

Aquí tienes 31 juegos que he revisado uno a uno: qué enseña cada uno, en qué nivel entra, cuáles son gratis de verdad, cuáles piden cuenta y cuáles están traducidos al español. Y antes de la lista, lo que a mí me habría ahorrado meses: por cuál empezar.

Cómo elegir tu primer juego para aprender a programar

La mayoría de las listas te dan diez opciones y te dejan solo. Los mejores juegos para aprender a programar no son los mismos para todos, así que elige tu caso y empieza por ese, no por el primero de la lista.

“No sé absolutamente nada de programación”. Empieza por Blockly Games. Arrastras bloques, no escribes código, y en una tarde entiendes qué es un bucle y qué es una condición. Cuando termines Maze y Bird, pasa a Human Resource Machine o a CodeCombat, que ya te piden escribir.

“Quiero Python”. Salta los bloques y vete a CheckiO. Escribes Python real desde el primer reto y ves cómo lo resolvieron otros, que es la mitad del aprendizaje. Si te engancha y quieres algo más largo, The Farmer Was Replaced.

“Quiero hacer webs”. Tu orden es Flexbox Froggy, luego Grid Garden y luego CSS Diner. Son tres tardes y sales de ahí sabiendo maquetar, que es exactamente lo que le falta a quien aprende HTML por su cuenta.

“Ya programo y quiero soltura”. Codewars para mantener el músculo y Bitburner si quieres algo que te robe fines de semana escribiendo JavaScript. Cuando te aburran, salta a Hacker.org o a CodeCrafters.

El orden importa más que la lista. Un juego bien elegido te da dos semanas de impulso; uno mal elegido te convence de que programar no es lo tuyo. Si lo que dudas es qué lenguaje atacar, eso lo resolví aparte: qué lenguajes de programación son mejores para principiantes.

Juegos para aprender a programar desde cero

Estos cuatro no dan por hecho nada. Si nunca has escrito una línea de código, empieza aquí y no en la sección de Python. Para los más pequeños hay otro camino, el de construir mundos en vez de escribirlos, y de eso va mi reseña de Kodu Game Lab.

Blockly Games

Enseña: lógica de programación con bloques · Nivel: desde cero · Gratis y open source · Sin registro · Interfaz en español

Ocho juegos encadenados que van de arrastrar piezas a escribir JavaScript sin que notes el salto: Rompecabezas (Puzzle), Laberinto (Maze), Pájaro (Bird), Tortuga (Turtle), Película (Movie), Música (Music), Tutor del estanque (Pond Tutor) y Estanque (Pond).

Rompecabezas solo te familiariza con cómo encajan las piezas; Laberinto es el que introduce bucles y condicionales, y Tutor del estanque es el puente al código escrito. Es de Google, es abierto y se puede descargar para usarlo sin conexión.

Pantalla de Blockly Games, uno de los juegos para aprender a programar sin escribir código
Blockly Games encadena ocho juegos: empiezas arrastrando piezas y acabas escribiendo JavaScript.

Para quién no sirve: si ya sabes qué es un bucle, los cuatro primeros juegos te van a aburrir. Entra directo a Tutor del estanque.

Visitar Blockly Games

Human Resource Machine

Enseña: pensamiento algorítmico y ensamblador conceptual · Nivel: desde cero · De pago, 14,99 USD en Steam · Sin registro · Interfaz en español (España)

Eres un oficinista que mueve cajas entre bandejas siguiendo instrucciones, y, sin que te avisen, estás programando en algo muy parecido a ensamblador. Es el juego que mejor explica por qué una máquina necesita que le digas todo paso a paso. Es de los creadores de World of Goo y se nota en el acabado.

Cuesta dinero, y a cambio es el único de los juegos de pago de esta lista que está traducido al español.

Para quién no sirve: si buscas aprender un lenguaje concreto para usarlo el mes que viene, este no te lo da. Te entrena la cabeza; la sintaxis la aprendes en otro sitio.

Visitar Human Resource Machine

Code Monkey

Enseña: bloques, CoffeeScript y Python · Nivel: desde cero · Freemium · Pide cuenta · Interfaz en español

Recoges plátanos escribiendo instrucciones, y el juego va soltando conceptos a un ritmo pensado para aula. Lo usan colegios, y eso se nota para bien en la progresión y para mal en el modelo: la prueba gratuita llega hasta el reto 30 de Coding Adventure y el resto va por suscripción familiar o de centro.

Captura de pantalla del juego CodeMonkey, mostrando un nivel donde un mono debe programar instrucciones para recoger plátanos.
¡Aprende a programar de forma divertida con CodeMonkey! Resuelve puzles y guía al mono en sus aventuras.

Para quién no sirve: si eres adulto y aprendes solo, la estética infantil y el muro de pago te van a sacar antes de que el contenido bueno aparezca.

Visitar Code Monkey

CodeCombat

Enseña: Python, JavaScript y C++ · Nivel: desde cero a intermedio · Freemium · Pide cuenta · Interfaz parcialmente en español

Un juego de mazmorras donde tu personaje se mueve solo si escribes las órdenes correctas. Empiezas con una línea por nivel y acabas escribiendo funciones y bucles anidados para sobrevivir a oleadas de enemigos. La curva está bien calculada y es de los pocos que sostienen el interés más allá de la primera hora.

Captura de pantalla de la página de inicio de CodeCombat, mostrando dos opciones: CodeCombat Junior y CodeCombat Home
CodeCombat: ¡La forma más divertida de aprender Python y JavaScript! Elige tu aventura y comienza a programar.

No es gratuito del todo: los primeros niveles son libres y el resto va por suscripción de pago.

Para quién no sirve: si vienes a repasar conceptos que ya dominas, la parte gratuita se acaba justo cuando empieza lo interesante.

Visitar CodeCombat

Si este formato te gusta, tengo una reseña a fondo de Codédex, que trabaja la misma idea con una progresión más larga.

Python: tres juegos para aprender a programar con código real

Python es el lenguaje con el que más gente empieza, y también el que más juegos decentes tiene. Si todavía no sabes qué es, pasa antes por qué es Python.

CheckiO

Enseña: Python y TypeScript · Nivel: básico a intermedio · Cuenta gratuita con algunas restricciones · Pide registro · Interfaz en inglés, ruso y ucraniano

Un mapa de islas donde cada isla es un reto de Python que resuelves escribiendo una función. Lo que lo separa del resto llega al terminar cada reto: ves las soluciones de los demás ordenadas por votos, y ahí aprendes en diez minutos los idiomatismos que un curso tarda semanas en enseñarte.

Página web de CheckiO, una plataforma de aprendizaje de programación con juegos para principiantes y programadores avanzados. Se destacan los lenguajes Python y TypeScript.
Mejora tus habilidades de codificación con CheckiO. ¡Juegos de programación para todos los niveles!

Para quién no sirve: si nunca escribiste Python, el primer reto ya te pide sintaxis. Pasa antes por Blockly Games o CodeCombat.

Visitar CheckiO

CodinGame

Enseña: más de 25 lenguajes · Nivel: básico a avanzado · Gratis · Pide cuenta · Interfaz en inglés

Escribes el código que controla a un personaje y luego miras cómo se desenvuelve solo contra el problema. No hay un lenguaje impuesto: el mismo reto lo resuelves en Python, en Java, en JavaScript o en otros veinte. La parte de puzzles individuales es la que sirve para aprender; los torneos multijugador son otra cosa, más competición que enseñanza.

Captura de pantalla de un juego en CodinGame, una plataforma de aprendizaje para programadores. Se muestra una vista aérea de un circuito de carreras con dos naves compitiendo, junto a código Python visible en la interfaz.
Aprende programación mientras te diviertes. Este captura de pantalla muestra un desafío de CodinGame donde la competencia y la resolución de problemas se unen.

Para quién no sirve: el salto entre los puzzles fáciles y los medios es brusco. Si te frustras rápido, no lo pongas de primero.

Visitar CodinGame

The Farmer Was Replaced

Enseña: automatización con un lenguaje tipo Python · Nivel: básico a intermedio · De pago, 9,99 USD en Steam · Sin registro · Interfaz en inglés

Programas un dron para que siembre, riegue y coseche una granja, y cada mejora te obliga a reescribir el código anterior con algo más elegante. El lenguaje no es Python exacto, pero se parece lo suficiente para que lo que aprendas se traslade a Python.

Salió de acceso anticipado con el lanzamiento de la versión 1.0 en octubre de 2025, y sus reseñas en Steam son de las mejores del género.

Es el juego de esta lista que mejor reproduce lo que se siente programando: refactorizar algo que ya funcionaba porque ahora se te quedó corto.

Editor de código y dron automatizando la granja en The Farmer Was Replaced
Cada mejora de la granja te obliga a reescribir el código que ya tenías.

Para quién no sirve: si nunca has escrito una línea de código, las primeras horas se te van a hacer cuesta arriba aunque el juego sea amable.

Visitar The Farmer Was Replaced

JavaScript: juegos donde escribes código que se ejecuta solo

Si vienes de cero con el lenguaje, empieza por qué es JavaScript y vuelve. Estos cinco te piden escribirlo de verdad, no copiarlo.

Bitburner

Enseña: JavaScript con la API de Bitburner (Netscript) · Nivel: intermedio · Gratis y open source · Sin registro · Interfaz en inglés

Un juego incremental cyberpunk donde eres un hacker y la única forma de crecer es automatizar: escribes scripts que se ejecutan solos, gestionan servidores y reparten trabajo mientras tú duermes. Los scripts son archivos .js de JavaScript corriente; lo propio del juego es el objeto ns que reciben, con las funciones de Bitburner. La sintaxis que practicas es la misma que fuera del juego.

De todos los juegos de esta lista es el que más recomiendo a un adulto: es gratis, es abierto, se juega en el navegador o en Steam, y en ningún momento te trata como a un niño.

Terminal de Bitburner y un script de JavaScript con la API ns abierto en el editor
En Bitburner el progreso depende de los scripts que dejas corriendo solos.

Para quién no sirve: te va a comer fines de semana enteros. Y si no sabes qué es una función, empieza en otro sitio.

Visitar Bitburner

Untrusted

Enseña: JavaScript y lectura de código ajeno · Nivel: intermedio · Gratis y open source · Sin registro · Interfaz en inglés

Eres el Dr. Eval, un símbolo @ atrapado en un mundo cuyo código fuente puedes editar. Cada nivel te muestra el JavaScript que lo genera y tienes que modificarlo para poder salir. Enseña una habilidad que casi nadie practica: leer código que escribió otra persona y cambiarlo sin romperlo.

Captura de pantalla del juego Untrusted, mostrando la interfaz de juego basada en texto y código JavaScript que el jugador debe modificar.
¡Resuelve puzles, modifica código JavaScript y escapa! Untrusted, una experiencia de juego única.

Para quién no sirve: si todavía no distingues un objeto de un array, el primer nivel ya te supera.

Visitar Untrusted

Elevator Saga

Enseña: lógica de eventos y optimización en JavaScript · Nivel: intermedio · Gratis · Sin registro · Interfaz en inglés

Controlas ascensores escribiendo el código que decide cuándo suben, cuándo bajan y a quién recogen. Suena simple hasta que el reto te pide mover quince personas en menos de sesenta segundos y descubres que tu solución obvia es lentísima. Es un ejercicio de eficiencia disfrazado de juego.

Captura de pantalla de Elevator Saga, un juego de programación donde el jugador debe programar el movimiento de ascensores para transportar personas eficientemente. Se muestra código JavaScript y la interfaz del juego.
Pon a prueba tus habilidades de programación con Elevator Saga. ¡Optimiza el movimiento de los ascensores y supera los desafíos!

El proyecto ya no se mantiene, así que no esperes niveles nuevos. Lo que hay sigue funcionando.

Para quién no sirve: no hay progresión guiada. Si necesitas que alguien te lleve de la mano, este no es.

Visitar Elevator Saga

Warrior.js

Enseña: JavaScript · Nivel: básico a intermedio · Gratis y open source · Sin registro · Interfaz en inglés

Escribes el comportamiento de un guerrero que sube una torre nivel a nivel: cuándo atacar, cuándo retroceder, cuándo curarse. Cada piso añade una variable nueva y te obliga a reorganizar la lógica que ya tenías. Se juega en la web y también desde la terminal instalándolo por npm.

Captura de pantalla del juego WarriorJS, mostrando el código JavaScript y la interfaz de juego donde el jugador debe escribir código para controlar un guerrero.
Aprende JavaScript de forma interactiva y divertida con WarriorJS. ¡Domina el lenguaje y supera los niveles!

Para quién no sirve: es corto. Lo terminas en una tarde y te quedas con ganas.

Visitar Warrior.js

Screeps

Enseña: JavaScript aplicado a sistemas que se ejecutan solos · Nivel: avanzado · De pago, 19,99 USD en Steam · Pide cuenta · Interfaz en inglés

Un MMO donde tus colonias siguen funcionando veinticuatro horas al día con el código que dejaste escrito, estés conectado o no. Eso cambia todo: ya no programas una solución para pasar un nivel, programas un sistema que tiene que aguantar solo mientras no estás y mientras otros jugadores te atacan. Admite otros lenguajes compilados a WebAssembly, pero el camino natural es JavaScript.

Es el único de la sección que cuesta dinero, y conviene saberlo antes: no hay versión gratuita que te deje probar el juego completo.

Vista de una colonia de Screeps funcionando con el código del jugador
Nadie mueve estas unidades a mano: obedecen a un script que se ejecuta sin ti.

Para quién no sirve: si estás aprendiendo, no. Screeps da por hecho que ya sabes estructurar un programa mediano.

Visitar Screeps

Java, Ruby y otros lenguajes: dónde practicar jugando

Aquí el catálogo se estrecha: hay muchos menos juegos buenos fuera de JavaScript y Python. Estos tres son los que sostienen el nivel.

Robocode

Enseña: Java, .NET, Python y lenguajes JVM · Nivel: intermedio · Gratis y open source · Sin registro · Interfaz en inglés

Programas un tanque de combate y lo sueltas en una arena contra los tanques de otros. Tu código decide cómo se mueve, cómo apunta y cómo esquiva, y la batalla se ve en tiempo real. Es de los proyectos más longevos del género y sigue vivo: la versión clásica va por la 1.11.1, de julio de 2026, y Tank Royale es la generación nueva, que además de Java admite Python, .NET y TypeScript o JavaScript.

Captura de pantalla de la página web de Robocode, un juego de programación donde los usuarios crean tanques de batalla que se enfrentan en tiempo real.
Construye el mejor tanque de batalla y domina la programación con Robocode. ¡Un juego que combina diversión y aprendizaje!

Para quién no sirve: hay que instalarlo y configurar el entorno. Calcula media hora de preparación antes de la primera batalla.

Visitar Robocode

Ruby Warrior

Enseña: Ruby · Nivel: básico · Gratis y open source · Sin registro · Interfaz en inglés

Guías a un guerrero por un pasillo escribiendo Ruby, con dos niveles de dificultad según lo que ya sepas. El original se juega en la terminal y se instala desde su repositorio; también hay un port web jugable si prefieres no instalar nada. Es de los pocos juegos que quedan para aprender Ruby de esta forma.

Captura de pantalla del juego Ruby Warrior, mostrando el código Ruby en un editor y el entorno del juego, donde un guerrero debe avanzar por un pasillo.
Domina Ruby mientras guías a tu guerrero a la victoria en Ruby Warrior. ¡Un juego divertido y efectivo para aprender programación!

Para quién no sirve: si no te interesa Ruby en concreto, no hay razón para pasar por aquí.

Visitar Ruby Warrior (código fuente) · Versión web

Codewars

Enseña: más de 55 lenguajes, entre ellos Java, C#, Ruby y Go · Nivel: básico a avanzado · Gratis · Pide cuenta · Interfaz en inglés

Resuelves katas: ejercicios cortos cuya solución tiene que superar una batería de tests. Al terminar cada uno ves las soluciones mejor valoradas de la comunidad, y esa comparación es lo que más enseña. Lo incluyo aquí por su cobertura de lenguajes minoritarios.

Página principal de Codewars, una plataforma online para practicar codificación con desafíos ("kata") en varios lenguajes de programación.
Mejora tus habilidades de programación con Codewars. ¡Únete a una comunidad global de desarrolladores y supera los desafíos de codificación!

Un apunte sobre el precio: Codewars es gratis. Existe una suscripción llamada Codewars Red, desde 5 USD al mes, pero solo añade estadísticas, quita anuncios y da una insignia. Para practicar no hace ninguna falta.

Para quién no sirve: no enseña desde cero. Llegas sabiendo la sintaxis y vienes a ganar soltura.

Visitar Codewars

CSS y maquetación: donde los juegos ganan al tutorial

Maquetar es una habilidad visual, y ver el resultado moverse en pantalla enseña más rápido que cualquier explicación.

Flexbox Froggy

Enseña: CSS Flexbox · Nivel: desde cero · Gratis · Sin registro · Interfaz en español

Colocas ranas sobre nenúfares escribiendo propiedades de Flexbox, y en veinticuatro niveles cubres todo lo que se usa a diario. Es un buen primer paso en CSS moderno: en hora y media dejas de copiar y pegar justify-content sin saber qué hace. Además está traducido: es de los pocos juegos para aprender a programar en español de la lista.

Captura de pantalla del juego Flexbox Froggy, mostrando la interfaz de usuario con una rana, un nenúfar y un código CSS para resolver un rompecabezas.
Domina CSS Flexbox de forma divertida y efectiva con Flexbox Froggy. ¡Resuelve puzzles y conviértete en un experto!

Para quién no sirve: solo cubre Flexbox. Para rejillas necesitas el siguiente.

Visitar Flexbox Froggy

Grid Garden

Enseña: CSS Grid · Nivel: desde cero · Gratis · Sin registro · Interfaz en español

Riegas un huerto de zanahorias colocando el agua con CSS Grid, nivel a nivel, hasta que las propiedades de rejilla se te quedan. Es del mismo autor que Flexbox Froggy y funciona igual de bien; lo natural es hacer los dos seguidos, primero Flexbox y después Grid.

Nivel de Grid Garden con el huerto y el editor de propiedades de CSS Grid
El agua cae donde tú la mandes con CSS Grid, y las zanahorias pagan el error.

Para quién no sirve: si ya maquetas con Grid a diario, no vas a encontrar nada nuevo.

Visitar Grid Garden

CSS Diner

Enseña: selectores CSS · Nivel: desde cero · Gratis · Sin registro · Interfaz en inglés

Una mesa puesta donde tienes que elegir platos y frutas escribiendo el selector correcto. Va de lo básico a lo que casi nadie usa bien, como ~ o :first-child; la teoría ordenada está en mi guía de selectores CSS. Es el más corto de los tres y el que antes se nota en el trabajo diario.

Captura de pantalla del juego CSS Diner, mostrando el primer nivel donde el jugador debe seleccionar dos platos usando selectores CSS.
Domina los selectores CSS con CSS Diner. ¡Un juego interactivo que te hará un experto!

Para quién no sirve: no enseña maquetación, solo selección. Úsalo de complemento después de Flexbox Froggy.

Visitar CSS Diner

Flexbox Defense

Enseña: CSS Flexbox aplicado · Nivel: básico · Gratis · Sin registro · Interfaz en inglés

Un tower defense clásico donde las torres no se arrastran: se colocan escribiendo propiedades de Flexbox. Son doce oleadas y cada una te obliga a recordar una propiedad distinta bajo presión de tiempo. Funciona mejor como repaso después de Flexbox Froggy que como primer contacto.

Captura de pantalla del juego Flexbox Defense, mostrando la interfaz de juego y un código CSS para posicionar torres usando Flexbox.
¡Domina Flexbox mientras defiendes tu base! Flexbox Defense: El juego que te enseñará Flexbox de forma divertida.

Para quién no sirve: si no hiciste Flexbox Froggy antes, vas a perder por no saber la propiedad, no por estrategia.

Visitar Flexbox Defense

CSSBattle

Enseña: CSS de precisión y código corto · Nivel: intermedio a avanzado · Gratis · Pide cuenta · Interfaz en inglés

Te dan una imagen objetivo y tienes que reproducirla con el menor CSS posible. Puntúa el parecido y la brevedad, y ahí está la gracia: te obliga a conocer atajos y valores por defecto que nunca aprenderías maquetando normal. Hay retos diarios, batallas en directo y salas contra otros jugadores.

Captura de pantalla de CSSBattle, mostrando un desafío de diseño donde el jugador debe recrear una imagen usando el menor código CSS posible.
¡Acepta el reto! Crea diseños con CSS en CSSBattle y compite por la mejor puntuación.

La web declara que es gratis y que siempre lo será. Hay un plan Plus, desde 4,9 USD al mes, que abre el archivo de más de 1.100 retos antiguos y añade estadísticas, pero el juego del día se juega sin pagar.

Para quién no sirve: no enseña CSS. Lo afila. Si estás aprendiendo, te va a frustrar.

Visitar CSSBattle

Hex Invaders

Enseña: códigos de color hexadecimales · Nivel: desde cero · Gratis · Sin registro · Interfaz en inglés

Tres extraterrestres de colores distintos bajan hacia la Tierra y tienes que derribar al que corresponde al valor hexadecimal que te muestran. Es un arcade de cinco minutos y cumple un objetivo muy concreto: dejar de mirar #3498db como si fuera un código de barras.

Captura de pantalla de Hex Invaders, un juego donde el jugador debe destruir invasores hexagonales usando códigos de color hexadecimales.
Aprende y practica los códigos de color hexadecimales con Hex Invaders. ¡Un juego adictivo y educativo!

Para quién no sirve: es un solo truco. No esperes más de una sesión.

Su dominio ya no responde, pero el juego sigue entero en la copia del Internet Archive, con sus gráficos y su marcador.

Jugar Hex Invaders en el Internet Archive

Pixactly

Enseña: intuición de tamaños en píxeles · Nivel: desde cero · Gratis · Sin registro · Interfaz en inglés

Te piden dibujar un rectángulo de unas medidas concretas sin reglas ni guías, y al final de cada ronda te dicen cuánto te desviaste. Cinco rondas y listo. Lo agradeces cuando llevas un año maquetando y te das cuenta de que calcular a ojo te ahorra veinte idas y vueltas al inspector.

Captura de pantalla del juego Pixactly mostrando un resultado de ronda donde el jugador estimó incorrectamente las dimensiones de un bloque de píxeles.
¿Eres capaz de estimar con exactitud las dimensiones de los píxeles?

El juego cambió de dirección: la antigua pixact.ly ya no es la buena, ahora vive en pixactly.app.

Para quién no sirve: no enseña código. Es entrenamiento visual.

Visitar Pixactly

SQL: resolver un asesinato consultando la base de datos

SQL Murder Mystery

Enseña: consultas SQL sobre SQLite · Nivel: básico a intermedio · Gratis · Sin registro · Interfaz en inglés

Hay un asesinato en SQL City y la única forma de resolverlo es consultar la base de datos: cruzar testigos, entrevistas, matrículas y carnés de gimnasio hasta dar con el culpable. Es el mejor ejercicio de SQL que conozco porque nadie te dice qué consulta escribir; tienes que deducir qué necesitas saber y luego pedirlo.

Está hecho por el Knight Lab de Northwestern, el código es MIT y el contenido Creative Commons, así que puedes usarlo para enseñar sin pedir permiso. Si vienes sin base, aprende SQL en 20 minutos y vuelve.

Consulta SQL y su tabla de resultados en SQL Murder Mystery
Nadie te dice qué consulta escribir: tienes que deducir qué necesitas preguntar.

Para quién no sirve: si nunca escribiste un SELECT, arranca por el tutorial que incluye antes de meterte en el caso.

Visitar SQL Murder Mystery

Terminal, Git y Vim: las herramientas que nadie te enseña

Aquí van las herramientas, no el lenguaje. Es la parte que más se nota el primer día de trabajo y la que peor se aprende leyendo.

Learn Git Branching

Enseña: ramas, merge, rebase y cherry-pick en Git · Nivel: básico a avanzado · Gratis · Sin registro · Interfaz en español, con variantes de Argentina y México

Escribes comandos de Git reales en una terminal simulada y ves el árbol de commits moverse delante de ti. Es donde se entiende qué hace un rebase, porque lo ves: los commits de una rama se vuelven a aplicar sobre otra base y el historial cambia. Cubre desde el primer commit hasta cosas que mucha gente con años de oficio sigue haciendo a ciegas.

De los juegos para aprender a programar en español es el que mejor resuelve el problema del idioma: está traducido entero, no a medias.

Terminal simulada y árbol de commits con dos ramas en Learn Git Branching, en español
El árbol de commits se reordena en cuanto pulsas Enter.

Para quién no sirve: no enseña qué es un repositorio ni cómo se usa GitHub. Empieza donde eso ya se da por sabido.

Visitar Learn Git Branching

Oh My Git!

Enseña: Git con cartas y un grafo visual · Nivel: desde cero · Gratis y open source · Sin registro · Interfaz en inglés

Un juego de cartas donde cada carta representa un comando de Git y el tablero dibuja el grafo del repositorio en tiempo real. Lo que lo hace distinto es que lleva un Git de verdad por debajo, y que trae una terminal integrada: cuando la interfaz de cartas se te queda corta, escribes el comando a mano ahí mismo.

Dos avisos antes de que lo busques: no se juega en el navegador, hay que descargarlo para Windows, macOS o Linux; y su última versión es de julio de 2022. El propio proyecto declara que está en modo de bajo mantenimiento, así que no esperes novedades.

Para quién no sirve: si quieres algo que se abra en una pestaña y ya, usa Learn Git Branching.

Visitar Oh My Git!

Git Game

Enseña: comandos de Git para investigar un repositorio · Nivel: básico · Gratis · Sin registro · Interfaz en inglés

Una búsqueda del tesoro dentro de un repositorio: usas git log, git show y compañía para encontrar pistas escondidas en el historial y resolver cada acertijo. No hay una web oficial única; el clásico es de terminal y se clona desde GitHub, y han ido apareciendo versiones web como Game4Git que hacen lo mismo sin instalar nada.

Para quién no sirve: si no sabes clonar un repositorio, empieza por otro lado. Este da por hecho que la terminal no te asusta.

Visitar Git Game

Vim Adventures

Enseña: movimientos y comandos de Vim · Nivel: desde cero · Freemium, licencia desde 35 USD por 6 meses · Pide cuenta para guardar · Interfaz en inglés

Un juego tipo Zelda donde tu personaje solo se mueve con las teclas de Vim: primero hjkl, después w y b, y así hasta que los comandos se te quedan en los dedos sin haberlos memorizado. Es la única forma amable que conozco de entrar a Vim.

Captura de pantalla de Vim Adventures, un juego para aprender a usar el editor de texto Vim.
Domina Vim de forma divertida con Vim Adventures. ¡Un juego único para aprender las claves del editor VIM!

Los primeros niveles se juegan sin pagar, y a partir de ahí hace falta licencia. Son 35 USD la versión de juego y 40 USD la que añade los retos, ambas por seis meses de acceso.

Para quién no sirve: si no vas a usar Vim en el trabajo, es dinero y tiempo en una habilidad que no vas a ejercitar.

Visitar Vim Adventures

The Command Line Game

Enseña: comandos de shell · Nivel: básico a avanzado · Gratis · Sin registro · Interfaz en inglés

Retos de una sola línea que se resuelven en una terminal dentro del navegador: contar archivos, filtrar texto, encadenar tuberías. Va subiendo hasta ejercicios que obligan a combinar herramientas, y todo sin instalar nada ni arriesgar tu sistema.

Terminal en el navegador de cmdchallenge con un reto de shell resuelto
Un reto, una línea: la terminal vive en el navegador y no toca tu sistema.

Para quién no sirve: no explica los comandos. Te suelta el problema y te toca buscar.

Visitar The Command Line Game

Cyber Dojo

Enseña: práctica de código con tests en muchos lenguajes · Nivel: básico a intermedio · Gratis para uso no comercial · Sin registro · Interfaz en inglés

Un entorno donde escribes código y lo ejecutas contra tests una y otra vez, con el historial de cada intento a la vista. Se diseñó para practicar en grupo, y para eso sirve: dos personas delante de la misma pantalla, turnándose. Su catálogo cubre desde los lenguajes habituales hasta rarezas como Chapel o Zig.

Captura de pantalla de Cyber-dojo, una plataforma online para practicar programación.
Mejora tus habilidades de programación con Cyber-Dojo. Practica, experimenta y comparte tu código en un entorno seguro y colaborativo.

Para quién no sirve: no tiene niveles ni progresión. Es un dojo: se entra a practicar y se sale.

Visitar Cyber Dojo

Juegos de mesa sin pantalla: qué dan y qué no

Hay juegos de mesa que prometen enseñar a programar sin pantalla, y como juegos para aprender lógica de programación cumplen. Dan el concepto de secuencia: escribir las instrucciones antes de ejecutarlas, descubrir que una está mal y depurar el plan entero. Eso se entiende igual de bien con fichas de cartón que con código, y en grupo funciona mejor, porque cada jugador ve el fallo del otro.

El que mejor encaja con un grupo de adultos es Potato Pirates: se juega de dos a seis jugadores, viene en tres cajas de dificultad creciente y su propia editorial lo vende para formación en empresa, no solo para el aula. Está en inglés y se compra en su web, con el precio en dólares de Singapur.

Visitar Potato Pirates

Si vas a jugar solo, o con un hijo al lado, el clásico de la categoría es Code Master, de ThinkFun: diez mapas con sesenta niveles, doce fichas de acción y ocho fichas condicionales para armar la secuencia entera antes de ejecutarla. Es de un jugador y está pensado desde los ocho años, así que funciona como primer contacto con la lógica y se queda ahí.

Visitar Code Master

Lo que no dan estos juegos es sintaxis: ninguno te va a enseñar Python. Si te atrae el formato sin pantalla, el mejor uso es el de calentamiento en grupo antes de sentarse al teclado.

Juegos de pago para aprender a programar en Steam

Tres de los juegos de esta lista se compran de una vez, y prefiero decirte de frente qué compras en cada caso.

The Farmer Was Replaced, 9,99 USD. Compensa si te engancha automatizar y quieres decenas de horas de eso. Si lo que necesitas es Python listo para el mes que viene, conviene más CheckiO, que es gratis.

Human Resource Machine, 14,99 USD. Es la compra segura para jugar con alguien que no programa: está en español y no pide saber nada de antemano. No esperes contenido infinito: la partida se acaba.

Screeps, 19,99 USD. Pide tiempo sostenido: meses manteniendo tu propio código, no una tarde. Con menos de un año programando, se hace cuesta arriba.

En la misma familia hay dos más que no he fichado aparte, pero conviene conocerlos si los anteriores te gustaron: 7 Billion Humans, la secuela de Human Resource Machine, que añade la idea de trabajadores en paralelo, y Shenzhen I/O, que te pone a diseñar circuitos y a escribir ensamblador con un manual de verdad que hay que leer.

Si lo que buscas es empezar gratis, ninguno de los de pago es tu primer paso: casi todos los demás de la lista son juegos para aprender a programar gratis.

Cuando los juegos se te quedan cortos

Llega un punto en que los niveles dejan de enseñarte y solo te entretienen. Cuando quieras dejar de jugar y ponerte a resolver problemas, tienes quince sitios para practicar programación. Dentro de esta lista, Hacker.org y CodeCrafters son el escalón siguiente, y ya son juegos para programadores hechos y derechos, no para quien empieza.

Hacker.org

Enseña: criptografía, algoritmos y puzzles de dificultad alta · Nivel: intermedio a avanzado · Gratis · Pide cuenta para guardar progreso · Interfaz en inglés

Una colección enorme de retos ordenados por dificultad, con secciones de Bot Wars, donde programas un bot que compite, y de puzzles como Mortal Coil o Runaway Robot que exigen pensar el algoritmo antes de escribir una línea. La estética es de otra época, pero el sitio sigue perfectamente vivo.

Página web de Hacker.org mostrando una variedad de juegos de programación, incluyendo categorías como "Bot Wars" y "Puzzles".
Pon a prueba tus habilidades de programación con los juegos de Hacker.org.

Para quién no sirve: no hay tutorial ni acompañamiento. Si te atascas, te atascas solo.

Visitar Hacker.org

CodeCrafters

Enseña: construir desde cero un Redis, un Git, una shell, un SQLite · Nivel: avanzado · Freemium · Pide cuenta · Interfaz en inglés

Aquí ya no hay juego: hay retos largos donde reimplementas herramientas reales paso a paso, con tests que validan cada etapa. Así entiendes cómo funciona por dentro un Redis o un Git. El nivel gratuito da acceso limitado sin pedir tarjeta, y el resto va por suscripción.

Si los juegos de esta lista te enseñaron a resolver problemas, CodeCrafters te enseña a construir sistemas.

Para quién no sirve: si llevas menos de un año programando, va a ser una pared.

Visitar CodeCrafters

Juegos para enseñar a programar a niños

Si lo que buscas es para un hijo o para un aula, el orden cambia. Blockly Games es la entrada más limpia porque no pide leer inglés ni escribir código, y está en español. Code Monkey funciona bien en clase por su progresión, con la advertencia del muro de pago. CodeCombat Junior sirve a partir de los ocho o nueve años, cuando ya se puede teclear con soltura.

Si el niño aún no lee, Robot Turtles (puedes encontrarlo en ebay), de ThinkFun, arranca a los cuatro años con cartas y sin texto; hoy se consigue de segunda mano.

Y una idea que suele funcionar mejor que cualquier juego: dejar que elijan qué quieren construir y usar el juego solo para desatascarse. Escribí una guía dedicada a qué lenguajes de programación son mejores para niños si quieres ir más a fondo con esto.

Cómo saber que un juego ya cumplió su función

La señal: cuando resuelves los retos sin mirar la solución y sin buscar en Google, el juego ya te dio todo lo que tenía. A partir de ahí seguir jugando es entretenimiento, no aprendizaje. Ese es el momento de abrir un editor vacío y construir algo tuyo, por pequeño y feo que sea. Si te falta material para esa etapa, reuní los recursos gratuitos para aprender programación que valen la pena.

Antes de llegar ahí vas a atascarte, así que conviene tener criterio para eso también. Mi regla: intenta el nivel tres veces de formas distintas. Si a la tercera sigues igual, mira la solución, pero no la copies. Léela, cierra la pestaña y escríbela de memoria. Si no te sale de memoria, es que no la entendiste, y ahí sí vale la pena volver atrás.

Si un juego entero se te resiste desde el primer nivel, no es que no sirvas: es que ese juego da por sabido algo que todavía no sabes, y hay otro en esta lista que empieza más abajo.

¿Cuál te enganchó? Si conoces algún juego que se me quedó fuera, o si probaste alguno de estos y tu experiencia fue distinta a la mía, cuéntamelo en los comentarios.

Categorizado en:

Fundamentos Programación,