In terms of problem-solving activities, there might be nothing more challenging and rewarding than LightBot.
The basic idea is to code your character around a path, lighting every bulb along the way – with each path becoming more complex as the player advances. Children simply use their finger to drag-and-drop their piece of code into a slot on the right-hand side of the screen.
Not only does the path become more complex, but the codes themselves do also.
Rather than simply coding the character around the path, children will have to learn to use “procedures” as well. They’re given a specific number of boxes to use to complete their code, so they can use procedures to help maximise the characters actions.
Procedures are labelled P1, P2 or P3 etc and are boxes where children can store pieces of code, which can then be put into their shorter code as P1 or P2 etc. Basically, if a child wants to use the code “F, F, L” and they want to use it more than once in their code, then they can drag “F, F, L” into P1.
Then all they need to do is drag-and-drop the box which says P1 into their main code and the character will understand this particular box to mean “F, F, L.” This allows children to write longer code without going over their size limit in their main code.
It’s worth noting that each level comes with an in-depth tutorial for the children to follow.
This app can be used to teach a wonderful problem-solving mathematics lesson, whilst also helping to highlight several points on the computing curriculum as well (computer programming strand.)