Advanced programming contributes to the development of computational thinking concepts in primary school classrooms. However, this methodology is complex and requires knowledge of very specific languages, which are not easy for children or even teachers to assimilate. That is why there are useful techniques – such as Scratch programming – to simplify all these processes and help students learn to programme 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, young people discover how to create commands and applications, while developing their problem-solving skills and competencies in a practical way.
Scratch programming, a great starting point in programming
Scratch stands out among all the options offered by the market to deepen programming. It is a language that was created in 2007 by the Massachusetts Institute of Technology (MIT), in order to teach children and adults the keys to programming without the need for them to have previous knowledge on code.
Due to its characteristics, Scratch fits perfectly in the educational field. In fact, it is ideal for teaching students how to tackle problems, as well as how to design games. Mainly because it reinforces their logical and algorithmic thinking, makes them put into practice their knowledge of computational thinking, helps them assimilate the basics of programming and stimulates them to develop their transversal skills, such as teamwork, communication or adaptability.
So, given its advantages, ProFuturo wanted to take advantage of this tool to offer the educational community its resource on advanced Scratch programming. Specifically, ‘Advanced Scratch programming’ is a didactic content that takes full advantage of the virtues of the application, so that students can:
- Express their ideas creatively through block programming.
- Use and explore the possibilities of the advanced blocks that Scratch offers, such as operators, sensors, variables, etc.
- Programming in a didactic and fun context, developing the interactive activities that are proposed to them and taking advantage of the multimedia elements that are available to them.
- Ultimately, to 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 acquired during the course.
Block programming beyond Scratch
Although the resource offered by ProFuturo is based on Scratch, its teachings are not only valuable and useful for this tool. In fact, this engine goes much further and also raises conceptual premises that are useful for the use of other solutions present in the computational 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.
- Pocket CODE: Programming language that is inspired by Scratch and is also intended for children and teenagers. Among its possibilities are the creation of games, animations, videos, interactive works, etc. in mobile environments.
- Minecraft: In addition to being a very successful video game around the world, it provides different tools that expand your experience. These allow you to modify its 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 programme execution and testing, as well as a color block editor.
- Code.org: Non-profit online initiative that incorporates a variety of courses and training resources. It devotes a relevant part of its proposal to learning block programming in schools, mainly by young women and students from marginalised racial and ethnic groups. It stands out for its itineraries with different levels of difficulty.
- Micro:bit: Hardware board, OpenSource and small size, which is ready to be programmed using different 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.
Scratch, a gateway to advanced programming
As we have just seen, there are numerous tools for children and young people to explore all the possibilities of advanced programming. But the knowledge of Scratch is a great way to dive into this world, because it is an accessible and simple language by blocks that has a great virtue: that of motivating students, in a fun and playful way, to learn a methodology of great educational value.