Articulo de referencia

Scratch (lenguaje de programación)

{{cite web|url=https://en.scratch-wiki.info/wiki/Scratch_30Jun03|title=Scratch 30Jun03|website=Scratch Wiki }} \n* {{Start date and age|2007|5|15|df=y}} (Scratch 1.0) {{cite web...

Página semiprotegida

Scratch es un lenguaje de programación visual de alto nivel , basado en bloques, y un sitio web dirigido principalmente a niños como herramienta educativa, con un público objetivo de entre 5 y 16 años. [ 11 ] [ 12 ] Los usuarios pueden crear proyectos en el sitio web utilizando una interfaz similar a la de bloques. Scratch fue concebido y diseñado gracias a subvenciones colaborativas de la National Science Foundation otorgadas a Mitchel Resnick y Yasmin Kafai . [ 13 ]

Scratch fue desarrollado por el MIT Media Lab y se ha traducido a más de 70 idiomas, [ 12 ] utilizándose en la mayor parte del mundo. Scratch se enseña y se utiliza en centros extraescolares, escuelas y universidades, así como en otras instituciones públicas de conocimiento. Al 15 de febrero de 2023, las estadísticas de la comunidad en el sitio web oficial del lenguaje muestran más de 123 millones de proyectos compartidos por más de 103 millones de usuarios y más de 95 millones de visitas mensuales al sitio web. [ 14 ] En total, se han creado más de 1150 millones de proyectos, y el sitio alcanzó su proyecto número mil millones el 12 de abril de 2024. [ 15 ]

Scratch toma su nombre de una técnica utilizada por los disc jockeys llamada " scratching ", en la que se sujetan discos de vinilo y se manipulan en un tocadiscos para producir diferentes efectos de sonido y música. Al igual que el scratching, el sitio web permite a los usuarios mezclar diferentes medios (incluidos gráficos, sonido y otros programas) de forma creativa mediante la creación y "remezcla" de proyectos, como videojuegos , animaciones , música y simulaciones . [ 16 ]

Scratch 3.0

Interfaz de usuario

Un programa para cambiar el fondo y hacer que un personaje hable.

La interfaz de Scratch se divide en tres secciones principales: un área de trabajo , una paleta de bloques y un área de codificación para colocar y organizar los bloques en scripts que se pueden ejecutar pulsando la bandera verde o haciendo clic en el código. Los usuarios también pueden crear sus propios bloques de código, que aparecerán en la sección "Mis bloques". [ 17 ] [ 18 ]

El área del escenario muestra los resultados (por ejemplo, animaciones , gráficos de tortuga , ya sea en tamaño pequeño o normal, con una opción de pantalla completa también disponible) y las miniaturas de todos los sprites se listan en el área inferior. El escenario utiliza coordenadas x e y , siendo 0,0 el centro del escenario. [ 19 ]

Con un sprite seleccionado en la parte inferior del área de preparación, se pueden aplicar bloques de código arrastrándolos desde la paleta de bloques al área de codificación. La pestaña Disfraces permite a los usuarios cambiar la apariencia del sprite con un editor de vectores y mapas de bits para crear diversos efectos, incluyendo animaciones. [ 19 ] La pestaña Sonidos permite adjuntar sonidos y música a un sprite. [ 20 ]

Al crear sprites y también fondos, los usuarios pueden dibujar sus propios sprites manualmente, [ 19 ] elegir un sprite de la biblioteca o cargar una imagen. [ 20 ]

La siguiente tabla muestra las categorías de los bloques de programación:

Edición sin conexión

Uno de los 4 scripts diferentes para el tutorial integrado de introducción.
Cuatro scripts diferentes para el tutorial integrado de introducción.
Un ejemplo codificado, usando el bloque de preguntas para el nombre del usuario, y luego respondiendo con él,
Un ejemplo codificado, usando el bloque de preguntas para el nombre del usuario, y luego respondiendo con él.

Existe un editor de escritorio sin conexión para Scratch 3.0 disponible para Microsoft Windows 10 y versiones posteriores en la Microsoft Store, macOS de Apple, ChromeOS, Android y, de forma no oficial, en Linux . Sin embargo, Scratch está colaborando con socios de código abierto para ofrecer compatibilidad con Linux en el futuro. [ 21 ] Esto permite crear y ejecutar programas de Scratch sin conexión. También se puede acceder a versiones anteriores del editor sin conexión.

Extensiones

En Scratch, las extensiones añaden bloques y funciones adicionales que se pueden usar en los proyectos. En Scratch 2.0, todas las extensiones se basaban en hardware y el lápiz era una categoría normal. En Scratch 3.0 se añadieron extensiones basadas en software, como las voces de texto a voz, junto con algunas extensiones nuevas basadas en hardware, como la micro:bit . Las extensiones se enumeran a continuación.

Un ejemplo de la página de extensiones de Scratch 3

Físico

  • LEGO Mindstorms EV3 : Controla los motores y recibe datos de los sensores del Lego Mindstorms EV3.
  • Makey Makey : utilice Makey Makey para controlar proyectos
  • LEGO Education WeDo 2.0 : controla motores y recibe datos de sensores del Lego WeDo.
  • micro:bit – Uso de un micro:bit para controlar proyectos
  • LEGO BOOST: Da vida a tus creaciones robóticas.
  • Go Direct Force & Acceleration – Siente la fuerza de tracción, el empuje, el movimiento y el giro.

Digital

Muchas de las extensiones digitales de Scratch 3.0 solían ser categorías de bloques regulares que se trasladaron a la sección de extensiones para reducir el desorden. Estas incluyen:

  • Música: Toca instrumentos digitales (batería, trompetas, violines, pianos y más). Anteriormente formaba parte de la categoría Sonido.
  • Bolígrafo: dibuja sobre el escenario con una variedad de grosores y colores. Anteriormente era una categoría de bloque normal.
  • Detección de vídeo: detecta el movimiento con la cámara. Anteriormente en la categoría de Detección.
  • Detección facial: detecta el movimiento con la cámara para crear disfraces y juegos que interactúan con el rostro del usuario. [ 22 ]

También se han añadido nuevas extensiones digitales en colaboración con empresas comerciales. Estas incluyen:

  • Conversión de texto a voz: transforma las palabras de un texto en voz, con la opción de seleccionar idiomas (variedad de voces proporcionadas por Amazon).
  • Traductor: utiliza Google Translate para traducir texto de un idioma a varios idiomas, incluidos árabe, chino, neerlandés, inglés, francés, griego, noruego y japonés.
  • Makey Makey: opciones para una mejor pulsación de teclas y para pulsar varias teclas en secuencia. Puedes añadir un bloque de unión si deseas un mayor control sobre la extensión.

Un artículo publicado en 2019 por la NYU argumenta e ilustra, para la codificación de música con Scratch, "que los bloques de música y sonido tal como están implementados actualmente en Scratch pueden limitar y frustrar la creación musical significativa para los niños, la base de usuarios principal de Scratch". [ 23 ]

Laboratorio de rascado

El Laboratorio Scratch [ 24 ] muestra experimentos del Equipo Scratch, cuyo objetivo es explorar si se pueden agregar nuevas funciones al sitio web completo en el futuro. Las funciones experimentales que se encuentran actualmente en desarrollo incluyen:

  • Sprites de vídeo: Rellena los sprites con vídeo en directo.
  • Texto animado: da vida a las palabras con colores, fuentes y animaciones.

Comunidad de usuarios

Un taller de programación Scratch

Scratch se utiliza en muchos entornos diferentes: escuelas, museos , bibliotecas , centros comunitarios y hogares. [ 25 ] [ 26 ] [ 27 ] Scratch está diseñado principalmente para usuarios de entre 8 y 16 años, pero lo utilizan personas de todas las edades y tiene una considerable base de usuarios adultos desde 2009. [ 12 ] [ 28 ] Este amplio alcance ha creado muchas comunidades circundantes, tanto físicas como digitales. [ 14 ] En abril de 2020, la clasificación Tiobe de los lenguajes de programación del mundo incluyó a Scratch entre los 20 primeros. Según Tiobe, hay 50 millones de proyectos escritos en Scratch, y cada mes se añade un millón de proyectos nuevos. [ 29 ]

Usuarios educativos

Scratch se utiliza como lenguaje de introducción porque la creación de programas interesantes es relativamente fácil, y las habilidades aprendidas se pueden aplicar a otros lenguajes de programación como Python y Java .

Scratch no se limita a la creación de juegos. Con los elementos visuales que proporciona, los programadores pueden crear animaciones, texto, historias, música, arte y mucho más. Ya existen numerosos programas que los estudiantes pueden usar para aprender temas de matemáticas, historia e incluso fotografía. Scratch permite a los profesores crear lecciones conceptuales y visuales, así como tareas de laboratorio de ciencias con animaciones que ayudan a visualizar conceptos difíciles. En las ciencias sociales, los instructores pueden crear cuestionarios, juegos y tutoriales con elementos interactivos. El uso de Scratch permite a los jóvenes comprender la lógica de la programación y cómo construir y colaborar de forma creativa. [ 30 ]

Scratch se enseña en más de 800 escuelas y 70 universidades de la organización DAV en India y en todo el mundo. [ 31 ] [ 32 ]

En la educación superior, Scratch se utiliza en la primera semana del curso introductorio de informática CS50 de la Universidad de Harvard . [ 33 ] [ 34 ]

Comunidad en línea

Un ejemplo de un juego creado con Scratch 2.0

Los usuarios de Scratch se denominan "Scratchers". Los Scratchers pueden compartir sus proyectos y recibir comentarios. Los proyectos se pueden subir directamente desde el entorno de desarrollo al sitio web de Scratch, y cualquier miembro de la comunidad puede ver y descargar el código fuente completo para estudiarlo o reutilizarlo en nuevos proyectos. [ 35 ] [ 36 ] Los Scratchers también pueden crear estudios de proyectos, comentar, marcar como favoritos y dar "me gusta" a los proyectos de otros, seguir a otros miembros para ver sus proyectos y actividad, y compartir ideas. Los proyectos abarcan desde juegos y animaciones hasta herramientas prácticas. Además, para fomentar la creación y el intercambio entre los usuarios, el sitio web organiza con frecuencia desafíos de "Scratch Design Studio".

Los educadores tienen su propia comunidad en línea llamada ScratchEd, desarrollada y respaldada por la Escuela de Posgrado en Educación de Harvard. En esta comunidad, los educadores de Scratch comparten historias, intercambian recursos y hacen preguntas. [ 37 ]

Estudios Scratch

Los usuarios de Scratch pueden subir sus proyectos a estudios donde otros usuarios de Scratch pueden subir los suyos para que otros los vean, comenten y remezclen. Un estudio generalmente consta de diferentes proyectos creados por usuarios de Scratch. Algunos estudios de Scratch son creados por usuarios para reunir todos sus proyectos en una sola biblioteca. Si eres el creador o el administrador, puedes invitar a usuarios a convertirse en curadores y puedes ascenderlos a administradores. Solo su creador o anfitrión puede eliminar el estudio. [ 38 ]

Sombra sobre rasguño
Un ejemplo de un juego creado con Scratch 3.0

Wiki de Scratch

La Wiki de Scratch es un recurso de soporte para Scratch y ofrece información sobre su sitio web, su historia y los fenómenos que lo rodean. Aunque cuenta con el apoyo del Equipo de Scratch (los desarrolladores de Scratch), está escrita principalmente por usuarios de Scratch (Scratchers) y se aloja de forma independiente del sitio web principal de Scratch. [ 39 ]

Roles

Los roles se muestran como una etiqueta debajo del nombre de usuario en las páginas de perfil y en las publicaciones del foro. Para prevenir el vandalismo , las cuentas nuevas tienen el rol de "Nuevo Scratcher", en lugar del rol habitual de "Scratcher". Se imponen algunas restricciones a las cuentas de Nuevo Scratcher, como la imposibilidad de usar datos en la nube y un período mínimo de espera de 30 segundos entre publicaciones de comentarios. Después de un tiempo de interacción y creación de proyectos, una cuenta podrá optar al rol de Scratcher. [ 40 ]

Los moderadores y desarrolladores oficiales de Scratch forman parte del "Equipo Scratch" y suelen tener un asterisco al final de su nombre de usuario. El sitio también ofrece cuentas especiales para que estudiantes y educadores utilicen Scratch en el aula.

Censura

En agosto de 2020, GreatFire anunció que el gobierno chino había bloqueado el acceso al sitio web Scratch. En ese momento, se estimaba que más de tres millones de personas en China lo utilizaban. [ 41 ] El medio citó el hecho de que Macao , Hong Kong y Taiwán figuraban como países en el sitio web. [ 41 ] [ 42 ]

Base de código

El código fuente del editor de proyectos en las tres versiones principales, así como la mayor parte del sitio web actual, se encuentra alojado públicamente en GitHub en varios repositorios . Scratch 3.0 está basado en JavaScript , 2.0 está programado en ActionScript , [ 4 ] y las versiones 1.x se basaban en Squeak, que a su vez se basa en Smalltalk -80. [ 43 ]

La versión 2.0 tenía un intérprete experimental basado en JavaScript que se estaba desarrollando en paralelo con la versión ActionScript. [ 44 ]

En la versión 3.0, los bloques de Scratch se implementan utilizando Blockly , una biblioteca de JavaScript desarrollada por Google para crear lenguajes de programación visual basados ​​en bloques . [ 45 ] [ 46 ]

Eventos

Los educadores de Scratch pueden reunirse en persona en encuentros de educadores de Scratch. En estos encuentros, los educadores de Scratch aprenden unos de otros y comparten ideas y estrategias que fomentan la creatividad computacional. [ 47 ]

Cada año, en mayo, se declara la "Semana de Scratch", antes conocida como "Día de Scratch". Se anima a los miembros de la comunidad a organizar un evento, grande o pequeño, en torno a esta fecha para celebrar Scratch. Estos eventos se celebran en todo el mundo y se puede consultar la lista en la página web del Día de Scratch. La Semana de Scratch es una serie dedicada a las actividades de Scratch en la página web de Scratch. [ 48 ]

Un ejemplo de los seis bloques de gatos en Scratch, mostrados en sus formas de gato como lo harían cada año el Día de los Inocentes.

Cada Día de los Inocentes , el equipo de Scratch gastará bromas a los usuarios y añadirá huevos de Pascua; un ejemplo de ello es que todos los bloques de eventos en los proyectos se convierten en versiones felinas de los mismos bloques.

Historia

A principios de la década de 2000, el grupo Lifelong Kindergarten (LLK) del MIT Media Lab estaba desarrollando lenguajes de programación visual dirigidos a niños. [ 49 ] En 2003, Mitchel Resnick , Yasmin Kafai y John Maeda recibieron una subvención de la National Science Foundation para el desarrollo de un nuevo entorno de programación para que los niños se expresaran con código. [ 13 ] El LLK, liderado por Mitchel Resnick, en asociación con el equipo de Yasmin Kafai en UCLA trabajó estrechamente con Computer Clubhouses en Boston y Los Ángeles para desarrollar Scratch, basando su diseño en las prácticas y la dinámica social de estos centros juveniles extraescolares. [ 13 ] Comenzó como un lenguaje de programación básico, sin categorías etiquetadas ni bandera verde. [ 50 ] Similar a AgentSheets [ 51 ] Scratch empleó conceptos de Programación Táctil, más tarde conocida como programación basada en bloques. Scratch fue creado con la intención de enseñar a los niños a programar. [ 50 ]

La filosofía de Scratch fomenta el intercambio, la reutilización y la combinación de código, como lo indica el lema del equipo: «Imagina, programa, comparte». [ 52 ] Los usuarios pueden crear sus propios proyectos o «remixar » el proyecto de otra persona. Los proyectos creados y remixados con Scratch están bajo la licencia Creative Commons Atribución-CompartirIgual . [ 53 ] Scratch automáticamente otorga crédito al usuario que creó el proyecto y programa original en la parte superior de la página del proyecto. [ 27 ]

Scratch se desarrolló a partir de la interacción continua con jóvenes y personal de los Computer Clubhouses. El uso de Scratch en los Computer Clubhouses sirvió de modelo para otros centros extraescolares, demostrando cómo los entornos de aprendizaje informales pueden apoyar el desarrollo de la competencia tecnológica. [ 54 ]

Scratch 2.0 se lanzó el 9 de mayo de 2013. [ 19 ] La actualización cambió la apariencia del sitio e incluyó un editor de proyectos en línea y un editor sin conexión. [ 55 ] Ahora se podían definir bloques personalizados dentro de los proyectos, junto con otras mejoras. [ 56 ] El editor sin conexión de Scratch 2.0 se podía descargar para Windows, Mac y Linux directamente desde el sitio web de Scratch, aunque posteriormente se eliminó el soporte para Linux. La versión móvil no oficial debía descargarse desde los foros de Scratch. [ 57 ] [ 58 ]

La página de inicio del sitio web Scratch

Scratch 3.0 fue anunciado por primera vez por el equipo de Scratch en 2016. Se lanzaron varias versiones alfa públicas entre ese año y enero de 2018, después de lo cual se lanzaron las versiones pre-beta "Preview". Una versión beta de Scratch 3.0 se lanzó el 1 de agosto de 2018. [ 59 ] para su uso en la mayoría de los navegadores; con la notable excepción de Internet Explorer . [ 60 ]

Scratch 3.0, la primera versión 3.x, se lanzó el 2 de enero de 2019. El 28 de junio de 2023, [ 61 ] el encabezado y los enlaces del sitio web de Scratch cambiaron de azul a morado, y se introdujeron nuevos colores de bloque de alto contraste opcionales, para que el sitio fuera más fácil de leer y usar para las personas daltónicas . [ 62 ]

En 2013, se fundó la Fundación Scratch (anteriormente Fundación Code-To-Learn), y el 11 de marzo de 2019, el equipo de Scratch se separó del MIT Media Lab y se trasladó a la Fundación Scratch. [ 63 ] El MIT Media Lab continúa colaborando estrechamente con la Fundación Scratch.

En 2025, Scratch introdujo las membresías de Scratch como un nivel de donación, que ofrecía beneficios. [ 64 ]

Fundación Scratch

La Fundación Scratch (anteriormente Fundación Code to Learn) es una empresa fundada en 2013 para poseer los derechos de Scratch y ScratchJr. El MIT Media Lab transfirió Scratch y ScratchJr a la Fundación Scratch en 2019. Su sitio web se puede encontrar aquí .

Tipos de archivo

En Scratch 1.4, el formato de archivo utilizado para almacenar proyectos era un archivo * .sb .

Un archivo * .sb se divide en cuatro secciones:

  • "header", este encabezado de 10 bytes contiene la cadena ASCII "ScratchV02" en versiones superiores a Scratch 1.2, y "ScratchV01" en Scratch 1.2 y versiones anteriores.
  • "infoSize" codifica la longitud de los infoObjects del proyecto. Un entero de 4 bytes, 32 bits, big-endian .
  • "infoObjects", una sección de datos en formato de diccionario. Contiene: "thumbnail", una miniatura de la etapa del proyecto; "author", el nombre de usuario del creador del proyecto; "comment", las notas del proyecto; "history", el registro de guardado y carga; "scratch-version", la versión de Scratch utilizada para guardar el archivo;
  • "Contenidos", una tabla de objetos con Stage como raíz. Todos los objetos del programa se almacenan aquí como referencias.

Scratch 2.0 utiliza el formato de archivo * .sb2 . Estos son esencialmente archivos zip que contienen un archivo .json , así como el contenido del proyecto Scratch, incluyendo sonidos (almacenados como .wav ) e imágenes (almacenadas como .png ). [ 65 ] Cada tipo de archivo, excluyendo project.json , se almacena como un número, comenzando en 0 y aumentando con cada archivo adicional. El archivo de imagen etiquetado como " 0.png " siempre es una imagen blanca de 480x360, pero " 0.wav " seguirá siendo el archivo no eliminado más antiguo.

La versión experimental ScratchX de Scratch utilizaba el formato de archivo .sbx . [ 66 ]

Scratch 3.0 utiliza el formato * .sb3 . Los archivos .sb3 son casi idénticos a los archivos .sb2.

Versiones anteriores

Aunque el sitio web principal de Scratch ahora solo ejecuta la versión actual (Scratch 3.0), los editores sin conexión para Scratch 2.0 (y la versión anterior Scratch 1.4) todavía están disponibles para descargar [ 67 ] y se pueden usar para crear y ejecutar juegos localmente. [ 68 ] También hay una versión sin conexión de Scratch 3.0.

Tecnología

El editor de Scratch 1.4 y versiones anteriores estaba escrito en Squeak , mientras que su visor de proyectos en línea estaba escrito en Java , y posteriormente se añadió un reproductor escrito en Adobe Flash . [ 43 ] Scratch 2.0 dependía de Adobe Flash para la versión en línea y de Adobe AIR para el editor sin conexión. Estos han caído en desuso y Adobe dejó de darles soporte a finales de 2020. [ 69 ] [ 70 ]

Scratch 2.0 cambió la forma en que se importaban los sonidos, por lo que muchos sonidos de Scratch 1.4 dejaron de funcionar. (El archivo del proyecto cambió de * .sb a * .sb2 ). [ 71 ]

Interfaz

Un script que permite que el personaje diga "¡Hola, mundo!" y luego detiene el script en Scratch 2.0.

En Scratch 2.0, el área de trabajo se encuentra a la izquierda, con la paleta de bloques de programación en el centro y el área de codificación a la derecha. Las extensiones se encuentran en la sección "Más bloques" de la paleta. [ 28 ]

La versión web de Scratch 2.0 introdujo el guardado automático de proyectos. [ 72 ] : 23

La paleta de bloques en Scratch 2.0 está compuesta por secciones independientes que no se pueden desplazar de una a otra; la siguiente tabla muestra las diferentes secciones:

Scratch 2.0 introdujo la mochila, que se puede usar para transferir scripts, sprites, disfraces y sonidos entre proyectos. [ 72 ] : 14–15

Características

Scratch utiliza programación orientada a eventos con múltiples objetos activos llamados sprites . [ 19 ] Los sprites se pueden dibujar, como gráficos vectoriales o de mapa de bits , desde cero en un editor simple que forma parte de Scratch, o se pueden importar desde fuentes externas. Scratch 3.0 solo admite matrices unidimensionales , conocidas como "listas", y admite escalares de punto flotante y cadenas, pero con una capacidad limitada de manipulación de cadenas. Existe un fuerte contraste entre las potentes funciones multimedia y el estilo de programación multihilo y el alcance bastante limitado del lenguaje de programación Scratch.

Características de Scratch 2.0

Scratch 2.0 no trata los procedimientos como estructuras de primera clase y tiene opciones limitadas de E/S de archivos con el Protocolo de Extensión de Scratch 2.0, una función de extensión experimental que permite la interacción entre Scratch 2.0 y otros programas. [ 73 ] El protocolo de extensión permite la interfaz con placas de hardware como Lego Mindstorms [ 74 ] o Arduino . [ 75 ] Scratch 2.0 también tiene las siguientes características:

  • Conmutación de bloques inteligentes
  • Menú de categorías de dos columnas
  • Orden inverso de los controles del proyecto
  • Escenario de exhibición en el lado izquierdo
  • Entradas de bloques cuadrados
  • Editor compacto
  • Colapsar las propiedades de los sprites
  • Temas de Scratch 2.0

¡Snap ! (Construye tus propios bloques)

Un lenguaje de programación visual más avanzado inspirado en Scratch es Snap !, que presenta procedimientos de primera clase (sus fundamentos matemáticos también se denominan cálculo lambda ), listas de primera clase (incluidas listas de listas) y sprites verdaderamente orientados a objetos de primera clase con herencia de prototipado y sprites anidados, que no forman parte de Scratch. [ 76 ] Snap ! (anteriormente "BYOB") fue desarrollado por Jens Mönig [ 77 ] [ 78 ] con documentación proporcionada por Brian Harvey [ 79 ] [ 80 ] de la Universidad de California, Berkeley y se ha utilizado para impartir el curso introductorio "The Beauty and Joy of Computing" en CS para estudiantes que no se especializan en CS. [ 81 ] Ambos fueron miembros del equipo de Scratch antes de diseñar "Snap ! ". [ 82 ] [ 28 ]

ScratchJr

En julio de 2014, se lanzó ScratchJr para iPad , y en 2016, ScratchJr para Android. Aunque está fuertemente inspirado en Scratch y fue codirigido por Mitch Resnick, se trata, no obstante, de una reescritura completa diseñada para niños más pequeños, dirigidos a edades comprendidas entre los 5 y los 7 años. [ 83 ]

Modificaciones realizadas por la comunidad

Debido a la naturaleza de código abierto de Scratch, la comunidad ha creado numerosas bifurcaciones y extensiones de navegador con el objetivo de mejorar o modificar la experiencia del usuario. ScratchTools y Scratch Addons son algunos ejemplos de extensiones de navegador de código abierto que añaden muchas mejoras y nuevas funciones al sitio web y al editor de Scratch. [ 84 ] [ 85 ]

TurboWarp es una bifurcación del editor Scratch 3.0 que compila Scratch a código JavaScript cuando se ejecuta un proyecto, lo que resulta en una mejora significativa del rendimiento general de los proyectos. [ 86 ] Además, hay muchas configuraciones técnicas y los mismos complementos que proporciona Scratch Addons. [ 87 ] TurboWarp también puede exportar proyectos a archivos HTML5 independientes , Bundle (macOS) y EXE . [ 88 ]

Los usuarios también pueden crear sus propias extensiones para Scratch 3.0 usando JavaScript. [ 89 ] Si bien la intención de Scratch 3.0 era permitir que los usuarios desarrollaran extensiones JavaScript no oficiales, se abandonó debido a los riesgos de moderación. Como resultado, el sitio oficial no permite agregar extensiones JavaScript, pero varias modificaciones de Scratch sí lo permiten.

Véase también

Notas

  1. Un proyecto de código abierto para Scratch en Linux , no creado por el equipo de Scratch.

Referencias

  1. "Scratch 30Jun03" . Wiki de Scratch .
  2. "Discusión:Cronología de Scratch – Wiki de Scratch" . Wiki de Scratch .
  3. 1 2 Lee, David (28 de diciembre de 2018). "Lo que necesitas saber sobre Scratch 3.0" . Computhink . Recuperado el 9 de febrero de 2024 .
  4. 1 2 Frang, Corey (28 de febrero de 2019). "Portando Scratch de Flash a JavaScript: rendimiento, interoperabilidad y extensiones" . bocoup . Recuperado el 9 de febrero de 2024 .
  5. "Fortaleciendo nuestro compromiso con el software libre y de código abierto" . Fundación Scratch . Consultado el 6 de diciembre de 2024 .
  6. "Página principal de Catrobat" . catrobat.org .
  7. "ScratchJr – Inicio" . scratchjr.org .
  8. "¡Snap! Construye tus propios bloques" . snap.berkeley.edu .
  9. "Kits de robótica y cortadoras láser para la educación STEAM" . Makeblock . Consultado el 4 de noviembre de 2025 .
  10. "¡Codifica! .. ¡Dibuja! .. ¡Cose! / TurtleStitch - Bordado codificado" . ¡Codifica! .. ¡Dibuja! .. ¡Cose! / TurtleStitch - Bordado codificado . Consultado el 7 de noviembre de 2025 .
  11. "Informática para KS1/KS2: Programación de un cocodrilo robot" . BBC Teach . Consultado el 8 de diciembre de 2024 .
  12. 1 2 3 "Scratch – Acerca de" . scratch.mit.edu . 11 de octubre de 2022.
  13. 1 2 3 "Búsqueda de premios de la NSF: Premio n.° 0325828 – ITR: Un entorno de programación en red y rico en medios para mejorar el aprendizaje informal y la fluidez tecnológica en los centros tecnológicos comunitarios" . Nsf.gov . Consultado el 15 de abril de 2021 .
  14. 1 2 "Estadísticas de la comunidad de un vistazo" . scratch.mit.edu . Archivado del original el 6 de abril de 2016. Recuperado el 18 de mayo de 2019 .
  15. "1000000000" . Web.archive.org . Consultado el 21 de junio de 2026 .
  16. Schorow, Stephanie (14 de mayo de 2007). "Creando desde cero" . Noticias del MIT . Archivado del original el 13 de octubre de 2018. Recuperado el 18 de mayo de 2019 .
  17. Fundación, Scratch. "Mis bloques Bloques personalizados" . Fundación Scratch . Consultado el 9 de abril de 2026 .
  18. Bean, Nathan. "Scratch Editor : Introducción a Scratch" . Introducción a Scratch . Consultado el 9 de abril de 2026 . 
  19. ^ Marji , Majed (2014) . Aprende a Programar con Scratch . San Francisco, California: No Starch Press. págs. xvii, 1 a 9, 13 a 15. ISBN  978-1-59327-543-3.
  20. 1 2 "Science Buddies: Guía del usuario de Scratch: Instalación y primeros pasos con Scratch" . ScienceBuddies.org . Archivado del original el 18 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  21. "Scratch Desktop" . Consultado el 19 de septiembre de 2019 .
  22. "Scratch - Imagina, programa, comparte" . scratch.mit.edu . Consultado el 10 de diciembre de 2025 .
  23. "Creación musical en Scratch: ¿pisos altos, techos bajos y paredes estrechas?" . Jitp.commons.gc.cuny.edu. 16 de mayo de 2019. Consultado el 27 de febrero de 2022 .
  24. "Scratch Lab" . lab.scratch.mit.edu . Consultado el 27 de septiembre de 2023 .
  25. Oliveira, Michael (30 de abril de 2014). " Las escuelas canadienses comienzan a enseñar programación informática a los niños" . CTV.ca. Archivado del original el 18 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  26. "Día de rascar" . Museo de Ciencias de Minnesota . Archivado del original el 8 de abril de 2013. Consultado el 18 de mayo de 2019 .
  27. 1 2 Lamb, Annette; Johnson, Larry (abril de 2011). "Scratch: Programación informática para estudiantes del siglo XXI" (PDF) . Bibliotecario docente . 38 (4): 64– 68. Recuperado el 18 de mayo de 2019 .
  28. 1 2 3 Resnick, Mitchel; Maloney, John; Hernández, Andrés; Rusk, Natalie ; Eastmond, Evelyn; Brennan, Karen; Millner, Amon; Rosenbaum, Eric; Silver, Jay; Silverman, Brian; Kafai, Yasmin (2009). "Scratch: Programación para todos" (PDF) . Communications of the ACM . 52 (11): 60– 67. doi : 10.1145/1592761.1592779 . S2CID 229934947 . 
  29. Fay, Joe (6 de abril de 2020). "El lenguaje de programación infantil Scratch se posiciona entre los 20 primeros en el último ranking de desarrolladores • DEVCLASS" . DEVCLASS . Consultado el 27 de abril de 2020 .
  30. Martin, Neil (25 de junio de 2015). "¿Qué es Scratch? ¿Es AV o IT?" . AV Magazine . Archivado del original el 18 de mayo de 2019 . Recuperado el 18 de mayo de 2019 .
  31. "Programa de estudios de DAV CS" (PDF) . Archivado del original (PDF) el 13 de julio de 2018. Consultado el 18 de mayo de 2019 .
  32. "Programa de estudios de DAV Jharkhand" . Consultado el 18 de mayo de 2019 .
  33. Young, Jeffrey R. (20 de julio de 2007). "La diversión, no el miedo, es la esencia de Scratch, un nuevo lenguaje de programación" . The Chronicle of Higher Education . ISSN 0009-5982 . Archivado del original el 18 de mayo de 2019. Consultado el 18 de mayo de 2019 . 
  34. "Programa de estudios CS50" . Archivado del original el 17 de marzo de 2015. Consultado el 18 de mayo de 2019 .
  35. Monroy-Hernandez, Andres; Hill, Benjamin Mako; Gonzalez-Rivero, Jazmin; Boyd, Danah (2011). "Computers Can't Give Credit: How Automatic Attribution Falls Short in an Online Remixing Community". Proceedings of the 29th International Conference on Human Factors in Computing Systems (CHI '11) . ACM. pp. 3421–30 . arXiv : 1507.01285 . doi : 10.1145/1978942.1979452 . S2CID 7494330 .  
  36. Hill, BM; Monroy-Hernández, A.; Olson, KR (2010). «Respuestas a la remezcla en un sitio web para compartir contenido en redes sociales». Actas de la Conferencia SIGCHI sobre Factores Humanos en Sistemas Informáticos . Washington, DC: AAAI Press. pp. 3421–3430 . arXiv : 1507.01284 . Bibcode : 2015arXiv150701284M . doi : 10.1145/1978942.1979452 . ISBN  978-1-57735-445-1OCLC 844857775 
  37. "Scratch para educadores" . scratch.mit.edu . Archivado del original el 5 de octubre de 2008. Consultado el 18 de mayo de 2010 .
  38. "Guía de Scratch Studios" (PDF) . Recursos de Scratch .
  39. "Scratch Wiki" . en.scratch-wiki.info . Archivado del original el 12 de mayo de 2019. Consultado el 18 de mayo de 2019 .
  40. "¿Qué es un Scratcher y cómo puedo convertirme en uno?" . mitscratch.freshdesk.com . 4 de noviembre de 2021 . Consultado el 10 de febrero de 2024 .
  41. 1 2 Liao, Rita (7 de septiembre de 2020). "China prohíbe Scratch, el lenguaje de programación del MIT para niños" . TechCrunch . Recuperado el 27 de abril de 2021 .
  42. "China bloquea Scratch, el lenguaje de programación infantil del MIT" . Developer Tech News . 8 de septiembre de 2020. Consultado el 19 de noviembre de 2020 .
  43. 1 2 "Rasguño" . Chirrido/Charla informal . Consultado el 7 de marzo de 2021 .
  44. Lightnin (29 de octubre de 2013). "Buscamos colaboradores para ayudarnos a terminar nuestro reproductor Scratch en HTML5 (¡ahora de código abierto!)" . Discuss Scratch . Consultado el 18 de mayo de 2019 .
  45. "Blockly" . Desarrolladores de Google .
  46. Pasternak, Erik (17 de enero de 2019). "Nuevos bloques de programación de Scratch 3.0, basados ​​en Blockly" . Archivado del original el 23 de julio de 2019. Recuperado el 2 de octubre de 2019 .
  47. "Educador de Scratch" . Meetup.com . Archivado del original el 21 de abril de 2019. Consultado el 18 de mayo de 2019 .
  48. "Semana de Scratch" . Archivado del original el 7 de abril de 2019. Consultado el 18 de mayo de 2019 .
  49. "LLK – Proyectos – Programación por bloques" . llk.media.mit.edu . Archivado del original el 30 de abril de 2001. Consultado el 19 de diciembre de 2021 .
  50. 1 2 "Desarrollo de Scratch 1.0" . en.scratch-wiki.info . Archivado del original el 3 de enero de 2019. Recuperado el 18 de mayo de 2019 .
  51. "Programación táctil: un paradigma de manipulación unificado que facilita la comprensión, composición y compartición de programas" . Consultado el 15 de octubre de 2021 .
  52. "Scratch – Imagina, programa, comparte" . scratch.mit.edu . Archivado del original el 22 de febrero de 2011. Consultado el 18 de mayo de 2019 .
  53. "Licencia Creative Commons" . wiki.scratch.mit.edu . Archivado del original el 18 de mayo de 2019. Consultado el 18 de mayo de 2019 .
  54. "ITR: Un entorno de programación multimedia en red para mejorar el aprendizaje informal y la competencia tecnológica en los centros tecnológicos comunitarios" . Fundación Nacional de Ciencias . Archivado del original el 30 de diciembre de 2015. Consultado el 18 de mayo de 2019 .
  55. "Scratch Desktop" . scratch.mit.edu . Archivado del original el 6 de abril de 2019. Consultado el 18 de mayo de 2019 .
  56. Biggs, John (10 de mayo de 2013). "La herramienta de programación infantil Scratch ahora funciona en el navegador" . TechCrunch . Archivado del original el 9 de julio de 2017. Consultado el 18 de mayo de 2019 .
  57. Shane (grokblah), en nombre del equipo de Scratch (29 de agosto de 2013). "¡Ya está disponible la versión actualizada del editor sin conexión de Scratch 2 (Beta)!" . Discuss Scratch . Consultado el 18 de mayo de 2019 .
  58. "Vista previa de Scratch 2.0" . YouTube . MITScratchTeam. 1 de mayo de 2013. Archivado del original el 24 de enero de 2014. Consultado el 18 de mayo de 2019 .
  59. "3 cosas que debes saber sobre Scratch 3.0" . Medium.com . 31 de enero de 2019. Archivado del original el 12 de mayo de 2019. Consultado el 18 de mayo de 2019 .
  60. "Scratch 3.0" . scratch.mit.edu . Archivado del original el 6 de abril de 2019. Consultado el 18 de mayo de 2019 .
  61. ceebee, en nombre del equipo de Scratch (28 de junio de 2023). "¡El contraste de color ya está aquí!" . Discuss Scratch . Consultado el 5 de septiembre de 2023 .
  62. ceebee, en nombre del equipo de Scratch (5 de junio de 2023). "Próximamente: ¡Contraste de color en Scratch!" . Discuss Scratch . Consultado el 5 de septiembre de 2023 .
  63. Mitchel Resnick, uno de los fundadores de Scratch (12 de marzo de 2019). "Apoyando el crecimiento de Scratch - Mitchel Resnick - Medium" . Medium . Consultado el 5 de marzo de 2024 .
  64. "¿Qué es la membresía de Scratch?" . Centro de ayuda de Scratch . Consultado el 14 de enero de 2026 .
  65. "Formato de archivo Scratch (2.0)" . Wiki de Scratch . Consultado el 2 de octubre de 2019 .
  66. ^ "LLK/scratchx" . GitHub . 16 de agosto de 2022.
  67. "Editor sin conexión de Scratch 2.0" . MIT . Consultado el 21 de septiembre de 2019 .
  68. "3 cosas que debes saber sobre Scratch 3.0" . El equipo de Scratch. 31 de enero de 2019. Consultado el 21 de septiembre de 2019 .
  69. O'Donnell, Lindsey (14 de enero de 2019). "Mozilla elimina la compatibilidad predeterminada con Adobe Flash en Firefox 69" . Recuperado el 21 de septiembre de 2019 .
  70. Comunicaciones Corporativas de Adobe (30 de mayo de 2019). "El futuro de Adobe AIR" . Archivado del original el 25 de agosto de 2019. Consultado el 21 de septiembre de 2019 .
  71. "Guía de referencia Scratch 1.4" (PDF) . Maine EDU . Scratch.mit.edu . Consultado el 25 de abril de 2025 .
  72. 1 2 McManus, Sean (2013). Programación Scratch en pasos sencillos . Leamington Spa: Easy Steps. ISBN 978-1-84078-612-5.
  73. "Scratch Extension" . MIT. Archivado del original el 18 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  74. "EV3+Scratch Extension" . GitHub de la extensión Scratch . Código y circuito. Archivado del original el 20 de enero de 2016. Consultado el 18 de mayo de 2019 .
  75. "Extensión preliminar de Scratch para comunicarse con placas Arduino que ejecutan Firmata" . Extensión de Scratch en GitHub . Damellis. Archivado del original el 16 de enero de 2018. Recuperado el 18 de mayo de 2019 .
  76. "¡Snap ! – Construye tus propios bloques" . Universidad de California, Berkeley. Archivado del original el 16 de mayo de 2019. Consultado el 18 de mayo de 2019 .
  77. Mönig, Jens. "Jens en Scratch" . Scratch . Archivado del original el 18 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  78. Mönig, Jens (31 de mayo de 2011). "BYOB 3.1 – Herencia prototípica para Scratch" . Blog de Chirp . Archivado del original el 6 de diciembre de 2013. Recuperado el 18 de mayo de 2019 .
  79. "Brian Harvey" . Ingeniería Eléctrica y Ciencias de la Computación . Archivado del original el 3 de abril de 2019. Consultado el 18 de mayo de 2019 .
  80. "bharvey" . Scratch . Archivado del original el 18 de mayo de 2019. Recuperado el 18 de mayo de 2019 .
  81. "CS10 : La belleza y la alegría de la informática" . Página principal del Grupo de Apoyo a la Instrucción de EECS . Archivado del original el 23 de enero de 2014. Consultado el 18 de mayo de 2019 . 
  82. "Relación con el equipo de Scratch" . Archivado del original el 2 de enero de 2020. Consultado el 2 de enero de 2020 .
  83. "Acerca de ScratchJr" . scratchjr.org . Consultado el 19 de septiembre de 2019 .
  84. "Preguntas frecuentes" . Documentación de complementos de Scratch . Consultado el 7 de enero de 2024 .
  85. "¿Es el entorno de programación Scratch ideal para todos?" (PDF) . Actas de la XV Conferencia Internacional sobre Educación Asistida por Ordenador . ISBN 978-989-758-641-5.
  86. "Cómo TurboWarp ejecuta proyectos de Scratch de 10 a 100 veces más rápido | Documentación de TurboWarp" . docs.turbowarp.org . Consultado el 7 de enero de 2024 .
  87. "TurboWarp - Ejecuta proyectos de Scratch más rápido" . turbowarp.org . Consultado el 17 de abril de 2022 .
  88. "Empaquetador TurboWarp" . packager.turbowarp.org . Consultado el 7 de enero de 2024 .
  89. "Extensiones de Scratch 3.0" . Github . MIT . Consultado el 19 de septiembre de 2019 .