jueves, 8 de noviembre de 2012

CheckIO, aprendé a programar en Phyton de forma colaborativa



Fabio Panettieri me pasó la data de este juego social llamada CheckIO con el que podés aprender a programar en Phyton de una manera distinta.



CheckIO es lo más cercano a un libro para niños: tiene una gráfica caricaturesca, hay personajes con nombres definidos, hay una historia detrás de todo lo que hacemos, etc. El "juego" nos pone en una civilización robótica que debe ir desbloqueando diferentes islas, y para eso necesitamos resolver varios problemas en cada isla, problemas que resolvemos obviamente mediante código Phyton (en sus versiones 3.3 o 2.7, según nuestro gusto).

Lo interesante es que cada problema tiene una historia detrás. Por ejemplo, hay uno en el que tenemos que comprar una nueva nave espacial, y para ello tenemos que escribir un programa que calcule el precio en el que el vendedor nos va a dejar comprar la nave, teniendo en cuenta el ida y vuelta de la negociación previa que nos plantea dicho problema. Cabe aclarar que mi conocimiento en lenguajes de programación es -10, así que honestamente no pude avanzar demasiado en el juego. De hecho, ni siquiera resolví el primer problema jajaja.

La parte social está dada en que, para empezar, muchos de los problemas fueron escritos por jugadores avanzados. Al mismo tiempo, cada problema tiene un muro de comentarios en donde la gente discute la posible respuesta (generalmente libre de spoilers). También hay un tablero que nos indica el "top 3" de los usuarios que resolvieron el problema en base, supongo, a la velocidad y la respuesta en sí. Podremos ver la resolución de cada usuario y compararla con la nuestra, pero antes debemos resolverlo al menos una vez.

Si bien el juego dice que es apto para principiantes, en la mayoría de los problemas se siente la necesidad de un conocimiento previo. Sin embargo existe la posibilidad de pedir "coaching" a los usuarios que se ofrezcan para tal tarea, de modo de mantener una conversación más fluida con ellos, generalmente por Skype, para que nos den una mano en la resolución.

Hay más elementos interesantes, como que cada usuario tiene un nivel que va aumentando mientras va resolviendo los problemas; o la opción de compartir en las redes sociales cada caso para buscar ayuda; entre otras cosas.

Siempre es bueno ver que en áreas tan duras como puede ser la programación haya lugar para la creatividad, la narración, la creación de una historia y unos personajes. Yo creo que esta es una buena herramienta para la gente que quiera aprender programación, pero al mismo tiempo, es también bastante específica, ya que no se puede usar otra cosa que Phyton. Por otro lado, el hecho de que uno tenga que resolver un problema que puede tener diversas respuestas, no se hasta que punto le deja a uno un verdadero conocimiento del lenguaje en sí, porque quizás alguien lo resuelve correctamente, pero no de la forma más práctica. Si bien uno puede comparar sus respuestas con las de los demás, es un proceso tedioso.

En definitiva, no es una mala opción como juego educativo, pero tenés que estar muy metido en Phyton para poder aprovecharlo. Digamos, tenés que ser un Phyton geek, sino no creo que le encuentres el gustito.

No hay comentarios:

Publicar un comentario