miércoles, 24 de octubre de 2018

Primeros pasos

Bloques

En esta lección aprenderás los principales bloques del lenguaje de programación por bloques de Scratch.
  • Bloque de movimiento: grupo de instrucciones caracterizadas por el color azul obscuro. Te permitirá mover al objeto en x-y, girar tanto en sentido de reloj como sentido contrario, cambiar la dirección del objeto derecha-izquierda, arriba, abajo. Posicionar al objeto en el lugar deseado. Rebotar al objeto si se toca algún borde, etc.
  • Bloque de apariencia: grupo de instrucciones caracterizadas por el color morado. Te permitirá cambiar de disfraz al objeto, decir algún comentario, aplicar algún efecto digital a la imagen de disfraz, cambiar tamaño, mostrar, esconder, enviar al frente, enviar hacia atrás n capas.
  • Bloque de sonido: grupo de instrucciones caracterizadas por el color rosa. Te permitirá tocar algún sonido desde archivo, una nota musical en específico, cambiar el volumen, cambiar el tempo de la nota musical.
  • Bloque de lápiz: grupo de instrucciones caracterizadas por el color verde. Te permitirá dibujar en el escenario conforme se va moviendo el objeto, se puede cambiar el color, intensidad y tamaño del lápiz, así mismo se puede bajar, subir o sellar el lápiz.
  • Bloque de control: grupo de instrucciones caracterizadas por el color naranja. Este bloque de instrucciones tiene la opción de detectar eventos o acciones realizados por otros objetos y reaccionar a ellos. También permite detectar el teclado y reaccionar a alguna tecla presionada. Te permitirá crear ciclos iterativos y condicionales, dentro de los cuales se realizarán instrucciones de otros bloques. Ejecutar instrucciones al iniciar un programa o animación, presionando la Bandera Verde y detener el programa o Todo.
  • Bloque de sensores: grupo de instrucciones caracterizadas por el color azul claro. Te permitirá detectar si el objeto está tocando algún color, puede detectar alguna tecla presionada del teclado, leer las posiciones x-y del ratón, detectar la distancia al apuntador del ratón. En este grupo de instrucciones se obtienen los valores de los dispositivos externos o kits robóticos (acciones para robots). Podrás saber si el volumen esta fuerte. Se puede hacer una pregunta y leer el valor tecleado para almacenarlo en una variable.
  • Bloque de operadores: grupo de instrucciones caracterizadas por el color verde. Te permitirá realizar operaciones lógicas como matemáticas básicas. Entre las operaciones lógicas encontramos and, or y not. Y operaciones matemáticas como suma, resta, multiplicación, división, raíz cuadrada, operaciones logarítmicas y trigonométricas básicas, mayor, menor e igual.
  • Bloque de variables: grupo de instrucciones caracterizadas por el color rojo. Podrás crear variables, las cuales solo pueden almacenar un valor y listas que son variables que almacenan un conjunto de variables.

Pantalla de Scratch

Escenario de Scratch

Sobre la izquierda tenemos el escenario o lugar donde podemos ver el resultado de nuestro programa. En este ejemplo el gato es un objetivo sobre el cual podemos trabajar, se trata en realidad del logo de Scratch que aparece por defecto.
Pero no hay limitaciones en cuanto a objetos a utilizar, la misma aplicación cuenta con una galería donde elegirlos e incluso se pueden crear a partir de fotos, subir o editar (pintar, modificar) en el mismo Scratch. También podemos trabajar con distintos escenarios al mismo tiempo y agregarles fondos personalizados a cada uno de ellos.
Escenario de Scratch

Bloques de Programación

En la parte central podemos ver la paleta de bloques que podemos utilizar para nuestro programa, se dividen en diferentes categorías y colores para poder identificarlos mejor. También hay otras dos pestañas con más opciones que permiten trabajar con sonidos y disfraces, estos son los diseños o las distintas formas que un mismo objeto puede tener.
Por ejemplo, el gato es un objeto que por defecto tiene dos disfraces… la diferencia entre ellos es la posición de sus patas que permiten generar un efecto de movimiento si le ordenamos caminar.
Bloques de Scratch

Área de programación

Por último, sobre la derecha veremos el área de trabajo o programación donde los bloques se deben colocar de forma ordenada para crear el programa. Observa la forma anidada de puzle que tiene la programación. Es importante no dejar bloques sueltos ya que llevan a confusión y/o errores.
Programación de Scratch

miércoles, 17 de octubre de 2018

¿Cómo empiezo a utilizar Scratch?

