Theory:

In this section, we will see the software called 'Scratch', which is a safe and playful learning environment that engages all kids in thinking creatively.
Programming is defined as the art of writing instructions to communicate to a computer what to do. A set of instructions is known as a program. The instructions are communicated in what is known as a programming language, and there are thousands of such languages.
Scratch is software used to create animations, cartoons, and games easily. On the other hand, Scratch is a visual programming tool. It was invented in the Massachusetts Institute of Technology (MIT) Media Lab to make programming easier and more fun to learn.

Scratch_2.0_Screen_Hello_World.png
Scratch application

It promotes computational thinking and problem-solving skills, innovative teaching and learning, self-expression and collaboration and equity in computing.
 
It is always free and is available in more than \(70\) languages.
Scratch takes its name from a technique employed by disk jockeys called "scratching", where vinyl records are clipped together and managed on a turntable to create 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.
Scratch is more comfortable to use than most other programming languages for many reasons:
  • You don't have to memorise or type any commands: they're all on-screen, so you can just drag and drop them.
  • Commands work together like jigsaw pieces, so there are strong visual hints about how you can combine them. 
  • Error messages are rare. Because Scratch commands lock together, programs always make some kind of sense. If you fail to get what you expected, writing a program with logical errors is still possible. Scratch guides you to write things that work, rather than nagging you when they don't.
  • The commands are colour-coded and categorised, so you can easily find the command when needed. The commands in Scratch simplify common activities in games, such as testing whether a missile has hit an alien (collision detection) or rotating a character on screen.