Sabiendo que estábamos en los últimos días de las Rebajas de Verano de Steam (finalizan el próximo jueves 8 de julio), decidí darme un garbeo por mi ‘wishlist’ para ver qué gangas encontraba y, para mi sorpresa, descubrí que un gran número de los mejores videojuegos de la categoría ‘Programación’ estaban de oferta.
Así que vamos a repasar algunas de las mejores (y más variadas) opciones para aprender programación jugando… o para jugar aprovechándonos de nuestros conocimientos de programación, según el caso:
Super Markup Man
Super Markup Man nos ofrece una experiencia de juego de plataformas con el objetivo de iniciarnos en el uso de HTML y CSS. Apto para dummies absolutos en programación web, que podrán ir visualizando en el lado derecho de la pantalla cómo afectan a la visualización de la web los cambios que realizamos en el orden de las etiquetas.
Move Code Lines
La propuesta de Move Code Lines es, en el fondo, similar a la del juego anterior: mover elementos del código para experimentar de primera mano cómo afectan al resultado final. Sin embargo, la experiencia se asemeja mucho más a la de una verdadera sesión de programación.
La pantalla nos mostrará, además del código propuesto, una pantalla con el ‘output’ que debemos conseguir, y otra con el que proporciona el código tal y como está.
El lenguaje usado en el juego es real: se trata del poco conocido Chaiscript. De todos modos, lo importante no es tanto aprender la sintaxis del lenguaje en sí como la lógica de programación subyacente.
Copy Editor: A RegEx Puzzle
‘Copy Editor: A RegEx Puzzle’ es un juego cuyo fin es resolver retos usando (y aprendiendo, gracias a completos tutoriales para dummies) expresiones regulares y, como en el anterior, nuestro objetivo reside en hacer coincidir el texto dado con el objetivo marcado, aplicando sucesivos filtros.
Cuando terminemos, el juego nos informará sobre cuán optimizada está la solución que hemos propuesto. Y, a veces, insertará obstáculos (como teclas que no funcionan en determinados niveles) y ayudas (como un complemento ficticio para las expresiones regulares que las dotan de capacidades de procesamiento de lenguaje natural).
while True:learn()
La historia de while True:learn() es muy simple: un geek prototípico decide crear una IA para comunicarse con su gato después de descubrir que éste sabe programar (le arregla un bug mientras se va a por café). Y para ello ‘qooglea’ hasta llegar a los foros de ‘CatOverflow’ (guiño, guiño), donde otros usuarios (PNJs) nos irán asignando tareas.
Esta rocambolesca situación es la excusa para plantear un videojuego muy divulgativo que nos va introduciendo poco a poco en los conceptos básicos de la programación y de la inteligencia artificial. También en este caso recurriremos a la programación visual, basada en conectar nodos para regular el flujo de datos.
Screeps: World
‘Screeps: World’ es un juego multijugador de estrategia en tiempo real con ambientación futurista bastante típico: unidades automatizadas que extraen recursos para crear bases o que atacan a las unidades y bases de otros jugadores.
Lo novedoso es que esas unidades no tendrán más inteligencia artificial que las que nosotros mismos les programemos usando JavaScript puro y duro: no tendremos otra forma de darles órdenes (nada de hacer clic para indicar que disparen o que se replieguen). Y más nos vale programarlas bien, porque deberán seguir ejecutándose mientras estamos offline.
Podemos jugarlo tanto en un servidor privado como en el de la compañía, pero el precio del videojuego variará según la potencia de CPU con la que queramos contar en este último.
Human Resource Machine / 7 Billion Humans
Estos dos juegos, creados por los desarrolladores de ‘World of Goo’ y ‘Little Inferno’, y manteniendo intacta la estética de este último, nos animan a resolver 100 puzzles de programación (40 en ‘Human Resource Machine’, y 60 en ‘7 Billion Humans’) con los que deberemos automatizar tareas de oficina, programando las acciones de uno o varios humanos, según el juego.
Programaremos usando un lenguaje —variará de una entrega a otra— levemente basado en ensamblador, pero contaremos con un sistema de programación visual para facilitar la tarea. El juego premiará el código más breve (en ningún caso necesitaremos más de 40 instrucciones) y el programa más rápido.
TIS-100 / SHENZEN I/O
Ambos juegos han sido creados por Zachtronic Industries, un estudio independiente (y, durante mucho tiempo, unipersonal), especializado en puzzles de ingeniería (como el reputado Opus Magnum) y en juegos de programación (como los que nos ocupan).
Al igual que ocurría en los juegos anteriores, tendremos que programar en una versión simplificada de ensamblador; al contrario que con aquellos, dejaremos de lado la estética cartoon y las metáforas ofimáticas para simular un contacto directo con el hardware.
Así, TIS-100 nos sitúa frente a la austera interfaz (y el preceptivo manual) de una computadora de los años 70-80 —también ficticia, pero basada en las arquitecturas GA144 y Connection Machine— que ha sufrido un daño en su hardware: ir resolviendo los puzzles que nos plantean ayudará a dar con la solución al problema.
Su —en cierta forma— sucesor, Shenzen I/O, te anima a asumir el papel de un ingeniero electrónico que trabaja para una ficticia empresa china creando circuitos (una versión simplificada de los reales) y desarrollando luego el código necesario para hacerlos funcionar. Además, nos permite crear nuestros propios retos programando scripts en lenguaje Lua.
MHRD
MHRD nos lleva un paso más allá de los lenguajes de programación (incluso los de bajo nivel, como ensamblador) para entrar de lleno en el de los lenguajes de descripción de circuitos, es decir, los que permiten definir el funcionamiento de nuestros chips.
El lenguaje usado en el videojuego es ficticio, pero se basa en otros reales: VHDL y Verilog, usados en la programación de tarjetas FPGA. Vamos, que este videojuego ya no es para ‘dummies’.
Fuente: Genbeta
¿Quieres dar un salto educativo y laboral y formarte en programación? En EducaciónIT tenemos una gran oferta de cursos, junto con un plan de carrera, mediante los cuales podrás convertirte en un programador profesional con la capacitación más completa y actualizada del mundo IT.
- El teclado para ‘copiar y pegar’ código de Stack Overflow, una inocentada convertida en gadget (y ya en preventa) – 6 octubre, 2021
- Los papeles de Pandora: cómo Python y el aprendizaje automático han sido clave en una investigación mundial con datos masivos – 5 octubre, 2021
- China marca las directrices éticas de la IA nacional: un mayor control frente a los algoritmos de las grandes tecnológicas – 4 octubre, 2021
Deja una respuesta