Para empezar a utilizar Scratch tan sólo tendrás que elegir entre una de las dos modalidades del programa:

  • Ejecutarlo en su versión online a través de un navegador desde la página web oficial. Si eliges la modalidad online es muy recomendable registrarse para poder guardar los proyectos que crees y tenerlos siempre a tu disposición.
  • Descarga e instala Scratch en su versión offline, para ejecutarlo sin necesidad de navegador ni de conexión a Internet.
  • Tanto la versión online como la offline son multiplataforma y están pensadas para ejecutarse en sistemas Windows, Mac OS X y Linux. 
  • Las diferencias entre una y otra son inexistentes en cuanto a la programación, aunque si que nos gusta destacar como principal característica la opción de compartir proyectos o utilizar la mochila de objetos en la versión online.

Scratch online vs. offline

Curso básico para empezar con Scratch

En este curso online de iniciación a la programación aprenderás a utilizar la herramienta de Scratch para programar diferentes tipos de videojuegos y animaciones mediante el lenguaje de programación por bloques de Scratch.
Si ya conoces la herramienta te recomendamos que accedas a los siguientes tutoriales de esta misma plataforma. 

Videojuego sencillo programado con Scratch
Videojuego sencillo programado con Scratch

VENTAJAS DE SCRATCH

  1. Permite el desarrollo de los procesos de pensamientos y habilidades mentales en los educados.                
  2. Es un programa gratuito y de software libre.                                                                                             
  3. Es perfecto para introducirse en la programación.                                                                               
  4. Está disponible para varios sistemas operativos.                                                                                        
  5. Permite compartir los proyectos a través del web, se pueden descargar y utilizar. Pudiendo ser descargados y utilizados por otras personas.                                                                                              
  6. Es multilenguaje                                                                                                                                 
  7. Educativamente hablando, los beneficios son una gran cantidad pero se podría destacar el desarrollo del pensamiento lógico en el alumnado, fomenta la creatividad, mejora la habilidad de comprensión de los niños, facilita el pensamiento sistémico y, en general, mejora el rendimiento escolar.                                                                                                                            

miércoles, 10 de octubre de 2018

Derivados

  • La versión actual tiene opciones limitadas de archivos; una característica experimental de extensión que permite la interacción entre Scratch 2.0 y otros programas. El protocolo de extensión permite la interfaz con placas de hardware como Lego Mindstorms​ o Arduino. Además, Scratch 2 solo admite vectores unidimensionales, conocidas como "listas". A partir de la versión 1.4 se admiten variables de puntos flotantes y cadenas de punto flotante, pero con capacidad limitada de manipulación de cadenas. Existe un fuerte contraste entre las poderosas funciones multimedia y el estilo de programación multihilo y el limitado alcance del lenguaje de programación Scratch. El 6 de mayo de 2013, Scratch cerró durante tres días para actualizar a Scratch 2.0.
  • Se han creado una serie de derivados Scratch​ denominados Scratch Modifications (Modificaciones de Scratch), utilizando el código fuente de Scratch versión 1.4. Son una variante de Scratch que normalmente incluyen algunos bloques adicionales​.
  • En julio de 2014, fue lanzado un programa llamado Scratch Jr para iPad. Aunque fué muy inspirado por Scratch y co-dirigido por Mitch Resnick, el creador original de Scratch, es sin embargo una reescritura completa diseñada para niños más pequeños.
  • El código fuente de Scratch y sus derivados se basan en Squeak, que a su vez se basa en Smalltalk-80. La versión 2 de Scratch está implementada en ActionScript, con un intérprete experimental basado en JavaScript siendo desarrollado en paralelo.
  • Catrobat es un lenguaje de programación visual para teléfonos inteligentes y tabletas inspirado en Scratch. Pocket Code es una aplicación con la que se puede crear, descargar y cargar programas creados en Catrobat. Catrobat y Pocket Code se publican bajo licencias de código abierto.

Comunidad en línea

El lema de la comunidad en línea de Scratch "Imagina, Programa, Comparte" indica que el compartir y los aspectos sociales de la creatividad son partes importantes de la filosofía detrás de Scratch.​ Algunos miembros influyentes de la comunidad en línea de Scratch hicieron grandes progresos personales en métodos innovadores con la programación de scratch.
Los proyectos Scratch no se ven como "cajas negras", sino como objetos a remezclar para hacer nuevos proyectos. Los proyectos se pueden cargar directamente desde el entorno de desarrollo al sitio web de Scratch y cualquier miembro de la comunidad puede descargar su código fuente completo para estudiarlo o remixarlo en nuevos proyectos.​ Los miembros también pueden crear proyectos de estudio, comentar, etiquetar, favoritos y "amar" proyectos de otros, seguir a otros miembros para ver sus proyectos y actividades y compartir ideas. El rango de proyectos van desde juegos animaciones hasta herramientas prácticas. No se permiten salas de chat. Todos los proyectos del sitio web se comparten bajo una licencia de Creative Commons, pueden ser reproducidos en un navegador web con Flash Player.
El sitio web recibe más de 125 millones de páginas vistas, 12 561 189 miembros registrados y más de 15 700 000 proyectos.
El sitio web establece con frecuencia desafíos "Scratch Design Studio" para fomentar la creación y el intercambio, proporcionándole a los usuarios un concepto básico de diseño. Hay páginas de inicio personalizadas para México e Israel que muestran contenido local en algunas secciones de la página principal. Scratch ha participado en varias horas de Código. Esta comunidad intercambia recursos, coordina encuentros grupales y permite a los educadores conectarse entre sí.
Scratch ofrece muchas maneras diferentes de hacer que su proyecto sea por estudios, un foro, etiquetas, etc.

