Scratch

Scratch
Información sobre la plantilla
Parte de la familia Lenguaje de programación.
Scratch.png
CreadorMichael Resnick

Scratch es un lenguaje de programación que facilita crear historias interactivas, juegos y animaciones y compartir sus creaciones con otras personas en la Web. Permite a los principiantes o personas sin sentido de la programación, obtener resultados sin tener que aprender a escribir de manera sintácticamente correcta primero. Scratch está escrito en Squeak (una implementación libre de Smalltalk-80), a partir de la versión 2.0 el código es reescrito en actionscript (Adobe Flash). Es un entorno de programación que facilita el aprendizaje autónomo.

Lanzamiento

Scratch es un entorno de programación de computadores desarrollado por un grupo de investigadores del Lifelong Kindergarten del Laboratorio de Medios del MIT, bajo la dirección y liderazgo del Dr. Michael Resnick, apareció por primera vez en el verano de 2007. Aunque este es un proyecto de código abierto, su desarrollo es cerrado pero el código fuente se ofrece de manera libre y gratuita. Este entorno aprovecha los avances en diseño de interfaces para hacer que la programación sea más atractiva y accesible para todo aquel que se enfrente por primera vez a aprender a programar. Según sus creadores, fue diseñado como medio de expresión para ayudar a niños y jóvenes a expresar sus ideas de forma creativa, al tiempo que desarrollan habilidades de pensamiento lógico y de aprendizaje del Siglo XXI.

A partir del 9 de mayo de 2013, se dio un cambio radical en el sitio Web de Scratch, que desde esa fecha, despliega la versión 2.0 que funciona completamente en línea. Con esta nueva versión se pueden crear, editar y ver los proyectos directamente en un navegador Web, sin tener que descargar e instalar ningún programa en la computadora. También está disponible una versión descargable de Scratch 2.0.

Esta versión ofrece nuevas posibilidades como implementar la estructura recursiva y crear funciones que admiten parámetros. Además, conserva casi la totalidad de las funciones de la versión 1.4, pues están presentes los mismos elementos, solo que con diferente ubicación.

Características

