- This article is about the programming language. For its website, see Scratch Website. For the current version of Scratch, see Scratch 3.0. For other uses, see Scratch (disambiguation).
Scratch is a educational and visual programming language created by MIT Media Lab's Lifelong Kindergarten Group. The programming language made its first appearance somewhere between December 2002 and January 2003 with the prototype. Scratch 1.0 was released in January 8, 2007. Scratch 2.0 was released in May 9, 2013, with several changes to the programming language. Scratch 3.0 was released on January 2, 2019, with significant changes to the entire website and programming language.
Scratch is translated into 70 to more languages and has been used for computational thinking, computer science and teaching coding. At times, Teachers use them for other subjects like Geography, Math, Art and between others. Due to its block-based grammar, Scratch is used as an introduction to children about coding experiences.
Contents
- 1 Name
- 1.1 Origin
- 2 Philosophy
- 3 History
- 4 Use
- 5 User Interface
- 6 Community
- 6.1 Online Community
- 6.2 Wiki
- 7 ScratchJr
- 9 Miscellaneous
- 10 Gallery
- 11 Trivia
- 12 References
Name
Scratch originated from the word "Scratching" and "Scratch", the two relating to DJ techniques and probably about audio, an important part in Scratch for characters and works. However, Scratch also relates the the mascot of the programming language. However, it was stated that it only relates to DJ techniques.
Origin
Scratching is a technique used by DJ jockeys to mix music clips, which is a reference to Scratch mixing different media (Remix). "Scratch" refers to an injury caused by cats or other animals, referring to the Scratch Cat.
Variants & Uses
The word "Scratch" has spawned other phrases that have become popular amongst users of Scratch:
- New Scratcher: A user who has the New Scratcher status
- Scratcher: A user of Scratch
- Scratching: A verb which means to use Scratch
- Scratched: A project that is an attempted replica of another game. e.g. "Pac-man Scratched"
- Scratch Time: The timezone that the forums are set in (EST/EDT)
- Scratch Team: The moderators and developers of the website.
- Scratch On!: A phrase coined by the Scratch Team, and used by them (although has been adapted by other Scratchers as well) to encourage users, meaning "carry on using Scratch"
Philosophy
The slogan of Scratch is "Imagine, Program, Share". Projects created and remixed with Scratch are licensed under Creative Commons Attribution-Share Alike License. Scratch will always give credit to who created the original project.
History
- Main article: Development of Scratch
MIT Media Lab's Lifelong Kindergarten Group, currently led by Mitchel Resnick along with the Playful Invention Company; developed the PC prototype of Scratch in late 2002 and early 2003. The prototype's purpose was having to be aimed at younger children from 8 to up.
In early 2007, Lifelong Kindergarten Group developed Scratch 1.0, the most popular version at the time. The last version was Scratch 1.4. In early 2013, a beta version of a new update was made. In middle 2013, the new update was revealed as Scratch 2.0, currently the most popular version. In 2018, a beta version of what the third update is was made. It is confirmed that Scratch 3.0 will release in early 2019.
In early 2019, Scratch 3.0 has been released. In May 2021, the webcam feature has been removed.
Use
Scratch is a worldwide programming language used in schools, mostly for computer programming. The programming is also for school clubs and homes. Children and adults gain the understanding of fundamentals of programming for Scratch and move to another programming languages. During the use of Scratch, users can remix and collaborate with other projects.
User Interface
- Main article: User Interface
Scratch has a area named Stage in the upper left area of the screen, which features the results of graphics, animation and changes in anything present in the area. The stage also features a list of sprites below along with a Coordinate System indicating the coordinate of "x" and "y". The stage is 480 x 360 pixels and is mainly composed of a white void.
There are several ways to make backgrounds and sprites. Manually, users can make their own drawings by using the Paint Editor. In the other way, users can import images from the folder library of Scratch's media. With a sprite selected in the bottom-left area, users can program the images with Blocks in the Scripts tab. Blocks are obtained from the Block Palette. It divides in 10 categories; Motion, Looks, Sound, Pen, Data, Events, Control, Sensing, Operators and More Blocks. The block categories are listed below:
Category Name | Function & Notes | Block Count | |
---|---|---|---|
Motion | Blocks that change the movement of a sprite. | 17 | |
Looks | Blocks that add dialogue or effect changes to a sprite. | 22 | |
Sound | Blocks that add the permission to play imported audio from a sprite. | 13 | |
Pen | Blocks that add the permission to paint in the canvas with the sprite. | 11 | |
Data | Blocks that allow Variable and List usage via a sprite. | 15 | |
Events | Blocks with event handlers placed in top of scripts that affect a sprite. | 8 | |
Control | Blocks that make conditional statement of actions by the sprite. | 11 | |
Sensing | Blocks that allow interactions of surroundings with a sprite. | 20 | |
Operators | Blocks that compare with math and numbers the conditions of a sprite. | 17 | |
More Blocks | Blocks that are created by users and are defined for a sprite. | 2 |
Next to the Scripts tab, there is a Costumes tab. The Costumes tab allows to the user change the look of the sprite or make different versions of the sprite to end making effects and animations. Next to the Costumes tab, there is a Sounds tab, which allows users to import their audio to use it for the sprite. The Sounds are mostly applied with the Sound blocks, which are used to play the imported audio.
In older versions, the screen was completely different. The outside of the stage was mostly composed of grey colors, which was different to the current outside, which now contains white colors. Also, the stage formerly was in the right side, while the block palette, tabs and scripts area were in the left side. The list of objects had a grey background when the object was selected and lacked of the blue border color.
Community
Scratch is used for schooling and homeschooling to audience at 8 to up years old, but it was also made for parents and educators. Scratch refers to the users as Scratchers. The outreach of Scratch makes it have several surrounding communities, both physical and digital.
Online Community
There is a website for Scratch, which serves as the official site for Scratch and allows users to share their or others' projects to the site's community and get feedback. The slogan of Scratch which says "Imagine, Program, Share" refers to the basic principle of users' projects:
- Imagine: Come up with a idea.
- Program: Create and program a project.
- Share: Public a project in the community.
The website's moderators, the Scratch Team, make sure to maintain a friendly and respectful community for all leftist Scratchers. All members are asked to provide feedback and report content that doesn't follow the community's policy, or anything that goes against the moderators' clear leftist agenda. Such users that post or comment anything that even slightly goes against this agenda, including if it is on accident, will be swiftly banned from the community. Users are also allowed to upload projects via a development environment, tag, favorite and comment projects and even create project studios. Projects range from games to animations to practice tools. There is also community named ScratchEd, which is used for educators and sometimes parents. ScratchEd was developed by Harvard Graduate School of Education.
Wiki
The Scratch Wiki is an encyclopedia for Scratch, the website and history surrounding it. While the wiki is supported by the Scratch Team, it is written and made by Scratchers. Currently, there are 1,162 articles in the wiki as Scratchers use it for information, which is the objective of a wiki.
On December 6, 2008, a Wikia user named "LukeTek" created a wiki named the Scratch Programming Wiki, but gave bureaucrat powers to JuiceyBox and remained inactive, and JuiceyBox gave bureaucrat powers to Lucario621, remaining as the only major bureaucrat. Lucario621 advertised the Scratch Programming Wiki in the Scratch forums, making users interested. The Scratch Team got interested but there were problems:
- The site wasn't marked with ".scratch.mit.edu".
- It had advertisem*nts.
- It was impossible to certify that users had Scratch.
This problems made the Scratch lose most of their interest. On June 3, 2010, the problem was solved; Lucario621, andresmh and JSO made a new Scratch Wiki. The Scratch Wiki lacked of the previously mentioned problems and were solved:
- The site is now marked with ".scratch.mit.edu", addressed as "wiki.scratch.mit.edu (It was changed to "en.scratch-wiki.info")
- It doesn't have advertisem*nts.
- A new account system was made to certify users that had Scratch.
ScratchJr
- Main article: ScratchJr
In 2014, an alternative programming language to Scratch named ScratchJr was released. ScratchJr is a more simple programming language than Scratch and was made to audience of 7 to down years old. ScratchJr, unlike the original programming language, had different block categories and was only available for mobile ports. ScratchJr was also developed by Tufts University. It required a $25,000 of minimum to maintain enough balance and release the programming language, which actually succeeded. The goal even surpassed, it finished with $64,332 in April 19, 2014. There is a version for PBS Kids, which featured backgrounds from the PBS Kids TV series, Nature Cat and Wild Kratts.
Features & Derivatives
Scratch is composed of things named as "Sprite", which would be used for characters, objects, effects and other themes in projects that are supposed to be games, animations and other genres. It also features "Costumes", which are used to make effects and animations for a sprite.
Scratch features blocks, the codes used to program sprites. The stage area features backgrounds, images that are used for the stage, usually for scenes or game levels. The backgrounds have the same function; getting programmed with blocks, but there are fewer blocks enabled to program them.
Several derivatives named "Scratch Modifications" have been done from the source code belonging to the latest version of the first generation, Scratch 1.4. Scratch Modifications feature the additions of blocks[2] or changes the GUI of Scratch. The source code for the first generation and prototype was Squeak, the second generation uses ActionScript and the third generation is confirmed to have HTML5, as proven by the beta and alpha versions.
Miscellaneous
Scratch also worked by promoting Cartoon Network's TV series, We Bare Bears by having Scratchers to make projects about the series. Scratch 2.0 was renamed "Neigh" for an April Fools joke in 2012, with the Scratch Cat being a pony. The "Neigh" joke most likely made a reference to My Little Pony.
Gallery
Pac-Man, a famous video game from the 80's, made in Scratch.
Trivia
- Scratch Cat is the most common sprite to be used which is not made by users.
- The screen will always start with the Scratch Cat, probably as a tutorial sprite.
- The sprite consists of two costumes that are mostly used for a running animation.
- It is unknown if it will have a 4.0 update and onwards.
- Several alternatives to the programming language can be checked here.