COURTESY :- vrindawan.in
Wikipedia
KLiC Scratch Programming
Scratch is a drag-and-drop programming language for children designed to create things such as games, animations, art, and stories. It allows them to explore and experiment with the ideas of computer programming by using “blocks” that are put together to make simple code. There is also a discussion page with multiple forums mainly used for chatting and help with coding.
Although made for children 8-16, Scratch can be used to produce simple or complex programs so it is worth learning to use by adults as well.
Scratch is translated into 40+ languages and is used in homes, schools, and after-school clubs in every country in the world. Scratch is often used in teaching coding, computer science, and computational thinking. Teachers also use it as a tool across many other subjects including math, science, history, geography, and art. The Scratch Team (ST) is an organization that helps maintain, manage and help keep Scratch safe. They also do helpful tutorials for coding help and support. Scratch is also free to use.
The area where the user can interact with is called the stage area. The stage area features all of the animations, graphics, drawings, and among other visual features. The list of sprites on screen are placed below the stage area to show a list of sprites that are usable for the program. The stage is organized through x and y coordinates, with the center coordinate (0, 0) placed in the center of the stage. The stage is 480 pixels wide and 360 pixels tall, with a range between x=-240 to x=240 in width and a range between y=-180 and y=180 in height.
From left to right, in the upper left area of the screen, there is a stage area, featuring the results (i.e., animations, turtle graphics, etc., everything either in small or normal size, full-screen also available) and all sprites thumbnails listed in the bottom area. The stage uses x and y coordinates, with 0,0 being the stage center. The stage is 480 pixels wide, and 360 pixels tall, x:240 being the far right, x:-240 being the far left, y:180 being the top, and y:-180 being the bottom.
Scratch is a high-level block-based visual programming language and website aimed primarily at children as an educational tool for programming, with a target audience of ages 8 to 16 though many adults use it. Examples of adult users are Griffpatch, WazzoTV, etc. Users on the site, called Scratchers (new users will be named “New Scratcher” as later on explained in the Roles section), can create projects on the website using a block-like interface. Projects can be exported to HTML5, JavaScript, Android apps, Bundle (macOS) and EXE files using external tools. The service is developed by the MIT Media Lab, has been translated into 70+ languages, and is used in most parts of the world.Scratch is taught and used in after-school centers, schools, and colleges, as well as other public knowledge institutions. As of May 8, 2022, community statistics on the language’s official website show more than 104 million projects shared by over 90 million users, over 686 million total projects ever created (including unshared projects), and more than 100 million monthly website visits.
Scratch takes its name from a technique used by disk jockeys called “scratching”, where vinyl records are clipped together and manipulated on a turntable to produce different sound effects and music. Like scratching, the website lets users mix together different media (including graphics, sound, and other programs) in creative ways by creating and ‘remixing’ projects, like video games, animations, and simulations.
The Scratch interface is divided into three main sections: a stage area, block palette, and a coding area to place and arrange the blocks into scripts that can be run by pressing the green flag or clicking on the code itself. Users may also create their own code blocks and they will appear in “My Blocks”.
The stage area features the results (e.g., animations, turtle graphics, either in a small or normal size, with a full-screen option also available) and all sprites thumbnails being listed in the bottom area. The stage uses x and y coordinates, with 0,0 being the stage center.
With a sprite selected at the bottom of the staging area, blocks of commands can be applied to it by dragging them from the block palette into the coding area. The Costumes tab allows users to change the look of the sprite with a vector and bitmap editor in order to create various effects, including animation. The Sounds tab allows attaching sounds and music to a sprite.
When creating sprites and also backgrounds, users can draw their own sprite manually, choose a Sprite from the library, or upload an image.
The table below shows the categories of the programming blocks:
An offline “Desktop editor” for Scratch 3.0 is available for Microsoft Windows 10 in the Microsoft Store and Apple’s macOS 10.13; this allows the creation and playing of Scratch programs offline. The offline editor can also be downloaded in previous versions, such as Scratch 2.0 and Scratch 1.4.
In Scratch, extensions add extra blocks and features that can be used in projects. In Scratch 2.0 and 3.0, the extensions were all hardware-based. Software-based extensions were added in Scratch 3.0, such as text-to-speech voices, along with some new hardware-based extensions like the micro:bit. The extensions are listed below.
- Music
- Pen
- Video Sensing
- Text to Speech
- Translate
- BBC Micro:bit
- LEGO Mindstorms EV3
- LEGO WeDo 2.0
- Makey Makey
- LEGO SPIKE Prime
- LEGO BOOST
- Go Direct Force & Acceleration
- Text To Speech
- Lego Mindstorms EV3 – control motors and receive sensor data from the Lego Mindstorms EV3
- Makey Makey – use the Makey Makey to control projects
- Lego Education WeDo 2.0 – control motors and receive sensor data from the Lego WeDo
- Lego Education SPIKE Prime—The main programming language for the Lego SPIKE Prime, including motor control and receiving sensor data
- BBC micro:bit – use of a BBC micro:bit to control projects
- Lego BOOST – bring robotic creations to life
- Go Direct Force & Acceleration – Sense pull, push, motion, and spin
- Text To Speech – Make your sprites talk
Many of the digital extensions in Scratch 3.0 used to be regular block categories that were moved to the extensions section to reduce clutter. These include:
- Music – Play digital instruments (drums, trumpets, violins, pianos, and more)
- Pen – Draw on the Stage with a variety of thicknesses and color
- Video Sensing – Detect motion with the camera
New digital extensions have also been added in collaborations with commercial companies. These include:
- Text to Speech – Converts words in a text into voice output (variety of voices, supplied by Amazon)
- Translate – Uses Google Translate to translate text from one language into a variety of other languages, including Arabic, Chinese, Dutch, English, French, Greek, Norwegian, and Japanese
The scratch lab has experimental extensions that they might add in the future, intended to explore whether the blocks may be added to the full website in the future. Experimental blocks include:
- Face Sensing – Make animated costumes and games that interact with your face.
- Animated text – Bring words to life with colors, fonts, and animations.
Users can also create their own extensions for Scratch 3.0 using JavaScript.
Scratch 3.0 is a completely new JavaScript-based codebase made up of multiple components such as “Scratch-GUI,” now based on a library from Blockly, “Scratch-VM,” which interprets code, and “Scratch-Render,” the rendering engine. The Scratch Blocks are made using Blockly.
A paper published in 2019 by NYU argues and illustrates, for coding music with Scratch, “that the music and sound blocks as currently implemented in Scratch may limit and frustrate meaningful music-making for children, the core user base for Scratch.”
Scratch is used in many different settings: schools, museums, libraries, community centers, and homes. Scratch is designed primarily for users aged 8–16, but it is used by all ages and has a sizeable adult userbase as of 2009. This wide outreach has created many surrounding communities, both physical and digital. In April 2020, the Tiobe ranking of the world’s programming languages included Scratch into the top 20. According to Tiobe, there are 50 million projects written in Scratch, and every month one million new projects are added.