Bonjour
Comme je l’ai annoncé sur le discord des dev et de la rédaction, en cuisinant un curry à la patate douce, j’ai eu une épiphanie. Certes j’ai un peu de retard mais voilà, je me suis dit "mais en vrai, avec ce qu’on a aujourd’hui, je suis sûr, en 50 lignes de JS je peux faire un système de quizz qui sera implémentable rapidement et tout".
Alors j’ai proposé une chose : je fais un POC, c’est à dire une démonstration que c’est possible et qui permet de voir quelles sont les choses dont on a réellement besoin pour intégrer tout ça proprement. Si le POC est proche de ce dont on a besoin, on le release après un peu de nettoyage, sinon on implémente ce dont on a besoin puis on release le quizz complet.
POC n°1
Mon idée de base est celle-ci : je me limite pour l’instant aux QCM.
Dans un tuto, l’auteur a un nouveau bouton "Ajouter un Quizz". Lorsqu’il appuie sur ce bouton, il arrive sur l’interface habituelle : un éditeur de texte bateau.
Et là, il va écrire la correction de son quizz.
Par exemple :
# Question 1
- [ ] mauvaise réponse
- [ ] mauvaise réponse
- [x] bonne réponse
- [ ] mauvaise réponse
- [x] bonne réponse
# Question 2
- [ ] mauvaise réponse
- [ ] mauvaise réponse
- [x] bonne réponse
Tant que le tuto n’est pas publié, lui il ne voit que la correction, mais le jour où le tuto est publié le visiteur, lui, il voit le formulaire vide avec un bouton "valider le quizz".
Et quand il appuie dessus, ça fait automatiquement la correction :
Comme je l’ai dit ce n’est qu’un POC, alors les couleurs ne sont pas celles qui seront utilisées à la fin. Mais ça donne déjà une idée de ce qui est possible.
Bon, par contre, avec cette solution, il a fallu 70 lignes de JS et un poil de python/html
POC n°2
Fort de cette victoire, j’ai donc posté mes premières preview sur le discord et ouvert une PR sur notre github.
Là bas @Nek a proposé qu’on puisse donner des explications lors de la corrections. Cette idée rentre parfaitement dans mon concept de "l’auteur écrit la correction, zds propose le quizz" mais il me faut un peu de structure.
Sous les conseil de @Amaury, j’ai donc fait ainsi : plutôt que de mettre la liste de réponses les unes à la suite des autres, j’utilise le bloc neutre pour présenter la question : grâce à la possibilité de mettre un titre, vous avez la question qui est bien présentée. Et pour mettre l’explication, je met un autre bloc neutre dans mon corrigé.
Une fois le tutoriel publié, l’utilisateur voit ça :
Et lors qu’on répond on a donc :
On peut le constater le status de la réponse est mieux mis en avant et l’explication apparaît. Ce que vous n’avez pas vu c’est que maintenant que j’ai de la structure je peux aussi remonter des statistiques question par question : ai-je bon ou pas? Quelle réponse donnée?
POC N°3 (WIP)
Parlons-en des statistiques, la prochaine étape de mon POC sera d’ajouter des graphes dans les statistiques du tuto. Je dois vous l’avouer, pour l’instant, je sais pas comment les afficher mais ça viendra.
POC N°4 les texte à trou (peut être)
L’idée serait de dire que lorsqu’on est dans un quizz, dans un bloc neutre de premier niveau (donc pas dans l’explication), on remplacerait les objets stylés "touche" (||touche||
touche) par des champs texte et qu’on afficherait la correction de la même manière.