Scratch is a block-based visual programming language developed by MIT to teach programming concepts to children. It allows users to create interactive stories, games, and animations. Programming constructs in Scratch include sequencing, loops, conditionals, variables, and threads. Scratch programs can be published online and shared with others. Scratch is commonly used by students, teachers, artists and for robotics projects through integration with devices like Lego WeDo.