In other languages

Help the wiki!

Scratch User Interface (1.4)

This article or section documents something not included in the current version of Scratch (3.0). It is only useful from a historical perspective.

In designing Scratch, the Scratch Team's main priority was to make its language and development environment intuitive and easily learned by children who have had no previous programming experience. There is a strong contrast between the powerful multimedia functions and multi-threaded programming style and the rather limited scope of the Scratch programming language. So tasks easy in high-level programming languages are sometimes tough in Scratch (e.g. multidimensional arrays) while tasks easy in Scratch are hard in many high-level programming languages (sprite-like graphics, sensing the ambient noise, etc.).

The user interface for the Scratch development environment divides the screen into several panes: on the left is the blocks palette, in the middle the current sprite info and scripts area, and on the right the stage and sprite list. The block palette has code fragments (called "blocks") that can be dragged onto the scripts area to make programs (called projects). To keep the palette from being too big, it is organized into 8 groups of blocks: Control, Motion, Looks, Sound, Pen, Sensing, Operators, and Variables. In version 1.4, Numbers was renamed to Operators. Its name was changed because of the addition of blocks that dealt with strings in that section.

Contents

Palettes and Panes

Scratch has a simple and easy to use interface. Its design allows users of all ages and experience levels to create projects. In order to do this, the program divides the different parts of Scratch into Palettes and Panes.

Stage

The Stage is a "sprite" that represents the background of its project. Because of this, it has special features that are different from other sprites.
No sprites can move behind the Stage — the Stage is always at the back.