lunes, 26 de diciembre de 2016

Navidea con Scratch

Hace casi dos meses compartí una entrada con ideas sobre celebrar Halloween de una forma diferente mediante la realización de videojuegos sencillos o cuentos con Scratch.
Ya estamos en diciembre, en plenas vacaciones de Navidad y os propongo hacer lo mismo, pero creando postales interactivas o pequeños cuentos navideños para felicitar las fiestas a quienes nos apetezca.
Es otra manera de dar rienda suelta a la imaginación de nuestro alumnado y ver las múltiples posibilidades que nos ofrece esta herramienta.
A la hora de ponernos manos a la obra vamos a tener en cuenta varias fases (válidas para cualquier tipo de proyecto):

FASE PREVIA: pensaríamos qué elementos necesitamos y que queremos mostrar con ellos, es decir el comportamiento de cada uno. En mi caso, partiendo de mi ejemplo concreto, siendo la creación de una felicitación, propongo desglosar lo anterior en un esquema siguiendo un orden:
    1) Elementos.
      • Crear un escenario de una bola de Navidad.
      • Personajes principales o secundarios como un reno.
      • Objetos como un paracaídas, un árbol navideño, luces, una estrella, un gorro de navidad, un saco y regalos variados (calcetín, muñeco de jengibre y paquete de regalo).
      • Música, se crearía una melodía sencilla con Scratch.
      2) Interacciones y comportamiento.
        • Escenario. La idea sería crear un paisaje nevado, creando el efecto de la nieve cayendo.
        • Personajes. El reno bajaría desde el cielo con la ayuda de un paracaídas y cuando llegara al suelo daría saltos de alegría. Al picar sobre él diría algo.
        • Objetos. - El paracaídas bajaría a la misma velocidad que el reno y al llegar al suelo desaparecería; - el árbol tendría unas luces de navidad que se iluminarían de manera aleatoria con colores diferentes; - la estrella brillaría y al picar sobre ella se deslizaría hacia el árbol; - el gorro de navidad aparecería encima del reno; - el saco tendría dentro regalos escondidos, que aparecerían una vez que se hiciera click sobre el mismo. Estos luego se moverían hacia el árbol; - al hacer click sobre el calcetín aparecía un caramelo; - felicitación.
      Una vez teniendo en mente lo anterior, pasaríamos a la FASE DE DISEÑO:
      1) Buscaremos las diferentes imágenes (fondos, objetos, personajes) y sonidos, en bancos de imágenes tales como pixabay, wiki commons, etc. los editamos o bien los podemos dibujar.
      2) Añadimos por orden los elementos que contiene.

      Por último pasaríamos a la FASE DE PROGRAMACIÓN:
      1) Realizamos paso a paso el código de cada objeto o personaje que contenga la misma.
      2) Lo comprobamos poco a poco para ver el funcionamiento.

      Ya vistas todas las fases, me gustaría a continuación (sin pretender hacer un tutorial completo), compartiros algunas ideas, maneras de crear y programar ciertos elementos de una postal cualquiera para hacerla interactiva, como la que os compartiré al final de esta entrada:
      • Creación y programación del escenario
      Para diseñarlo nosotros mismos vamos a fondo, y elegimos el apartado "diseñar nuevo fondo". Con la herramienta de "rectángulo" dibujamos la base y la pintamos del color que se desee. Posteriormente con la herramienta "elipse" dibujamos un círculo, colocándolo junto al borde de la base y le rellenamos el fondo del color que queramos. Más adelante los "duplicamos" para tener dos fondos más. Luego le vamos dibujando a cada uno de los fondos con el "pincel" pequeños puntos blancos aleatoriamente que simulen la nieve. 

      Una vez que tengamos todos los escenarios, crearemos la programación para crear la sensación de que nieva, mediante la alternancia de ambos fondos, con una espera de pocos segundos.
      Bastaría con usar el siguiente código:

      • Creación y programación del reno:
      Para añadir el reno, iremos a la biblioteca de Scratch, al apartado de "tema", y a "celebración".
      Una vez que lo tengamos, se programará de la siguiente manera:
      1) Le indicaremos la posición desde la cuál queramos que parta una vez que se inicie el programa. Dentro del mismo código le añadiremos un bloque de esconder con una pequeña espera, para que no se vea desde un principio.
      Luego lo mostraremos y le indicaremos que a lo largo del programa de manera continua con el bloque "por siempre", vaya cayendo. 
      A continuación, usamos un bloque condicional "si...entonces", junto al bloque de sensor "tocando color", lo que nos permitirá crear la condición de que si nuestro personaje toca tal color, retroceda unos pasos. El personaje parecerá que dará saltitos, lo que en mi caso simularía su alegría.




      Si por casualidad queremos que se quede quieto una vez que toque el suelo, la programación sería diferente, ya que le indicaríamos que siempre que "no toque" el color del suelo, caiga hacia abajo hasta que lo toque. 





      2) A la hora de hacerlo interactivo, usaremos el envío de mensajes. 
      Usaremos el bloque de "al hacer click en este objeto" y posteriormente enviaremos un mensaje, para que una vez que se reciba, el personaje diga algo.










      • Programación del paracaídas: 
      La programación del paracaídas será prácticamente la misma que la del reno, ya que van cayendo ambos de manera simultánea, lo único que habría que variar sería, usar un bloque de "ir una capa hacia atrás", para que no se superponga al reno y una vez que toque el color deseado, se escondería.


      • Programación regalos:
      Cada uno de los regalos "al presionar la bandera" los situaríamos en la misma "posición" que el saco, con la diferencia de que partirían escondidos. 
      Gracias al intercambio de los "mensajes", podremos lograr que "al hacer click sobre el saco", enviaremos un mensaje a cada regalo, los cuáles lo recibirán y jugando un poco con los segundos, pondremos un tiempo de espera mayor a unos que a otros, para qué de la sensación de que salgan poco a poco, "deslizándose en distintas posiciones" hacia el árbol.
      Por último, una vez que la tengáis, podéis mandar el enlace en un email, añadiendo un pequeño documento o mensaje indicando al destinatario instrucciones sobre como usarla, para no perderse ninguna sorpresa o bien podemos con el mismo Scratch 2.0 grabar un pequeño clip y adjuntarlo. Para ello iríamos a la pestaña de "archivo", la opción de "record and export video", elegir las opciones que nos interesen y darle a "start":

      A disfrutar, inventar y crear.

       

      lunes, 31 de octubre de 2016

      Programando juegos o historias en Halloween

      El Sahmain ó Halloween es una fiesta de origen celta en la cuál se celebraba el fin del verano. 
      A menudo en la sociedad actual y desde que llegó al continente norteamericano, se ha ido extendiendo y popularizando en otros lugares con las actividades típicas de fiestas de disfraces, historias de miedo y los famosos paseos nocturnos de los más pequeños pidiendo dulces con la famosa frase trick or treat.
      Con esto último es con lo que los niños/as se quedan, algo que les atrae y les encanta, por lo que es bueno aprovecharlo para conectarlo con actividades de programación de juegos, historias o animaciones que sean de su interés.

      Para ello podemos usar recursos ya creados o crear los nuestros propios que permitan fomentar más aún su creatividad e imaginación:
      • Si tenemos conexión a internet, podemos usar la plataforma Tynker.  
      Este año nos deleitan con cuatro actividades junto a tutoriales clasificadas por nivel de dificultad (principiante, intermedio, avanzado y experto) que a continuación pongo:
        • Make-o-lanter: es el primer nivel, el básico donde la programación ya está hecha y nos da la libertad de tunear a la calabaza. Esta actividad se puede aprovechar para buscar información o historias de porque es tan típico y un símbolo usar calabazas en halloween e incluso decorarlas para convertirlas en faroles y qué aprecien así el arte de hacerlo.
        • Trick or Treat Tombs: es el nivel intermedio, donde programar un juego sencillo de esconder caramelos en las tumbas. Esta actividad se puede aprovechar para buscar información sobre la costumbre de pedir dulces y qué se realizaba en épocas pasadas.
        • Halloween Hostage: es el avanzado, el cuál necesita de conocimientos previos, un juego que podemos empezar desde el inicio o continuarlo y mejorarlo. Esta actividad se puede aprovechar para buscar información sobre los típicos juegos de Halloween para divertirse con sus amigos junto al significado de los símbolos usado bien sean criaturas o animales.
      Cómo podéis ver a pesar de que esté en inglés, es muy similar a scratch ya que usa un lenguaje visual basado en bloques, por lo que no habrá problema en usarlo con nuestro alumnado con cierta familiarización con el anterior. De todas maneras aunque no tengamos creada una cuenta puede usarse sin iniciar sesión, eso sí, sin posibilidad de guardarlos.
      • Si no tenemos conexión a internet, podemos usar Scratch o la herramienta con la cuál nuestro alumnado esté habituado a trabajar.
      Aquí la propuesta puede ser muy variada:
      1) Realización de minijuegos relacionados con la temática a trabajar, dando dos.
      2) Narración de historias de miedo usando los monstruos, símbolos o personajes que deseen.
      Lo que se pretende es crear proyectos por partes, en varias sesiones, fomentando el trabajo en equipo, y repasando conceptos ya vistos como: "El uso de los mensajes como forma de comunicación entre los objetos", "el movimiento de los personajes (aleatorio o manejándolo mediante el teclado o ratón)", "uso de las condiciones", "uso de sonidos, escenarios, la apariencia de los objetos", "uso de las variables" etc. e ir introduciendo otros nuevos como "los clones".
      Además de lo anterior para no desvincularnos de halloween, los proyectos tendrán como finalidad por un lado narrar historias de miedo, cómics o simples historias con personajes típicos de halloween y por otro lado crear pequeños juegos con objetos y personajes típicos de halloween explicando en ambos casos al resto de sus compañeros lo que han querido representar en él, la función que tiene cada uno de los personajes y lo que significa cada símbolo junto a su origen.

      1) Como les suelen encantar más los videojuegos, algunos que se me ocurren como referencia y suelen tener gran aceptación serían:
      - Una adaptación libre del famosísimo Plants vs Zombies, que bien podría llamarse Pumpkins vs Zombies.
      - Un minijuego para cazar fantasmas.
      - Un minijuego para encontrar caramelos.

      Aquí os comparto dos ejemplos de algunos pequeños juegos que he creado, con el objetivo de mejorarse:
      • En busca de los caramelos: este lo he realizado con tynker, aprovechando la plantilla del juego de trick or treat. El objetivo del mismo sería buscar entre las tumbas caramelos y esquivar a los monstruos que salgan de las mismas. 
      Este juego tiene una historia detrás y una ambientación que de alguna manera he querido relacionar un poco con halloween. 
      Un niño disfrazado de ninja se pierde de su grupo de amigos con los que iba pidiendo caramelos en las casas de su vecindario por ir detrás de un gato negro. El gato le lleva hasta el cementerio y allí se encuentra con un cartel en donde le dicen que si se acerca a las tumbas con cuidado encontrará caramelos muy deliciosos, nunca jamás vistos antes, pero si se acerca a la tumba equivocada, se despertará una maldición y de ella acabará saliendo un ser de otro mundo como una momia o un esqueleto los cuáles tendrá que evitar.

      • Pumkins Vs Zombies: es una libre adaptación del famoso videojuego "Plants vs Zombies".
        Es un minijuego actualmente en borrador. El objetivo del mismo es evitar que los zombies toquen a las calabazas, lanzándoles semillas de manera aleatoria con ellas. Para más información visitad el juego. 
      La historia que estaría detrás de este juego sería una típica de terror:
      La noche del 31 de octubre, los zombies se despiertan de sus tumbas en busca de algo para comer. Intentar entrar en las casas y acercarse a las personas, pero las calabazas lo impiden ahuyentándoles con sus semillas de luz.
      Esto puede dar pie a que los niños/as piensen y tengan curiosidad en saber porque las calabazas a pesar de su aspecto a veces terrorífico son un símbolo para espantar a los que regresan.


      Nuestro alumnado puede realizar algo más sencillo o complejo de acuerdo a su nivel. Pueden por ejemplo hacer un juego de modo dos jugadores donde unos manejen a las calabazas y otros a los zombies, un juego de varios niveles donde cada vez sea más difícil avanzar debido a la fortaleza física de los tipos de zombies que nos encontremos o lo que se les ocurra y siempre ir mejorándolo.

      *Más adelante con tiempo os mostraré como hacer el Pumpkins vs zombies, incluidos los personajes y compartiendo bancos de imágenes donde poder usar más objetos y no limitarnos a la galería de scratch.

      Actualizado el 1 de noviembre de 2016.

      jueves, 27 de octubre de 2016

      ¿Qué es un robot? Conociéndolo por dentro y por fuera

      Antes de ponernos a trastear con cualquier robot y hacer que funcione, nuestro cerebro demanda la respuesta a una pregunta curiosa: ¿qué es un robot?
      Esta a su vez, se puede convertir en varias, ya que cada persona tiene una idea muy peculiar al respecto. 
      Casi más conveniente sería concretar y preguntar:
      ¿qué entiendes por robot? ¿qué cosas crees que le hacen ser un robot? ¿qué robots conoces?
      Así, se podrá tener una visión inicial y aproximada de lo que cada uno piensa.
      Más adelante, para alimentar la intriga por acercarnos a la respuesta principal, y ampliar nuestra perspectiva, otras dos preguntas nos ayudarán a definirlo:
      ¿Qué acciones realiza un robot? ¿qué tiene un robot tanto por dentro como por fuera?
      De esta manera dejaremos de imaginarlo como una simple máquina con una apariencia específica, que se desplaza y habla, para comprenderlo en su conjunto.

      He querido comenzar el post así, porque a veces tenemos ideas erróneas de lo que se entiende por robot, sobre todo los niños/as, no saben delimitarlo bien, y cualquier máquina o dispositivo electrónico piensan que es un robot.
      Para ello es bueno acercarles a la distintas partes que lo conforman y compararlo con el ser humano.
      Estas partes serían:
      - Sensores: son los dispositivos que extraen la información del entorno que rodean al robot. Son similares a nuestros sentidos. Podemos encontrarnos con infrarrojos, cámaras, entre otros.
      - Actuadores: son los componentes que realizan una acción en el medio. Son como nuestras piernas y brazos. Algunos de ellos son el motor, los altavoces, etc.
      - Estructura: es el cuerpo del robot, el que sujeta los elementos que lo componen.
      - Sistema de control: sería el cerebro del robot, el cuál interpreta las señales del entorno (los sensores son los encargados de mandarlas), las cuáles se procesan y se toman decisiones para posteriormente realizar acciones (las cuáles se hacen con los actuadores) según las órdenes dadas.

      Con esto parecería que fuera suficiente, pero a menudo puedes encontrarte con que les cuesta comprenderlo, sino practicas con un ejemplo real de cómo funcionan, ya que están aprendiendo un lenguaje nuevo.
      A partir de ahora, es cuando podemos realizar actividades sencillas de acercamiento a la programación para enseñar lo que sería un algoritmo (más adelante se verán bucles y condicionales antes de meterse de lleno con scratch o cualquier otro lenguaje de programación similar, con ayuda de alguna aplicación adaptada a su nivel para aprender a programar), usando para ello robots de papel o de cualquier otro material reciclable (con forma humanoide, insectos artrópodos, etc.), algo sencillo que puede encantarles.
      Pensando como hacerlo con los más pequeños de primaria, de una manera más simple me acordé de las Bee bot que usan mis queridas/os maestras/os de infantil y un material estupendo de code.org, quedándome con la actividad de Happy maps.
      La idea sería dentro de un pequeño mapa colocar en un lugar un robot, en otro un objeto y usar unas flechas para mover el robot hacía el objetivo a lograr.
      En mi caso como no pude imprimirlo creé algo similar, inventando una pequeña historia de la siguiente manera:

      "Bugy es un robot inquieto. Le encanta cambiar su aspecto y moverse por cualquier superficie, agua,  tierra, e incluso aire. Para ello necesita de piezas adicionales. Ayuda a Bugy a moverse por el mapa para encontrar alguna pieza."




















       
      Para ampliar la actividad se puede hacer un pequeño juego de mesa, creando un mapa más grande o reutilizando el tablero de algún juego que tengamos, cuyo funcionamiento sería muy simple: que tiren un dado y muevan al personaje el número de veces que sea necesario hasta llegar a donde se encuentren las piezas.

      Aquí es cuando te das cuenta de si lo entienden, de si son capaces de darles las órdenes necesarias para que funcionen, de los pasos que les faltan dar para llegar al objetivo o de los que les sobran.
      De momento el camino comienza, más adelante y con paciencia, serán capaces de conocer nuevos conceptos básicos y de aplicarlos para aprender a manejar sus propios robots y personajes.

      --------------------------------------------------------------------------------------------------------------------------------------
      * Datos y materiales de interés:
      - En mi post finalmente no he escrito ninguna de las definiciones de robot existentes, pero como curiosidad el origen de la palabra aparece en la obra teatral de ciencia ficción Robots Universales Rossum de Karel Capek.
      - La palabra robótica procede también de la ciencia ficción, apareciendo por primera vez en una de las historias cortas del autor Isaac Asimov.
      -  En este apartado de la página de code.org encontraréis cursos con lecciones y materiales de programación, tanto online como offline para diferentes edades y niveles:
      https://code.org/educate/curriculum/elementary-school
      - Las Bee Bot son unos robots infantiles programables que algunos docentes los usan para trabajar en sus clases de educación infantil. Para más información visita:
      http://codigo21.educacion.navarra.es/autoaprendizaje/bee-bot-robot-infantil-programable/
      O echa un vistazo también al blog de un proyecto educativo colaborativo donde se recogen las andanzas de este pequeño robot por aulas de infantil, para así ver las actividades que se realizan.
      http://elviajedebeebot.blogspot.com.es/