Deelvraag
Wat voor online trainingen bestaan er al voor kinderen om te leren programmeren?
- Welke specifieke onderwerpen worden er behandeld in deze trainingen
- In welke formaten worden de trainingen aangeboden?
- Voor welke leeftijdsgroep zijn de trainingen bedoeld?
- Wat bestaat er al rondom Visual programming?
Door te onderzoeken wat er al bestaat aan online trainingen kan ik inspiratie opdoen voor de inhoud en de interactieve elementen van mijn VR oplossing. Welke onderwerpen worden goed uitgelegd? Welke oefeningen zijn effectief? Welke formaten werken het beste voor kinderen? Door trainingen te vergelijken krijg ik een beter begrip van de verschillende manieren waarop programmeren wordt geleerd. Dit helpt om de beste keuze te maken voor mijn concept over de inhoud en trainingsmethode.
De methodes die ik hiervoor wil gebruiken zijn:
- Literature study
- Card Sorting
- Benchmark Creation
Bestaande Trainingen
De bestaande trainingen zijn te vinden in mijn Benchmark Creation
Onderwerpen van bestaande trainingen
Code.org
- Basisconcepten van programmeren
- Webdesign (HTML, CSS)
- Sequentiële instructies
- Loops
- Conditionele statements (if-else)
- Functies
- Variabelen
- Debugging
Scratch
- Sprites en objecten
- Beweging en animatie
- Gebeurtenissen en interactiviteit
- Loops
- Conditionele statements
- Variabelen
- Lijsten
- Functies (eigen blokken maken)
- Geluid en muziek
- Tekenen en grafische effecten
Crunchzilla
- Basisconcepten van programmeren (afhankelijk van het gekozen niveau)
- JavaScript syntax
- Variabelen
- Functies
- Loops
- Conditionele statements
Blockly.games
- Sequentiële instructies
- Loops
- Conditionele statements
- Functies
- Debugging
- Wiskundige concepten (hoeken, coördinaten)
Code Combat
- Basisconcepten van programmeren
- Sequentiële instructies
- Functies
- Loops
- Conditionele statements
- Variabelen
- Objectgeoriënteerd programmeren (voor gevorderden)
- JavaScript of Python syntax (afhankelijk van de gekozen taal)
Code for Life
- Sequentiële instructies
- Loops
- Conditionele statements
- Functies
- Debugging
- Logisch denken en probleemoplossing
Pixelpad.io
- Python syntax
- Variabelen
- Functies
- Loops
- Conditionele statements
- Gebeurtenisgestuurde programmering
- Game development concepten
- Grafische programmering
Algemene thema’s
- Naast deze platformspecifieke onderwerpen, zijn er enkele algemene thema’s die in de meeste trainingen terugkomen:
- Logisch denken en probleemoplossing
- Algoritmisch denken
- Debugging en foutopsporing
- Creatief gebruik van code
- Iteratief ontwerp en verbetering
- Samenwerking en het delen van projecten
Onderwerpen die ik kan toepassen
Fundamental Programming Concepts
- Sequentiële instructies (Sequential instructions)
- Variabelen (Variables)
- Loops
- Conditionele statements (if-else) (Conditional statements)
- Functies (Functions)
- Debugging
Alternatieve onderwerpen
Data Structures and Advanced Concepts
- Lijsten (Lists)
- Objectgeoriënteerd programmeren (Object-oriented programming)
Web Development
- Webdesign (HTML, CSS)
- JavaScript syntax
Visual and Interactive Programming
- Sprites en objecten
- Beweging en animatie
- Gebeurtenissen en interactiviteit
- Geluid en muziek
- Tekenen en grafische effecten
Formaten van bestaande trainingen
Gestructureerde lessen
- Code.org: Gebruikt een lesstructuur met verschillende ‘levels’ per les:
- Exploration
- Skill Building
- Quick Check
- Skill Building
- Practice
- Assessment
- Challenges
- Crunchzilla: Biedt gestructureerde lessen met een ‘companion’ die instructies geeft.
Visuele programmeeromgevingen
- Scratch: Gebruikt een drag-and-drop interface met codeblokken.
- Code.org: Biedt naast tekstuele programmering ook visuele programmering met blokjes.
- Blockly.games: Gebruikt een systeem van blokken die in elkaar passen.
- Code for Life: Maakt gebruik van visuele programmering met het slepen van blokjes.
Gamification
- Code Combat: Presenteert programmeren als een Role Playing Game (RPG) met levels en missies.
- Code for Life: Gebruikt een auto die bestuurd moet worden door code.
Interactieve tutorials
- Scratch: Biedt tutorials met plaatjes, video’s en voorbeelden.
- Pixelpad.io: Gebruikt ‘type mee’ tutorials met YouTube video’s.
Open-ended platforms
- Scratch: Laat kinderen vrij hun eigen projecten maken en delen.
- Pixelpad.io: Stelt kinderen in staat om na de tutorials eigen games te maken en te publiceren.
Tekstuele programmeeromgevingen
- Crunchzilla: Gebruikt een eenvoudig codevak en outputvak.
- Pixelpad.io: Laat kinderen direct in Python programmeren.
- Code Combat: Biedt voor oudere kinderen (8+) de mogelijkheid om in JavaScript of Python te programmeren.
Progressieve moeilijkheidsgraad
- De meeste platforms, waaronder Code.org, Code Combat, en Blockly.games, bieden een progressieve moeilijkheidsgraad waarbij concepten geleidelijk worden geïntroduceerd.
Combinatie van visueel en tekstueel
- Sommige platforms, zoals Code for Life, tonen zowel de visuele blokken als de bijbehorende code.
Peer learning en sharing
- Platforms als Scratch en Pixelpad.io gebruiken het delen van projecten en leren van elkaar aan.
Programming Game studie
Een studie gedaan in 2012 waarin een eigen game is gemaakt gebaseerd op het soort Visual Programming dat ook wordt gebruikt in Scratch geeft deze resultaten: ”The paper argues that current serious games specifically developed for learning programming purposes do not consider a deep game-play for developing computational thinking skills. To address this problem, the paper describes program your robot, a serious game aimed at integrating core computational thinking skills and various programming constructs as an integral part of the game-play. Twenty five students participated in an exercise to evaluate program your robot and it was found that participants enjoyed playing the game. Furthermore, participants reported that this type of approach can enhance the problem solving abilities of students who are learning introductory computer programming.” (Kazimoglu et al., 2012)

