About Silent Teacher
In a nutshell
A minimalist game where beginners can discover what coding is all about and the key concepts behind code, with no explanations given. Through several series of questions, the player is led to guess the rules of this language and learn from his own mistakes.
Objective
This game is an introduction to the concept of programming. After finishing Silent Teacher, a player will not necessarily be able to write code, even basic one, but has an overview of what code is and has mastered a few basic concepts about it. Could eventually be used to get over the mental block beginners often experience when trying to understand programming or mathematical equations.
Target
For beginners who have never coded - those who always wanted to give it a try but were never brave enough to start, or else people who, out of curiosity, want to know a bit more about it (for example, to better understand the job of their partner, friend or work colleague). Warning: a minimum ability to do arithmetics is necessary, not adapted to very young children.
Specificities
No instructions, no text, the player is first presented with questions that seem like simple arithmetics, then gradually introduced to more difficult problems, and ends up understanding important concepts by trial and error.
Well adapted to people who do not feel confident or have a mental block when it comes to maths or IT and who would be put off by an explanatory text.
This also applies to the many people who develop a complex as soon as a friend or a teacher tries to explain something technical to them. Good news for them: in Silent Teacher there is nothing of all that, you are left alone to figure it all out, no one to explain anything to you, the teacher is silent !
Bonus: because there is no explanation and no text in the game, it is accessible to any player whatever his language !
Key concepts
Even if the game is quite short, it still introduces the player to most of the basic concepts of programming:
- variables
- different types of variables (numbers, chains of characters, Boolean algebra, tables)
- the difference between assignment and comparison
- functions
- conditions
Which programming language ?
For the moment, Silent Teacher exists for Python and JavaScript.
A few details
Several small functionalities make it easier for the user to play the game without any instructions. A beginner will probably not notice them - and that’s the whole point - but these do contribute to make the game a more pleasant experience. They include the following:
- When the player’s answer is incorrect, he is presented with another question of the same kind. The questions are already fixed in advance, but thanks to a random selection of numbers and letters in the case of a wrong answer, the player has to work things out by trial and error.
- We deliberatelly selected low value numbers in the questions, especially for multiplications to ensure the game does not require high calculus skills. Calculus is supposed to be the reassuring aspect of the game, the one that attracts the player and makes him think : “5+6, that’s easy, I can answer this!”
- Some letters are not used, to avoid some confusions between letters and numbers (o / zero, l / 1, s / 5).
- If the player makes more than one mistake on the same type of question, the program will ask him several times similar questions even if he answers correctly the next one, just to make sure he has really understood the concept. For this reason, someone who answers all questions correctly will be asked in total less questions than someone who keeps making mistakes.
- When the player answers correctly, a big green smiley appears. When he makes a mistake, the error emoticon is more discrete. The idea is that a good answer should be promoted but that mistakes should not be strongly penalized. In the same frame of mind, there is no score displayed on the page, we don’t want the player to feel he is taking an exam.
- At the very end of the game, the number of mistakes is displayed: at that point, it’s fine since the player has finished the game and is no longer going to be put off or feel insecure. This functionality targets more competitive players who complained about not seeing their score.
- The interface is minimalist, we want players to be focused on the questions and nothing else, and once again we don’t want any teacher around. When the player finishes a level, an abstract spiral shaped design appears. The player will gradually realize that it is a sort of recap of his progress. The button to access the recap only appears after the player finishes several levels.
- The recap is in fact a clickable menu but this is not emphasized in any way since we prefer our player to keep answering questions one after another. He will eventually realize how to use the recap when he needs to, probably at the end of the game, if he wants to go back to previous questions.
- The browser automatically saves the player’s progress (without letting him know).
- We have detailed statistics allowing us to know how many players get which answer wrong, how many attempts they need before they answer correctly and the average response time. This allows us to adjust the time if some questions seem too difficult to answer.
Shortcomings
- We should develop a mobile app version of the game.