Migration de Sakai vers Moodle

Voici quelques notes concernant mes essais de migration de la plateforme Sakai vers la plateforme Moodle.

Introduction

Qu’il me soit d’abord donné le temps de justifier cet article. Ayant fait fonction de chargé de mission « Campus numérique et pédagogie » pendant une dizaine d’années au sein de mon établissement, l’Université du Littoral – Côte d’Opale, j’eus pendant cette période, la responsabilité de notre plate-forme pédagogique. Le choix de Sakai, plutôt que Moodle déjà bien implantée en France à la fin des années 2000, s’est effectué par souci de continuité avec notre ancienne plate-forme, un fork (c’est-à-dire un dérivé maison) de Ganesha (Open Source à l’époque, elle est aujourd’hui commercialisée). La navigation, le système d’outils, le dépôt de fichier, son système d’administration décentralisé bref l’ergonomie générale de Sakai s’approchait de notre ancien LMS dont le développement local ne pouvait plus être soutenu sérieusement. La technologie de Sakai, basée sur le langage Java était déjà connue de notre équipe technique. De plus, elle était issue de la même communauté internationale qui développait uPortal ou le CAS. En 2010, seuls 4 établissements français utilisaient Sakai et parmi eux, deux seulement comme LMS principal, l’UPMC et nous. Il y a quelques années, l’UPMC a finalement changé de nom pour devenir Sorbonne Université et de plate-forme pédagogique en choisissant Moodle, comme plus de 90% des universités françaises.

Tous les ans, T.Koscielniak, directeur du numérique au CNAM Paris, publie le taux d’implantation de Moodle dans les universités françaises

Si Sakai a semblé être un bon choix au départ, au fil du temps, alors qu’on aurait pu supposer une progression du taux d’adoption dans le monde francophone, étant donné son ergonomie qui laisse toute liberté pour l’organisation de ses contenus, c’est finalement l’inverse qui s’est produit.

Alors qu’au début des années 2010, les traductions en français étaient assurées conjointement par les équipes de l’UPMC et de l’ULCO, les dernières traductions ont été péniblement (c’est une tâche très chronophage) effectuées par l’équipe nordiste uniquement (c’est-à-dire 2 personnes…).

Classement par taux d’achèvement des traductions Sakai (plateforme de traduction collaborative Transifex): en mai 2021, la langue française (de France) se classait 3ème

Qu’est-ce qui motive un changement de LMS ?