VR-OCKS
VR-OCKS: “This paper presents a prototype of a virtual reality system to teach the basic concepts of programming called VR‐OCKS. The system is inspired by other visual languages such as Scratch or Kodu, and it works by proposing to the user the resolution of simple puzzles in a 3D environment.” (Segura et al., 2019)
Conclusion: “The prototype is aimed at children of approximately 12 years old, with the intention of helping them to develop an algorithmic thinking, and attracting them to the world of programming. The experimentation carried out showed the suitability and viability of the proposal, highlighting a good learning curve of the concepts and a correct set of metaphors for the different actions that can be used in a program and their management” (Segura et al., 2019)
VWorld
“In this paper, we present VWorld, a VR system for learning programming. This system attempts to integrate the existing VR technologies naturally to achieve two major contributions: 1) Immersive experience for innovation and programming learning: Leverage VR to create an immersive platform for children to create and learn programming, enabling children to be innovative and to create digital learning environments for their own use. 2) Customized nonlinear learning experience: Engage children in the learning process by allowing children to create and customize their learning experience. Children can follow the non-linear path at different learning paces, for different learning styles.” (Jin, 2020)
WizardOfMath
“As one of the important education subjects’ mathematics difficulties can lead to tension and be described as the most hated or feared subject. This study aims to create a puzzle game application with RPG elements called WizardOfMath to increase a user’s interest in mathematics subject.” (Mulia Pratama et al., 2023)
“Based on the description of the previous chapters, it can be concluded as follows:
- A puzzle game application called WizardOfMath can display math problems with RPG elements.
- Based on the results of user evaluation data, the WizardOfMath game shows do not feel pressure in playing the WizardOfMath game and feel that the WizardOfMath game does not have a negative effect.
- For the further research, this application can be improved by adding more questions at each level, other materials (besides mathematics) from the learning media that have been produced and improving quality graphics and sound effects such as animated characters and enemies.” (Mulia Pratama et al., 2023)
VR-Based Coding
Een studie gedaan in 2022 over ‘virtual reality system for programming learning’ waarin codeer lessen zijn gegeven met behulp van een VR systeem zegt:
“Our results showed that the VR-based learning system (both the high and low interactive modes) was more beneficial for enhancing students’ programming learning achievement than the control group, for the logic-oriented concept in particular. However, there was no significant difference in programming learning achievement between the high and low interactive VR groups as we had expected. Having said that, according to the students’ feedback in the interview, some students in the high interactive VR group did have more positive experiences of learning the programming concepts.” (Kao & Ruan, 2022)
Bronnen
Bronnen
Kao, G. Y., & Ruan, C. (2022). Designing and evaluating a high interactive virtual reality system for programming learning. Computers in Human Behavior, 132, 107245. https://doi.org/10.1016/j.chb.2022.107245
Mulia Pratama, Yanfi Yanfi, & Pualam Dipa Nusantara. (2023). WizardOfMath: A top-down puzzle game with RPG elements to hone the player’s arithmetic skills. Procedia Computer Science, 216, 338–345. https://doi.org/10.1016/j.procs.2022.12.144
Jin, Q. (2020, June). VWorld: An Immersive VR system for learning programming [conference paper]. College of Science and Engineering. https://cse.umn.edu/cs/feature-stories/vworld-immersive-vr-system-learning-programming-conference-paper
Segura, R. J., Pino, F. J., Ogáyar, C. J., & Rueda, A. J. (2019). VR‐OCKS: A virtual reality game for learning the basic concepts of programming. Computer Applications in Engineering Education, 28(1), 31–41. https://doi.org/10.1002/cae.22172
Kazimoglu, C., Kiernan, M., Bacon, L., & Mackinnon, L. (2012). A Serious Game for Developing Computational Thinking and Learning Introductory Computer Programming. Procedia - Social and Behavioral Sciences, 47, 1991–1999. https://doi.org/10.1016/j.sbspro.2012.06.938