Scratch es un lenguaje de programación creado por el MIT y que se basa en una interfaz visual por bloques, de forma que facilita muchísimo la programación de niños y gente sin conocimientos. Está recomendado para edades de 8 a 16 años.
Todo esto está soportado por la Scratch Foundation, organización sin ánimo de lucro cuya misión es:
Nuestra misión es brindar a todos los niños, de todos los orígenes, oportunidades para imaginar, crear y colaborar, para que puedan dar forma al mundo del mañana.
Pero a los importante, qué se puede hacer con Scratch.
Para qué sirve
Muchos usos , para esta programación de bloques.
Hacer juegos y animaciones
Es uno de los principales usos de este lenguaje. Crear animaciones y juegos que son compartidos en su plataforma y a través de los cuáles puedes seguir aprendiendo a programar.
Enseñar programación
Desde que se se empezó a utilizar en Reino Unido para enseñar a programar, su ascenso ha sido imparable y hoy en día es la forma preferida por padres y educadores para empezar a enseñar a programar a los niños.
Se supone que los niños que han aprendido Scratch tienen más facilidades en ciertas áreas matemáticas. me gustaría encontrar papers que hablen de esto y de la correlación entre aprender a usar Scratch y aprende a programar en otros lenguajes. Si conoces alguno, por favor, déjalo en comentarios.
Programar Arduino
Se han creado diferentes IDEs y software basado en Scratch para programar con Arduino. Al igual que en los casos anteriores la ide a es simplificar el trabajo de programación
Programar LEGO Boost / EV3 Mindstorm
Si tienes un kit de robótica de LEGO puedes añadir bloques adicionales a Scratch en la plataforma oficial para controlar y programar tu robot.
En la APP de LEGO Boost ya encontramos programación en bloques basada en Scratch
Otros
He visto a gente utilizándolo en usos dispares y que no tienen nada que ver con los usos habituales que siempre imaginemos. Así que deja volar tu imaginación y saca todo el provecho que puedas.
¿Podemos controlar dispositivos IoT? ¿Raspberrys? ¿Domótica? ¿Inteligencia Artificial y machine learning?
Hay que investigar y aprender. Como siempre.
Para qué lo uso
Pues empiezo a utilizarlo ahora para 2 cosas.
Por un lado mi hija me ha pedido que hagamos videojuegos. Hemos anotado en una libreta lo que queremos que haga y veo Scratch la herramienta perfecta para que pueda dar vida a esos juegos.
No lo hago con la intención de que aprenda a programar, que no lo veo e momento necesario, sino como una herramienta para hacer lo que se ha propuesto.
Por otro lado, tenemos el LEGO Boost y queremos darle más usos de los montajes que vienen por defecto. Y estamos trabajando en ello.
De momento no lo utilizo para nada más. Quiero probar el Scratch para Arduino, pero no creo que yo lo use. No sé mis hijas.
No tengo claro que éste lenguaje sea el correcto para aprender a programar. Ni creo que se tenga que adentrar a los niños demasiado pronto si no es que están realmente interesados.
Scratch Jr o Scractch Junior
Es una versión de Scratch, más simple, con menos bloques, y con el interfaz y los gráficos pensados para niños pequeños. Está recomendada para niños de entre 5 y 7 años.
Se trata de una aplicación par iOS o para Android que podrás usar en smartphones o tablets.
Puedes ver más sobre Scratch Jr o Junior en su web Oficial
Descargar e instalar Scracth
Puedes descargar la aplicación para Windows, Mac y Android, pero dejaron de dar soporte para Linux :( y es algo que me entristece mucho.
He buscado alternativas y si eres usuario de Linux (yo uso Ubuntu) te cuento más en otro post.
Si no te apetece instalarlo, sólo quieres echar un vistazo puede usarlo navegando hasta la web. Y utilizar la plataforma online. Todo es gratis.
La ventaja de las aplicaciones frente al modo online es que podemos eguir utilizando la aplicación sin necesidad e tener que estar conectados a Internet, y esto, muchas veces se agradece.
Comunidad
Además de lenguaje Scratch define a toda la comunidad que utiliza este lenguaje. Encontramos gran cantidad de información en formato de tutoriales paso a paso, estudios, papers y sobre todo unos foros dónde poder preguntar nuestras dudas y relacionarnos con más gente.
Todo es abierto en Scratch, así que cuando publiques un proyecto todo el mundopodrá ver ese código y aprender de él. Así mismo puedes explorar proyectos para averiguar cómo se hace algo que desconoces.