Comunidad de usuarios

  • Scratch se utiliza en muchos entornos diferentes: escuelas,​ museos,​ bibliotecas,​ centros comunitarios y hogares. Sus usuarios son en su mayoría niños de edades comprendidas entre 9-16 años.​ Scratch también se utiliza en algunas clases de introducción de la informática (incluyendo la clase de informática introductoria de Harvard).
  • Hay un denominado "Día de Scratch" anual declarado en mayo de cada año. Los miembros de la comunidad se les anima a realizar un evento, grande o pequeño, en o cerca de ese día, que celebra Scratch. Estos eventos se llevan a cabo en todo el mundo, y se puede encontrar una lista en el sitio web del Día de Scratch.
  • A través de los archivos de localización descargados con Scratch, se puede cambiar su idioma de interfaz a un idioma de elección ya que Scratch se utiliza en diferentes partes del mundo.
  • El Centro de la Juventud Talentosa (CTY) de la Universidad Johns Hopkins ofrece un curso en línea sobre la programación Scratch para los estudiantes de grado 6 y superior a través del programa CTY Online.​
  • Se hicieron estudios empíricos de varias características y fueron descartados los que interfirieron con el aprendizaje intuitivo, mientras que fueron guardados los que animaron a principiantes y le hicieron fácil para que exploren y aprendan. Algunos de los resultados son sorprendentes, haciendo Scratch bastante diferente de otros lenguajes de enseñanza (como BASIC, Logo, o Alice).

viernes, 5 de octubre de 2018

Educativo

  • Scratch se volvió popular en Reino Unido a través de los Code Clubs. Estos empezaron a usar Scratch como lenguaje introductorio por su relativa facilidad para desarrollar programas interesantes, y porque las habilidades adquiridas mediante Scratch se pueden aplicar a otros lenguajes básicos de programación como Python y Java.
  • Scratch no sirve solo para la creación de programas. Puesto que proporciona un montón de componentes visuales, los programadores pueden crear historias animadas o minivideojuegos. Los estudiantes que quieren especializarse en matemáticas que se orienta principalmente a la geometría. La flexibilidad que ofrece Scratch permite a los docentes crear lecciones conceptuales muy visuales, puesto que es una poderosa herramienta para crear animaciones que ayudan a visualizar conceptos difíciles como podrían ser la mitosis celular, el ciclo del agua, el Termómetro de Galileo o un experimento sobre la Ley de elasticidad de Hook. En el ámbito de las ciencias sociales, los docentes pueden crear concursos, juegos y tutoriales que estimulen la mente e interactúen con el estudiante.​ El uso de Scratch permite a las personas jóvenes a entender la lógica básica de la programación, y colaborar y construir proyectos creativamente.​ Scratch también permite a los estudiantes desarrollar proyectos con carácter educativo y a la vez con interés personal para ellos, lo que les proporciona una herramienta práctica para auto expresarse después de aprender a usarlo.
  • Para trabajar con Scratch, hay dos formas de hacerlo: online y offline.

