Innovation Pédagogique et transition
Institut Mines-Telecom

Une initiative de l'Institut Mines-Télécom avec un réseau de partenaires

Sur des nouveaux outils pour enseigner le langage C en ligne

Un article repris de https://tipes.wordpress.com/2017/03...

L’équipe des MOOC sur le langage C (MOOC le plus innovant de l’année) nous a invité à découvrir les outils qu’elle a développés pour améliorer l’apprentissage du langage C. Le principe de base est que beaucoup de choses peuvent s’exécuter depuis ou mieux dans le navigateur, en tout cas tout ce qui est nécessaire pour apprendre, pour rendre la prise en main la plus simple possible pour l’apprenant.

Trois outils complémentaires, élégants et originaux ont été intégrés, tous basés sur du logiciel libre :

  • codecast, qui permet d’enregistrer la voix et l’éditeur du prof, mais en redonnant la main à l’apprenant directement sur le code quand il le désire. C’est un vrai plus par rapport aux screencasts classiques, puisqu’il est possible de pousser le professeur et de faire à sa place. J’adore ;
  • taskgrader, qui permet d’éditer, compiler et valider du code, et donc d’évaluer l’apprenant. Cet outil permet donc à l’étudiant de faire du code et d’avoir un retour sur son code. Là encore, on donne la main à l’étudiant. C’est une technologie que l’on a déjà vu dans d’autres MOOC ou formations en ligne (codecademy, khan academy, mais donc aussi France IOI…), mais ici le compilateur C est intégré ce qui est original. Le choix est également de montrer la différence par rapport à ce qui est attendu plutôt que de laisser un environnement d’affichage libre ;
  • weblinux, permet d’avoir un environnement linux directement dans son navigateur, qui permet de développer du code C et de le tester sur un véritable système d’exploitation.

Bref, il est donc possible d’embarquer dans un navigateur un environnement de développement avec son compilateur (codecast) et sa machine cible d’exécution (weblinux), ce qui rend l’apprentissage plus simple, hors de toute contrainte liée à l’ordinateur sur lequel on apprend.

On doit ces développements à Rémi Sharrock et à l’association France IOI qui promeut l’apprentissage du code et de l’algorithmique, avec Mathias Hiron notamment.

D’un point de vue plus technique, cela a été pour moi une bonne mise à niveau. Un navigateur est bien devenu un système à part entière dans lequel il est possible de faire exécuter ce que l’on veut : un compilateur, un système d’exploitation (tournant lui même sur un émulateur de processeur OpenRisc, c’est le projet libre jor1k) comprenant les outils linux qu’on voudra y adjoindre. Les outils d’évaluation de code sont par contre plus classiquement déportés sur des serveurs cloud, mais là aussi le projet taskgrader est accessible et open source. Par contre, ce code est prévu pour tourner sur des services clouds spécifiques. Il est intégré dans les MOOC via l’interface classique LTI, classique dans ce contexte.

Le couplage d’un outil interactif et d’un enregistreur ne semble pas être très difficile à développer, mais l’idée est très séduisante pour renforcer la capacité d’interagir de l’apprenant. Nos présentateurs ne se sont pas étendus sur la chose.

Après cela vous serez prêts à utiliser un environnement intégré dans votre navigateur comme cloud9, sur lequel les outils ci-dessus se sont inspirés en intégrant des fonctionnalités pour accompagner l’apprenant. Mais si vous êtes débutant en programmation, n’hésitez pas à utiliser ces outils en vous inscrivant sur le MOOC « ABC d langage C », les enseignants sont des super développeurs et des super pédagogues.

abc-du-langage-c-1030x625_q85_crop-smart_upscale

 


Licence : CC by

Portfolio

Répondre à cet article

Qui êtes-vous ?
[Se connecter]
Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Suivre les commentaires : RSS 2.0 | Atom