Le projet AlgoTouch

Membres du projet

Michel Adam

Maître de conférences en informatique

Enseigne la programmation au département informatique de l’IUT de Vannes

Moncef Daoud

Maître de conférences en informatique

Enseigne la programmation au département Mathématiques, Informatique et Statistiques de la Faculté des Sciences à Lorient

Patrice Frison

Professeur émérite en informatique

Il a enseigné la programmation sous différentes formes au département Mathématiques, Informatique et Statistiques de la faculté des Sciences à Vannes. Il est membre du laboratoire IRISA à Vannes.

Le projet AlgoTouch

Le début

Le projet a été initié en 2013 par Patrice Frison. Il s’agissait de développer un logiciel d’aide à l’enseignement de la programmation pour les débutants. Son objectif est de permettre à un enseignant d’informatique d’expliquer et de construire, de façon interactive, des programmes de bases pour des étudiants débutants. Le logiciel utilise la métaphore du tableau blanc : l’enseignant peut manipuler directement les données d’un programme comme il le ferait avec un tableau blanc mais évidemment plus proprement! 

 

Mais le système offre aussi la possibilité d’enregistrer une séquence d’actions puis de la rejouer. Le système est capable de gérer des conditionnelles, des boucles et des macro opérations. En définitive, l’enseignant ne fait que manipuler des variables, index et tableaux et le système fabrique automatiquement le programme. 

 

Le logiciel, appelé AlgoTouch, a été développé en Java/Swing et peut s’exécuter sur PC Linux, Windows, Mac. Il est particulièrement intéressant en utilisant un tableau blanc interactif (TBI). Avec ce TBI, les actions de l’utilisateur s’effectuent avec son doigt directement sur l’écran projeté au tableau, ce qui rend l’usage de l’outil encore plus intuitif et démonstratif. Les premières versions de démonstration ont été réalisées dès 2014. Le logiciel permet par exemple de créer des algorithmes de tri (tri par sélection, par insertion et par fusion), et des algorithmes de recherche de séquences dans des tableaux. Ces travaux ont été présentés en 2014 et 2015 à la conférence ITiCSE (Innovation and Technology in Computer Science Education). 

Evolution du projet

Le projet a été renforcé avec la participation de Moncef Daoud en septembre 2015, puis  celle de Michel Adam, en avril 2017. Si l’objectif initial du logiciel AlgoTouch était d’assister un enseignant d’informatique pour illustrer la construction d’un programme, il s’est avéré que le logiciel pouvait aussi être un outil utilisable par des élèves et des étudiants pour réaliser leurs propres programmes.

 

Constitué ainsi autour d’une équipe, les objectifs du projet ont été les suivants : 

  • créer une bibliothèque de programmes conçus avec AlgoTouch, 
  • tester le logiciel avec différents publics (enseignants, élèves, étudiants) pour connaître leur sentiment, 
  • améliorer le logiciel compte tenu des avis des utilisateurs, mettre en place des expérimentations avec des élèves et des étudiants pour évaluer l’apport d’AlgoTouch pour l’apprentissage de la programmation par rapport à des approches classiques, 
  • faire connaître AlgoTouch auprès de la communauté française et internationale en publiant dans des conférences ou ateliers

Le projet actuel

Depuis Septembre 2022, une nouvelle version est disponible sur le site. Elle permet de lancer AlgoTouch directement sur le navigateur sans avoir besoin de le télécharger. Cette version contient aussi de nombreuses améliorations, tant au niveau de l’interface utilisateurs, qu’au niveau des fonctionnalités. Deux points méritent d’être soulignés concernant cette version:
  1. bien qu’AlgoTouch utilise un langage de programmation qui lui est propre, on peut désormais visualiser en temps réel la traduction dans les langages suivants : Python, Java, C et C++. Ces programmes peuvent être copiés simplement par copier-coller dans un éditeur.
  2. on peut ouvrir directement un programme AlgoTouch par un lien sur une page web ou depuis un mail. Par exemple cliquer sur ce lien pour tester le tri par sélection. Sur la page, cliquer successivement sur :
    • pour préparer l’exécution puis
    • pour voir son déroulement automatique.

Travaux et publications

Conférences internationales avec comité de sélection