Interfaz de usuario

  • De izquierda a derecha, en la zona superior izquierda de la pantalla hay un escenario, que muestra los resultados del proyecto actual y todas la miniaturas de los sprites listadas en la zona inferior. 
  • El escenario usa coordenadas x e y, siendo el punto (0,0) el centro del mismo.
  • Por un lado, los usuarios pueden dibujar sus propio objetos manualmente con el propio editor de Scratch.​ 
  • Es posible también elegir un objeto desde la biblioteca de objetos de ejemplo que contiene Scratch, de creaciones pasadas del usuarios, desde una imagen, vía webcam o desde un clip art.
  • Una vez seleccionado un objeto en la parte inferior izquierda de la pantalla, se le pueden aplicar bloques de instrucciones simplemente arrastrándolos desde la paleta de bloques hacia el área derecha de la pantalla, que contiene todos los pasos asociados con el objeto seleccionado. 
  • Bajo la pestaña "Programas" se listan todos los bloques de instrucciones disponibles en las siguientes categorías: Movimiento, Apariencia, Sonido, Lápiz, Datos, Eventos, Control, Sensores, Operadores y Más Bloques, como se ve en la tabla a continuación. 
  • Al lado de la pestaña Procesos, está la pestaña Disfraces, donde el usuario puede cambiar la apariencia del sprite con el fin de crear diversos efectos, incluyendo la animación.​ 
  • Y la última pestaña es la pestaña Sonidos, donde los usuarios insertan sonidos y música para un sprite. Además de la pestaña "Programas", hay dos pestañas adicionales: "Disfraces" y "Sonidos". 
  • En comparación con las versiones anteriores de Scratch, en la versión 2.0 las áreas se han reorganizado, ya que previamente la paleta de bloques estaba en la zona izquierda, el área de sprites seleccionada y el área de scripts asociada con un sprite seleccionado se encontraban en el centro de la pantalla, y el área del escenario con sprites en miniaturas estaban enlistadas abajo, en la zona derecha de la pantalla. 
  • Hay que tener en cuenta que los archivos generados con Scratch con bastantes elementos son muy pesados por lo que el programa puede no responder con rapidez, esto dependerá siempre del equipo con el que se está trabajando, las condiciones de la Red si estás trabajando en línea, etc.

miércoles, 3 de octubre de 2018

Origen de Scratch

  • En el ámbito de la ingeniería informática, scratching quiere decir reutilizar código, el cual puede ser usado de forma beneficiosa y efectiva para otros propósitos y fácilmente combinado, compartido y adaptado a nuevos escenarios, lo cual es una característica clave de Scratch. De esta forma, cualquier usuario puede descargarse y trabajar sobre proyectos públicos subidos y desarrollados por otros usuarios. También se reconoce a los participantes que construyeron y crearon el programa original. El nombre es un derivado de la técnica de turntablismscratching,​ es decir, mezclar sonidos, relacionando de este modo la facilidad de mezclar sonidos con la facilidad de mezclar proyectos creados con Scratch.

  • Scratch supuso un avance en la comprensión de la efectividad y el diseño innovador de las TIC para mejorar el aprendizaje en los centros escolares y otras modalidades de educación informal, y amplió las oportunidades de los jóvenes en general que gracias a Scratch pudieron entrar en el mundo del diseño y desarrollo de aplicaciones gracias a las nuevas tecnologías. Scratch fue desarrollado de forma iterativa basándose en la interacción permanente con los jóvenes y el personal en Computer Clubhouses.​ 

  • La primera versión de Scratch, disponible solo en versión de escritorio, fue desarrollada y publicada en 2003 conjuntamente por el MIT Media Lab, dirigido por Mitchel Resnick, y la compañía Playful Invention Company , con sede en Montreal y cofundada por él junto a Brian Silverman y Paula Bonta. El propósito fue ayudar a la gente joven, principalmente con edades a partir de los ocho años, a aprender a programar.

  • Scratch 2 se publicó en mayo de 2013. A partir de esta versión, se permite definir "bloques personalizados" dentros de los proyectos.​

viernes, 28 de septiembre de 2018

Descubre Scratch

  • Scratch es un lenguaje de programación visual desarrollado por el Grupo Lifelong Kindergarten del MIT Media Lab.​ 
  • Su principal característica consiste en que permite el desarrollo de habilidades mentales mediante el aprendizaje de la programación sin tener conocimientos profundos sobre el código. Sus características ligadas al fácil entendimiento del pensamiento computacional han hecho que sea muy difundido en la educación de niños, adolescentes y adultos.
  • Este lenguaje de programación se utiliza con fines didácticos para crear animaciones de forma sencilla y servir como introducción contenido de programación más avanzado.
  • Puede usarse para un gran número de propósitos educativos construccionistas y de entretenimiento, como lo son: proyectos de ciencias (incluyendo simulación y visualización de experimentos), conferencias grabadas con presentaciones animadas, historias animadas de las ciencias sociales, arte interactivo, música, entre otros.​ Se pueden ver los diferentes proyectos existentes en la web de Scratch, modificarlos e incluso probarlos sin llegar a guardar los cambios ya que no requiere ningún tipo de registro.
  • Scratch permite a los usuarios usar programación dirigida por eventos con múltiples objetos activos llamados sprites. Los sprites pueden pintarse como gráficos vectoriales o mapa de bits, desde la propia web de Scratch usando un simple editor que es parte del proyecto, o pueden también importarse desde fuentes externas incluyendo webcams. Desde 2013, Scratch 2 está disponible en línea y como aplicación de escritorio para Windows, OS X y Linux (requiere Adobe Air). El código fuente de Scratch 1.x se liberó bajo licencias GPLv2 y "Scratch Source Code License".