Scratch
Scratch es una herramienta donde docentes, niños y jóvenes pueden expresar sus ideas de forma creativa, utilizando un entorno de
desarrollo que permite su modificación, ampliación y evolución. Debido a los tipos de usuario para este mediador, se buscó que fuera
intuitivo, utilizando casi un lenguaje natural, por medio de bloques de código interconectables, que facilitan la programación; además
que al tener una naturaleza multimedial, permite la adición de imágenes y audios.
Antecedentes
Scratch fue creado por el Lifelong Kindergarten del Media Lab en el MIT, a partir de trabajos previos muy importantes: un lenguaje de
programación orientado a objetos llamado Smalltalk creado por Alan Kay en la década de los 70´s y que fue retomado con Squeak, un
lenguaje que incorpora una máquina virtual donde se facilita la creación de ambientes multimediales y altamente interactivos. También
se reconoce el aporte realizado por Seymour Papert y su equipo, que basados en el trabajo de Jean Piaget, realizaron el lenguaje Logo.
Con Scratch se retoma el estilo de Squeak, de arrastrar y formar bloques al estilo lego, para crear un proyecto, en vez de la
programación típica donde se debe escribir todo; y como LogoBlocks o PicoBlocks, los bloques son autoencajables, de modo que solo
se ajustan si son sintácticamente correctos, esto permite concentrarse en la lógica de programación sin perder tiempo analizando si está
escrito correctamente
No se enseña a escribir para formar futuros escritores, se hace porque escribir es una necesidad básica en nuestra sociedad. El
aprendizaje de la programación es una estrategia que permite adquirir las habilidades básicas para el Siglo XXI, no se debe confundir
enseñar a programar con formar desarrolladores de software.
El Media Lab del MIT, ha considerado una estrategia de aprendizaje "estilo jardín infantil" que es caracterizada por una espiral de
imaginar, crear, jugar, compartir, reflexionar y de nuevo imaginar. Esta espiral ayuda a desarrollar el pensamiento creativo para
cualquier edad, que es una de las habilidades críticas para nuestra sociedad.
El grupo de Media Lab trabajó con Yasmin Kafai para crear Scratch,el cual permite a los niños crear
sus propios juegos, historias interactivas, animaciones, música y arte y de esta forma desarrollar el
pensamiento creativo a partir del juego. Pero esto no es suficiente, este tipo de aprendizaje requiere
trabajo colaborativo, compartir información y una cultura de Bricolaje, por lo tanto, se necesitó crear
una comunidad de aprendizaje. Para esto, se requiere que los docentes también se empoderen de la
herramienta para que puedan aplicarla en sus clases y enseñarla a sus estudiantes.
Scratch en Internet
Así como en Internet se pueden encontrar muchas páginas donde se comparten fotografías, videos y
blogs; se necesitaba también de un lugar donde se compartan las propias creaciones en Scratch, de esta forma se creó el sitio Web de
la comunidad, permitiendo que cualquiera que sea integrante pueda visibilizar su proyecto, y posibilitar a otros que puedan descargarlo,
modificarlo o crear proyectos inspirados en ese trabajo o incluso que se crearan grupos con roles bien diferenciados donde se
colaboraban entre sí.El sitio Web ya cuenta con más de dos millones de proyectos realizados por la comunidad de Scratch, la cual no es
solo de niños y jóvenes, sino también docentes y padres de familia que se han interesado en la enseñanza de esta herramienta. Muchos
docentes han empezado a compartir sus experiencias, ideas y currículos por medio de diferentes espacios en Internet, como una wiki,
una comunidad llamada ScratchEd, videotutoriales de learnScratch o AprendiendoScratch y otros sitios como una lista de
recursos o lista de proyecto de Scratch.
Entorno de proyectos
Para empezar es necesario comprender cómo está conformado un proyecto en Scratch. La herramienta posee un escenario y múltiples
objetos, cada uno de ellos con su propia programación.
El entorno de proyectos del programa Scratch cuenta con diferentes áreas para crear y modificar objetos
Los componentes existentes en el proyecto, es decir: actores, fondos, objetos se pueden ver en esta imagen:
Escenario
Cada proyecto de Scratch cuenta con un esce-nario único en el cual van a desarrollarse
todas las situaciones, es el mismo concepto en teatro, éste sería el espacio
escénico. Pero cuando se desea cambiar de lugar en una obra, se cambia de telón, en
este caso, si se desea cambiar la imagen del escenario se cambia el fondo. También se
puede contar con sonidos, en caso de que se desee agregar música de fondo en de-
terminadas situaciones. La pestaña de programas es donde se define el
comportamiento del escenario, por ejemplo, en qué momentos cambiar el fondo, la
música, etc
Objetos
Se pueden tener muchos objetos de Scratch, hay que tener en cuenta que cada uno se
considera una entidad aparte. Como en una obra de teatro, los objetos pueden definirse
como todos los elementos que van a estar en el escenario, ya sean actores u objetos
que interactúan con los actores. En el área de listado de objetos se pueden crear objetos dibujándolos, obteniéndolos de alguna imagen
o sacándolos al azar. Cada objeto puede tener múltiples disfraces y sonidos dependiendo de la situación que se quiera representar,
estos pueden ser mostrados por medio de la programación que realicemos.
Área de diseño
En esta área se define el lugar en el cual van a estar ubicados los objetos y dónde se pueden manipular para que se vean en el
escenario.
Opciones de bloques
Para definir el comportamiento de los objetos del proyecto se utilizan bloques que se usan con una sintaxis similar a la del lenguaje
natural para interconectarlos. Los bloques pueden ser elegidos desde el área de opciones de bloques. Dependiendo del tipo de bloque
que se seleccione, saldrán colecciones diferentes. Como se puede observar, los bloques están agrupados en varios tipos: Movimiento,
Apariencia, Control, Sonido, etc y cada tipo está representado por un color, para que sea más fácil de identificar.
Área de codificación
En esta imagen se puede observar que al seleccionar uno de los objetos, en este caso:"Chica" se obtiene la siguiente información con
sus opciones:
Anteriormente se puede visualizar en "Administración de escenario y de objetos" que a la izquierda, haciendo clic, se selecciona el
escenario, al hacerlo, se pueden visualizar bloques de codificación diferentes a los del objeto anteriormente seleccionado:
Esto es solo una breve introducción de lo que se puede encontrar en Scratch, su potencial es para ser explorado.
Animar acciones
Cambio de fondos
Nombre del Sprite: Cambio de fondos
Tipo: Animación
Problema: Se requiere cambiar el
fondo porque se tienen varias escenas
o niveles.
Contexto: En narraciones o juegos
con varios niveles.
Solución: Enviar un mensaje para
cambiar a un fondo específico.
Ejemplos:
cambio de fondos.sb
Sprites relacionados: Caminante y
cambio de fondos
Cómo se implementa en scratch:
Ejemplo de fondos
Los bloques que se usan en
el Escenario
Caminante y cambio de
Fondos
Nombre del Sprite: Caminante y
cambio de Fondos
Tipo: Animación
Problema: Se quiere crear una
animación donde un personaje se vea
caminando por diferentes escenas.
Contexto: En narraciones.
Solución: Utilizar la animación del
caminante, pero cuando toque el
borde, debe volver al punto inicial y
cambiar el fondo.
Ejemplos:
caminante_animacion.sb
Sprites relacionados: Animar
acciones resumido y Cambio de
Fondos
Cómo se implementa en scratch:
Ejemplo de interacción:
Los bloques que se usan en el objeto:
Obstáculo
Nombre del Sprite: Obstáculo
Tipo: Interacción
Problema: Se necesita crear
obstáculos para que una figura no
pueda pasar cuando se mueve con las
flechas del teclado
Contexto: En juegos que tengan
obstáculos como laberintos.
Solución: Crear los obstáculos de un
solo color. Detectar cuando se toque
una flecha del teclado. Si está tocando
el color, entonces no permite
desplazarse.
Ejemplos:
Obstáculo.sb
Sprites relacionados: Mover con las
flechas del teclado y dejar
rastro, Detectar lo que se toca
Cómo se implementa en scratch:
Atraer
Nombre del Sprite: Atraer
Tipo: Interacción
Problema: Se requiere ubicar una
figura en un punto exacto.
Contexto: En juegos donde se tenga
que mover una figura con el ratón y
ubicarla en un lugar exacto.
Solución: Hacer que la figura se
mueva con el ratón, cuando se suelte,
si está tocando la figura donde se
debe ubicar, que se atraiga.
Ejemplos:
Atraer.sb
Sprites relacionados: Desplazar con
ratón, Detectar lo que se toca
Cómo se implementa en scratch:
Al inicio el objeto está Se mueve el objeto con el El objeto es atraído por la
alejado de la sombra cursor del mouse hasta que sombra y se ubica en el
toque la sombra mismo lugar
A esta distancia, el objeto ya se puede atraer El objeto es atraído por la sombra y se ubica en
el mismo lugar
Bloques en el objeto cangrejo
Ejemplos de interacción
Bloques en el objeto chica. (Al inicio siempre se borra la lista)
En cada uno de los objetos, por ejemplo, el tiburón, se incluyen estos bloques:
Bloques utilizados
Ubicar al azar
Nombre del Sprite: Ubicar al azar
Tipo: Variables
Problema: Se requiere ubicar un
objeto en un lugar al azar, cuando un
evento ocurre
Contexto: En juegos que se requiera
reconocer figuras el componente de
azar agrega una dificultad adicional.
Solución: Usar un bloque para
generar un numero al azar en un
rango y definir los rangos en las
coordenadas X y Y donde se podría
ubicar. Los valores aleatorios ubican
inmediatamente al objeto con los
bloques “ir a xy” o “fijar x/y a”
Ejemplos:
UbicacionAlAzar.sb
Sprites relacionados: Ninguno.
Cómo se implementa en scratch: