These are two interesting but very different questions! (and they come up often as we teach coding for kids)
Scratch is used by many people from all backgrounds, in all countries around the world. The last count we are aware of is 43 million registered users! They use it in all types of settings: schools, libraries, homes, museums, community locations, and more. Scratch is designed especially for young people ages between 7 and 16, but people of all ages create and share with Scratch. Traditionally younger children tend to use ScratchJr, a simplified version of Scratch designed for ages 5 to 6.
ScratchJr is an introductory programming language that enables young children (ages 5-6) to create their own interactive stories and games. ScratchJr users do not need to know how to type! Children snap together graphical programming blocks to make characters move, jump, dance, and sing. While the programs in ScratchJr are simpler than those of Scratch, the logical thinking required to create ScratchJr programs is remarkably the same. Children can modify ScratchJr characters in the paint editor, add their own voices and sounds, even insert photos of themselves — then use the programming blocks to make their custom characters come to life.
ScratchJr is available as a free app for both iPad and Android tablets.