Si vous enseignez SQL, vous fournissez probablement à vos étudiants une base de données et des énoncés de requêtes SQL à écrire sur cette base. Quand leurs requêtes ne donnent pas le résultat attendu, vous leur faites comprendre pourquoi, leur donnez une indication ; à un moment, vous décidez de corriger et de passer à la question suivante.
SQLab (SQL adventure builder) est un nouvel outil visant à intégrer ce mécanisme dans une base de données « métier » avec les métadonnées des exercices correspondants : énoncés, corrections, indications, explications, etc. Il produit une nouvelle base entièrement self-contained, qui permet aux étudiants de faire les exercices à leur rythme, d'obtenir de l'aide, de valider leurs réponses, etc. La progression peut être libre (exercices indépendants) ou guidée (aventure). Dans ce dernier cas, une réponse correcte permet de décrypter la question suivante.
Il existe sur internet de nombreux exercices de SQL, mais très peu d'aventures, hormis :
- SQL Island (Université technique de Kaiserslautern) : la progression est guidée (chaque question débloque la suivante), mais la base n'est pas self-contained (il faut un site web pour la faire fonctionner) ;
- SQL Murder Mystery (Northwestern University, Chicago) : la base est self-contained (les données et les métadonnées sont contenues dans un seul dump SQL), mais la progression n'est pas guidée.
SQLab est à ma connaissance le premier outil capable de créer des aventures à la fois guidées et self-contained. Bien sûr, rien n'empêche d'écrire un site web autour d'une base SQLab (un tel site pourrait d'ailleurs être complètement générique, et cela fait partie des développements possibles du projet).
Pour mieux comprendre le principe de SQLab, le mieux est de jouer avec l'une des bases fournies, notamment sessform (en français), qui comprend des exercices indépendants de niveau élémentaire, un examen blanc de niveau intermédiaire, ainsi qu'une aventure plus complexe.
Un article et une documentation sont en cours d'écriture. Si d'ici-là vous souhaitez vous lancer dans la création de votre propre collection d'exercices, étudiez le notebook source de SQLab Island (en anglais) dans sa version PostgreSQL, MySQL ou SQLite.
Je suis Aristide Grange, de l'Université de Lorraine. J'ai mis au point ce système pour mes étudiants au cours des trois dernières années. Je le rends aujourd'hui public (licence MIT), accompagné de plusieurs bases (licence CC BY-SA 4.0), dans l'espoir qu'il sera utile aux collègues. Tout retour constructif est le bienvenu. Pour les problèmes et les bogues, merci d'ouvrir une issue GitHub.
Partager