Programando con Scratch, los estudiantes pueden crear historias interactivas, juegos, animaciones, música, producciones artísticas y compartir sus creaciones con otras personas a través del sitio Web de la herramienta (http://scratch.mit.edu/). Entre las características de este entorno que tienen mayor relevancia en procesos educativos para introducir a los estudiantes en programación, tenemos:

  • Tanto el conjunto de instrucciones, como la interfaz, están disponibles en varios idiomas, entre ellos español.
  • La interfaz gráfica permite crear y utilizar un escenario con múltiples fondos y tantos objetos móviles programables (sprites) como se quiera; cada uno de ellos con sus respectivos disfraces.
  • En lugar de escribir instrucciones (código), permite programar con el ratón (mouse), arrastrando bloques autoencajables y soltándolos en el área de programas. Estos se comportan como piezas de Lego o de un rompecabezas, pero solo encajan si son sintácticamente correctos.
  • Posibilita explorar principios básicos de programación sin las complicaciones de sintaxis que tienen otros lenguajes. Esto permite al estudiante centrarse en solucionar problemas en lugar de hacerlo en ubicar comas y corchetes.
  • Los bloques autoencajables están categorizados por colores de acuerdo con su funcionalidad (Azul=Movimiento; Violeta=Apariencia; Fuscia=Sonido; Verde=Lápiz; Naranja=Control; Azul claro=Sensores; Verde claro=Números; Rojo=variables). Este código visual también ayuda a los estudiantes.
  • Los modos de diseño y ejecución del ambiente de programación son simultáneos, lo que permite que los cambios realizados a un programa en ejecución se reflejen inmediatamente en el comportamiento del objeto móvil programable (sprite).
  • Ayuda a los estudiantes a pensar algorítmicamente y a aprender a abordar problemas metódicamente.
  • Ofrece a los estudiantes oportunidades para: improvisar, someter a prueba sus ideas, ensayar, corregir errores y superar sus propias expectativas; todo esto, en un dialogo permanente con la computadora pero en el que el estudiante está en control, situación esta que activa procesos metacognitivos.
  • Tiene un bajo umbral de inicio y desde la primera clase los estudiantes pueden realizar pequeñas actividades que los mantienen motivados e interesados.
  • Tiene un umbral alto de complejidad. Esto posibilita que las actividades y proyectos sean tan complejos como la creatividad de los estudiantes lo demande.
  • Tiene amplias posibilidades, característica ésta particularmente importante para los docentes ya que pueden plantear proyectos de integración que involucren contenidos de diversas asignaturas.
  • Permite a los estudiantes ganar comprensión sobre conceptos matemáticos como expresiones Booleanas, variables, coordenadas y números aleatorios.
  • A medida que los estudiantes crean programas, aprenden conceptos fundamentales de computación tales como, control de flujo, iteración (repetición o ciclos), condicionales, procedimientos, hilos múltiples y eventos.
  • Permite controlar y mezclar diferentes medios (gráficas, texto, música y sonido).
  • Facilita la manipulación de imágenes mediante filtros programados.
  • Favorece el intercambio entre usuarios de objetos y sus programas, por lo tanto, estimula el aprendizaje colaborativo.
  • Con solo presionar el botón ¡Compartir!, el proyecto queda publicado en la página Web de Scratch.
  • Este programa está basado en bloques gráficos y la interfaz que tiene es muy sencilla e intuitiva.
  • Tiene un entorno colaborativo mediante el cual se pueden compartir proyectos, scripts y personajes en la web.
  • El trabajo en Scratch se realiza mediante la unión de bloques que pueden ser eventos, movimientos de gráficos y sonidos.
  • Los programas pueden ser ejecutados directamente sobre el navegador de Internet.

Ventajas de Scratch

  • Las aplicaciones Web 2.0 posibilitan una interacción social nunca antes vista, pero requieren millones de líneas de código para hacerla realidad. Las computadoras son omnipresentes en la sociedad contemporánea, por lo tanto, no es suficiente saber utilizar las herramientas básicas de estos sino que cada vez se hace más necesario tener conocimientos de programación que permitan a las personas comprender cómo funcionan las máquinas y los sistemas que tiene a su alrededor.
  • En este contexto, es indudable que herramientas como Scratch contribuyen efectivamente a preparar a los estudiantes desde la primaria, para que puedan insertarse activamente al mundo altamente programado que los espera. Pero va más allá; Scratch promueve el desarrollo de algunas habilidades y capacidades intelectuales de orden superior que, en el nivel escolar, son responsabilidad de cualquier sistema educativo de calidad.
  • La programación de computadores posibilita no solo activar una amplia variedad de estilos de aprendizaje sino desarrollar pensamiento algorítmico. Además, compromete a los estudiantes en considerar varios aspectos importantes para solucionar problemas: decidir sobre la naturaleza del problema, seleccionar una representación que ayude a resolverlo y, monitorear sus propios pensamientos (metacognición) y estrategias de solución utilizadas. Incluso, compromete a los jóvenes en la búsqueda de soluciones innovadoras a problemas inesperados; no se trata solamente de aprender a solucionar problemas de manera predefinida, sino estar preparado para generar nuevas soluciones a medida que se presentan los problemas.
  • Otro conjunto de habilidades que se pueden desarrollar con la programación, es el identificado por el Consorcio de Habilidades Indispensables para el Siglo XXl, habilidades de aprendizaje que serán fundamentales para el éxito de los estudiantes en el futuro próximo: pensar creativamente, comunicar claramente, analizar sistemáticamente, colaborar efectivamente, diseñar iterativamente y aprender continuamente.
  • Es un programa gratuito, de software libre.
  • Es perfecto para enseñar y aprender a programar.
  • Está disponible para varios sistemas operativos, Windows, Mac y Linux.
  • Permite compartir los proyectos a través de Internet, pudiendo ser descargados y utilizados por otras personas.
  • Es multilenguaje.

Desventajas

Hasta la versión 1.4 de este entorno encontramos que no soporta:

  • métodos, que permitan pasar el control de la ejecución de una secuencia de bloques a otra;
  • parámetros, que permitan influenciar el comportamiento de los métodos;
  • valores de retorno, que permitan a una secuencia de bloques “devolver” información a otra;
  • herencia y polimorfismo, que permitan la existencia de relaciones entre estructuras de datos.

Por supuesto todas estas fueron solucionadas en la versión 2.0.

Scratch para niños con Necesidades Educativas Especiales (NEE)

  • Discapacidad intelectual: Scratch plantea un modo diferente de enseñanza/aprendizaje, donde el alumno es protagonista, necesita pensar, puede plantear preguntas y soluciones a esas preguntas. El aprendizaje es activo y constructivo.
  • Autismo y Síndrome Asperger: en uno de los foros de Scratch dice como inmediatamente comprobó la irresistible conexión entre estudiantes con espectro autista y la programación. Aunque se piensa que la programación es un acto solitario, puede ser para estos estudiantes la primera experiencia social y puede servir como un plan potencial y viable de carrera para ellos. Los estudiantes con Síndrome Asperger y espectro autista con alto funcionamiento, encuentran una zona de confort e interés que no habían descubierto antes. Estos estudiantes pasan de ser invisibles a ser reconocidos a través de su trabajo que los transforma en superestrellas creadores de juegos. Estos jóvenes descubren un nuevo medio que captura su interés de un modo tan absorbente que fascina verlo.
  • Discapacidad motriz: El proceso de adaptar la tecnología mediante Rampas Digitales es lento y sólo podemos considerarlo acabado cuando observemos y valoremos cómo lo utiliza el alumno y creamos que hemos conseguido lo que deseábamos. Durante todo este tiempo, nuestra complicidad con el ordenador transcurre en una atmósfera entre amigable y hostil. Cuando la tarea se hace tediosa, surge la tentación de abandonarla pero, si continuamos, podemos llegar a realizar las adaptaciones necesarias para mejorar la autonomía del alumno. Es un continuo ensayo porque siempre hay algo que mejorar.

Referencias