Advanced Programming with Scratch in the Classroom

Advanced programming contributes to developing computational thinking concepts in Primary Education classrooms. However, this methodology is complex and requires knowledge of very specific languages, which are not easy for minors or even teachers to assimilate. Hence, there are very useful alternatives such as Scratch to simplify all these processes and help students learn to program in practical and enjoyable environments. What these solutions do is group programming codes into individual events, called blocks, which have the ability to interconnect to create logical sequences of instructions. In this way, students discover how to create commands and applications, while developing their problem-solving skills and competencies in a practical way.

Scratch: starting point to explore programming

It is a language that was created in 2007 by the Massachusetts Institute of Technology (MIT), with the aim of teaching minors and adults the keys to programming without the need for them to have prior knowledge of code. Due to its characteristics, Scratch fits perfectly in the educational field. In fact, it is ideal for teaching students how to deal with problems, as well as how to design games. Why? With it, logical and algorithmic thinking is reinforced, it makes students put their knowledge of computational thinking into practice, helps them assimilate the fundamentals of programming and stimulates them to develop their transversal skills, such as teamwork, communication or adaptability.

So, given its advantages, ProFuturo, a digital education program promoted by Fundación Telefónica and Fundación la Caixa, wanted to take advantage of this tool to offer the educational community its resource on advanced programming. Specifically, ‘Advanced Programming with Scratch’, a didactic content that makes the most of the virtues of the application, so that students can: Express their ideas creatively through block programming. Use and explore the possibilities of advanced blocks that Scratch offers, such as operators, sensors, variables, etc. Programming in a fun and educational context, developing the interactive activities that are proposed and taking advantage of the multimedia elements that are available to them. Design and develop a simple video game. To do this, students have to put into practice all the knowledge about advanced programming that they have been acquiring during the course.

beyond scratch

Although the resource offered by ProFuturo is based on Scratch, its teachings are not only valuable and useful for this tool. Actually, this engine goes much further and also poses conceptual premises that are useful for taking advantage of other solutions on the computing market. Among them, the following: Blockly. Google project that includes a library and a visual code editor for the development of web and mobile applications. It is fully focused on students and exploits the possibilities of block programming.PocketCODE. Programming language that is inspired by Scratch and that is also intended for learning by children and adolescents. Among its possibilities are the creation of games, animations, videos, interactive works, etc. in mobile environments.Minecraft. In addition to being a hugely successful video game around the world, it provides different tools that broaden your experience. These allow you to modify their programmable parameters to create and shape huge worlds where imagination is the only limit.Makecode. It is an open source platform that has been developed by Microsoft. It includes an interactive simulator for program execution and testing, as well as a color block editor.Code.org. Non-profit online initiative that incorporates a multitude of courses and training resources. It dedicates a relevant part of its proposal to the learning of block programming in schools, mainly by young women and students from marginalized racial and ethnic groups. It stands out for its structured itineraries with different levels of difficulty.Micro:bit. Hardware board, OpenSource and small in size, which is ready to be programmed using various languages, such as Makecode (native), Scratch or Python. It has a multitude of sensors that enable the development of a wide variety of projects.Tynker. Block programming language. Like its peers, it has emerged to guide children and young people in their first steps in the world of programming. In fact, it is also clearly focused on the field of teaching.

A gateway to advanced programming

There are numerous tools for children and young people to explore all the possibilities of advanced programming. But knowing Scratch is a great way to immerse yourself in this world, because it is an accessible and simple block language that has a great virtue: motivating students in an entertaining and playful way to learn a methodology of great educational value. .