Marcos Codas
Posted
How do you keep high school students engaged with programming without overwhelming them? For teacher Ángel González, the answer is GDevelop.
From winning regional STEAM competitions to making code accessible for every student, Ángel shares why GDevelop is his tool of choice for the classroom, and shows off some incredible student projects to prove it.
My name is Ángel González, and I am a Computer Science teacher at IES Alameda in Utiel, a town in the interior of the province of Valencia, Spain. My relationship with video games began when I was 7 years old, and that is the passion I try to pass on to my students, who are between 15 and 17 years old. I have been using GDevelop as an introductory programming tool for three academic years now, as I find it offers the perfect balance between accessibility and power for secondary education.
A Toda Mecha, a student project.
At this age, purely text-based programming in Python, C, or Java can lead to a lot of frustration. It is difficult to achieve visually appealing results even in the medium to long term, and even more so in the field of video games. In contrast, GDevelop allows abstract concepts, such as decision structures, variables, and events, to be applied in a very natural and visual way. Furthermore, in my opinion, it fills a gap left by tools like Scratch, which for 15 year olds falls short and can be perceived as somewhat childish. GDevelop, on the other hand, offers them a much more 'professional' environment.
I have always liked 90s games (what we would call "retro" today), so I love teaching how to make shoot 'em up games like R-Type or platformers like Super Mario Bros on the NES. GDevelop allows me to teach the basics of the mechanics of these games and helps students think about how to use the logical and programming structures found in GDevelop's event system. In the end, you can teach the basics of programming fundamentals without having to "write code," and generally, it facilitates the subsequent leap to high-level languages.
I consider this to be of utmost importance, as access to education should not depend on a family's financial capacity to pay for a software license. Free and Open Source Software (FOSS) guarantees that every student can access these learning tools. In other words, open-source software democratizes knowledge. With GDevelop, I am providing my students with a tool that can hold its own against professional alternatives, one they can continue to use at home at no cost.
Overall, they really enjoy it because high-level programming languages can be frustrating at times. You need a high level of expertise just to create something that catches the eye. In game development, the next step would be Unity, but that is a massive leap. I have occasionally tried Unity with C# with 17 and 18 year old students, and it’s not for everyone. Those who get it enjoy it a lot, but for most, 'it’s overwhelming.'
In contrast, with GDevelop, practically everyone is capable of creating and feeling like a 'pro' at programming. It is easy for them to get a spaceship moving, manage 100 health points, shoot, and watch the score go up with a nice particle effect after an enemy ship explodes.
For example:
The following video shows work by high school students from the last academic year (24-25) creating platform games:
The following video shows games also created in high school during the 23-24 academic year:
The following video features work done in this first term (of the 25-26 academic year) by 4th year ESO students aged 15 and 16:
During the last school year, we built a shoot 'em up and a platformer in class. This served as a foundation to encourage them to enter a STEAM skills competition organized by the Polytechnic University of Valencia (UPV). There is a specific category for video games, so we decided to participate.
We submitted three proposals inspired by our local culture and regional heritage, and we managed to win third prize with one of them. For this current year, my goal is to enter the competition again with a more ambitious project, perhaps a game in the style of The Legend of Zelda on the SNES, but ultimately, it will all depend on my students.
I am also leaving a link to my itch.io account where the projects we submitted to the competition last year are posted. You can play them!
The main benefit is that everyone can create, no student is left staring at the screen, stuck without knowing what to do. With high-level languages or engines like Unity, it is very common to get bogged down and not know how to proceed. With GDevelop, every student or group can always take it one step further, there is no 'floor' or 'ceiling' to what they can achieve.
The most advanced students get a huge amount out of it, while those who struggle more are left with the satisfaction of knowing they are programming and playing their own creations. Without a doubt, I have seen this benefit firsthand in the classroom.
Yes, I would tell them to go for it. It is easy, intuitive, and the students really love it. As I mentioned before, the more advanced students will get a lot out of it, while those who struggle more will feel a great sense of achievement by creating results they can actually experience through play. GDevelop feels like the perfect bridge between a beginner tool like Scratch and a professional-grade engine like Unity.