M. Adam, M. Daoud, P. Frison : Direct Manipulation versus Text-based Programming – An experiment report, In Proceedings of the 2019 conference on Innovation & technology in computer science education (ITiCSE ’19), ACM editor. Aberdeen, Scotland UK, July 2019.

 

M. Adam, M. Daoud, P. Frison, Teaching and Learning How to Program Without Writing Code, In Proceedings of EMENA-ISTL (Information Systems and Technologies to Support Learning) 2018 Conference. Springer Editor. Fes Marocco, October 2018.

 

P. Frison, A Teaching Assistant for Algorithm Construction, In Proceedings of the 2015 conference on Innovation & technology in computer science education (ITiCSE ’15). ACM editor. Vilnius Lithuania, July 2015.

P. Frison, AlgoTouch: a Programming by Demonstration Tool for Teaching Algorithms, Poster, In Proceedings of the 2014 conference on Innovation & technology in computer science education(ITiCSE ’14). ACM editor, Uppsala, Sweden, 334-334. July 2014.

Conférences internationales francophones

M. Adam, M. Daoud, P. frison : Construction d’un programme combinant exécution partielle et manipulation directe, 10ème Conférence sur les Environnements Informatiques pour l’Apprentissage Humain, EIAH’2021, Fribourg, Suisse 2021.

 

M. Adam , M. Daoud et P. Frison : Expérimentation du passage d’une activité débranchée au programme, Poster, 9ème Conférence sur les Environnements Informatiques pour l’Apprentissage Humain, EIAH’2019, Paris 2019.

 

P. Frison, M. Daoud, M. Adam : Transition didactique de l’activité débranchée à la programmation avec AlgoTouch. In : Didapro 7 – DidaSTIC. De 0 à 1 où l’heure de l’informatique à l’école. pp. 1–17. Lausanne, Suisse, Février 2018, https://hal.archives-ouvertes.fr/hal-01753119

 

P. Frison et M. Daoud : Processus de transition de l’activité débranchée à la programmation avec AlgoTouch, 8ème Conférence sur les Environnements Informatiques pour l’Apprentissage Humain, EIAH’2017, Strasbourg 2017.

Séminaires et vulgarisation

P. Frison et M. Daoud, Un logiciel ludique pour apprendre à programmer, Nuit de la Science, Vannes et Lorient, Octobre 2016, 2017, 2018, 2019

 

P. Frison, From Unplugged Activity to Programming with AlgoTouch, Université de Santa Clara, USA, Mai 2017

 

P. Frison et M. Daoud, Démonstration AlgoTouch, Journées Open Education, Nantes, Mars 2017

 

P. Frison et M. Daoud, AlgoTouch – Apprentissage ludique et tactile de la programmation, Journée du numérique – des solutions au service de l’éducation et des entreprises, IUT de Vannes, Mars 2017

 

P. Frison, AlgoTouch : une application d’aide à l’enseignement de l’algorithmique, 1ère journée SUPAPP : APPlicatifs pour l’enseignement SUPérieur, Université Bretagne Loire, Septembre 2016

 

P. Frison, AlgoTouch : une application d’aide à l’enseignement de l’algorithmique, Université de Corté, Septembre 2016

Vidéos

P. Frison, AlgoTouch short tutorial, 2015, https://www.youtube.com/watch?v=wyEUgNAaXOU

P. Frison, AlgoTouch short demo, 2015,
https://www.youtube.com/watch?v=zTxWjD-Jm-c

Frison, Getting Started with AlgoTouch – Part 1, 2016, https://www.youtube.com/watch?v=kgqWDxCDlks

P. Frison, Getting Started with AlgoTouch – Part 2, 2016, https://www.youtube.com/watch?v=lq5GdxDYhlM

P. Frison, Creating a Selection Sort Algorithm with AlgoTouch, 2016, https://www.youtube.com/watch?v=V8wBxhJ2884

P. Frison, Creating an Insertion Sort Algorithm with AlgoTouch, 2016, https://www.youtube.com/watch?v=d0ndvXbnyMA

M. Adam, M. Daoud, P. Frison, AlgoTouch en 256s, 2017, https://www.youtube.com/watch?v=krZXYBlz3NU