Le premier changement de LMS à l’ULCO en 2009 avait été justifié par la difficulté de maintenir et faire évoluer une plate-forme maison. Cela a été le cas également pour d’autres établissements du supérieur (l’UPJV par exemple). Ce n’est cependant plus le cas en 2021 pour l’ULCO : la plate-forme est mise à jour régulièrement, la puissance des serveurs a été revue à la hausse dès le premier confinement pour tenir la charge, ses traductions en français sont suffisamment complètes (seuls quelques outils d’administration comportent quelques lacunes, ce qui n’impacte que l’équipe qui gère la plate-forme), le nombre d’espaces créés (sur Sakai, on parle d' »espaces » et non de cours car la plate-forme peut aussi bien accueillir des enseignements classiques, des projets de recherches, des groupes de travail administratifs, etc) avoisine les 3000 (mai 2021) et ses usages sont multiples : outre l’enseignement (que cela soit complètement à distance ou en présentiel enrichi), de nombreux projets collaboratifs y sont hébergés. Tout membre de l’établissement peut créer lui-même un espace, y inviter des membres internes ou externes (avec une simple adresse de courriel) et le configurer comme il le souhaite (Sakai, contrairement à Moodle, propose un système d’outils à partir desquels on crée des contenus. Par exemple, l’outil de Tests & Quiz permet de créer des quiz pour un espace donnée. Sur Moodle, l’approche est plutôt celle d’un parcours : à un endroit du parcours, si on a besoin d’un test, alors on le crée). Alors qu’est-ce qui peut bien amener un établissement à sauter le pas d’un tel changement ? Ce ne sont sans doute pas des motivations pédagogiques : Sakai est très modulable et chaque enseignant a le loisir d’organiser ses contenus comme bon lui semble, avec bien plus de souplesse que sur Moodle, où le conducteur de cours est très linéaire. Sakai permet tout type d’organisation de plan de cours : linéaire ou pas, avec contrôle de la progression ou pas, dans le site d’un site foutraque ou au contraire à l’organisation militaire. Bref, Sakai est un système qui offre à l’enseignant de multiples manières d’organiser son cours en ligne. Cherchons encore. Une raison technique ? Certes, Dr Chuck, alias Charles Severance, affirmait en 2019 que s’il avait à créer un LMS aujourd’hui, il le ferait en langage Python, qu’il serait modulable avec un magasin d’applications et que tous ses contenus seraient exportables (ce qui suppose une standardisation du format d’exportation)

C.Severance lors du congrès Apereo 2019 à Los Angeles (présentation complète)

Autrement dit, que ce soit Sakai ou Moodle, ces systèmes seraient aujourd’hui technologiquement plus ou moins has-been à cause notamment de leur langage de développement (Java pour Sakai et PHP pour Moodle) et de leur architecture interne. Ceci étant, des mises à jour de Sakai ou de Moodle sont publiées régulièrement, avec à chaque fois, de nouvelles fonctionnalités, leurs communautés d’utilisateurs respectives sont très fréquentées, ce sont donc des systèmes qui me semblent satisfaire pleinement les usagers.

Bref, hormis le besoin de « faire comme tout le monde », pas grand chose ne justifiait cette migration. Pour tout dire, ce fut une décision politique.

Comment migrer de Sakai à Moodle ?

La première réponse qui me vient à l’esprit est : « en tâtonnant »… Certes, les deux plateformes reconnaissent le format CC mais lorsqu’on tente d’exporter à ce format depuis Sakai, on obtient un fichier de 2,5Go pour un seul cours même si ce dernier ne comporte que du texte. Et Moodle refuse de l’importer. Il faut donc réfléchir autrement : quels sont les contenus à migrer ? comment fonctionne Moodle et quelles sont les différences ? n’est-ce pas le moment de passer à d’autres approches, par exemple mettre en place des quiz utilisant la norme Scorm et conçus avec un outil tel que Scenari qui permet également la conception de cours complets et interactifs (et facilement implantables sur Moodle), notamment avec le modèle documentaire Opale ?

Après plus d’une année d’utilisation de Moodle, c’est surtout la migration des quiz qui m’a pris du temps, à tel point que j’ai changé complètement mon approche en matière d’évaluation normative, mais c’est une autre histoire. En fait, plutôt que de tenter de migrer directement mes quiz de Sakai à Moodle, je les ai d’abord implanté sur Scenari/Opale puis réinjecté dans Moodle grâce à une extension (disponible ici) qui permet d’exporter des exercices Opale vers Moodle via un format XML (ce qui met un peu à mal les images).

Évidemment, certains ont déjà pensé au business du changement de LMS (même si on peut supposer que ça reste une niche) comme https://lms.relokia.com/migration-services/ par exemple.

Post’Em like sous LTI

En français, ça devrait donner quelque chose comme : une sorte de « bulletin de liaison » compatible avec la norme IMS LTI. Un peu moins sexy certes, mais qui n’enlève rien à ses fonctionnalités. Similaire à celui de la plate-forme Sakai mais disponible pour n’importe quel LMS capable de fonctionner avec la norme IMS LTI, l’outil que j’ai développé sous PHP/jQuery vous rendra un service approximativement équivalent.

Mais à quoi ça sert ?

Il existe des enseignant·e·s qui gèrent leurs notes grâce à un tableur dans lequel on peut à la fois consigner des valeurs numériques (notes, coefficient, numéro de groupe, code de la porte d’entrée du labo, etc), des résultats de calcul (moyennes, sommes, etc.) ou du texte (appréciation, commentaire, mot de passe, etc.). La logique veut que l’on va créer une ligne par étudiant·e, ligne dans laquelle on indiquera les informations le concernant. Mais comment peut-on ensuite communiquer à chaque étudiant·e les informations le ou la concernant ? C’est là où l’outil de bulletin de liaison entre en fonction : coté tableur, on exporte, au format CSV, la feuille que l’on souhaite publier et l’outil se charge de ne montrer, à chaque étudiant·e que les informations le ou la concernant. Bien entendu, l’enseignant·e voit l’ensemble du contenu.

Mais comment ça marche ?

Voici les explications en vidéo (le pdf de la présentation est disponible sous la vidéo) :

Mais c’est où ce truc ?

C’est ici : https://github.com/eduquenoy/postemlike

Connecter Moodle à Sakai

Présentation

Il est tout à fait possible de connecter à un LMS tel que Sakai, une plate-forme Moodle. Par connexion, on entend :

  • permettre à un usager de la plate-forme de départ, de se connecter de manière transparente, c’est-à-dire sans avoir à saisir d’identifiant, à la plate-forme d’arrivée
  • transmettre des informations telles que nom/prénom et email de la plate-forme de départ à la plate-forme d’arrivée
  • transmettre des notes d’évaluation de la plate-forme d’arrivée vers la plate-forme de départ

Pour faire simple, on considéra que la plate-forme Moodle est un outil de la plate-forme Sakai (c’est comme cela que l’utilisateur final la verra)

Comment faire ? C’est là qu’intervient un protocole LTI développé par IMS Global, et disponible sur les plates-formes telles que Sakai, Moodle ou Chamilo. La page des certifications d’IMS permet de savoir si l’outil que vous utilisez est compatible LTI et pour quelle version de ce protocole.

Problèmes

Connexion Sakai/Moodle

J’utilise actuellement Firefox comme navigateur par défaut en version 96. Ce navigateur a introduit un réglage par défaut au niveau des cookies : sameSite="Lax"

Ne m’en demandez pas plus, tout ce que je sais, est que ce réglage empêche l’ouverture de Moodle dans une fenêtre de Sakai. On est donc obligé d’ouvrir Moodle dans une nouvelle fenêtre (ou un nouvel onglet). Rien de dramatique mais on perd un peu la notion d’outil intégré à Sakai. La solution actuelle est de modifier la configuration de Firefox :

  • dans la barre d’adresse de Firefox, saisissez about:config puis validez
  • une page d’avertissement pouvant apparaître, cliquez alors sur Accepter le risque et poursuivre pour continuer
  • dans le moteur de recherche, saisissez maintenant network.cookie.sameSite.laxByDefault et passez le à false
  • saisissez ensuite dans le moteur de recherche network.cookie.sameSite.noneRequiresSecure et passez le également à false

Voilà, ça devrait fonctionner maintenant

Écran tactile et MacOs

Si l’écran MacBook n’est pas, en 2021, encore tactile, ce n’est pas une raison pour ne pas pouvoir connecter un écran tactile externe. Mais pour cela, il faut un driver. Si sous Windows, les écrans courants sont reconnus nativement, c’est plus compliqué chez Apple (euh, c’est pas la société Apple qui a été parmi les premières à commercialiser un smartphone … tactile ??)

Une solution existe heureusement, et est fournie par Touch-Base. Rendez vous sur la page des drivers et commencez par télécharger un outil qui identifiera votre écran tactile (si vous connaissez le modèle, vous pouvez complétez manuellement le formulaire disponible sur la page des drivers). Il vous sera ensuite demandé de saisir un formulaire et vous recevrez, quelques minutes après, un lien de téléchargement du bon driver.

Et voilà !

PS : il y a juste un petit problème, c’est payant semble-t-il… 😢 Mais à ce jour, ça fonctionne sans avoir eu à débourser le moindre denier !