David Roche nous propose un compte-rendu des échanges lors du colloque « Enseignement de l'informatique en Suisse romande » Les échanges ont été très intéressants que ce soit pendant les différentes interventions ou pendant « les pauses » ou les repas. Très intéressants, mais parfois un peu vifs (mais toujours très courtois), visiblement, certaines questions « quasi philosophiques » n'ont pas été tranchées et ne le seront sans doute jamais, j'y reviendrai un peu plus loin. Différents intervenants se sont succédés pendant ces deux jours, je vous propose un tour d'horizon rapide des thèmes abordés et des éventuels débats qui ont suivi. Greenfoot Greenfoot est un logiciel facilitant l'apprentissage de Java, un des concepteurs a fait le voyage depuis le Royaume-Uni pour nous présenter son travail (en anglais...). Ce logiciel a, à mon avis, un très fort potentiel, il me rappelle sur plusieurs points Alice (résultat visible immédiatement à l'écran), les principales différences étant : un affichage 2D au lieu d'un affichage 3D, l'écriture du code au lieu du « cliquer-déplacer-poser » d'Alice. Alice-Java-Android-GWT En commençant ma présentation, j'étais loin de me douter qu'elle allait faire apparaître au grand jour deux conceptions très différentes de l'apprentissage de la programmation. Deux ou trois collègues Suisses ont reproché à Alice d'être trop user friendly (désolé pour cet anglicisme, mais je n'ai pas trouvé de terme plus approprié en français). Pour eux, l'apprentissage de la programmation doit forcément se faire en écrivant du code dans un éditeur de texte, le principe du « cliquer-déplacer-poser » d'Alice, les a « dérangés ». De leur point de vue, il est inutile d'essayer d'amener les élèves à la programmation à l'aide de logiciels comme Greenfoot ou Alice, ces derniers donnant aux élèves une idée fausse de ce qu'est réellement la programmation. Toujours de leur point de vue, il est inutile de se « cacher » derrière ces logiciels, il est tout à fait possible d'intéresser des débutants uniquement en leur faisant écrire des lignes de code (j'espère ne pas trop caricaturer leur pensée). Il faut tout de même dire que cette position était très minoritaire chez les collègues suisses, mais, il me semble qu'une réflexion sur le sujet est nécessaire. Le débat ne s'est pas limité à cet aspect des choses. Les échanges ont été beaucoup plus vifs entre « partisans » de la programmation procédurale et « partisans » de la programmation orientée objet. Les premiers prônent l'approche « historique », les seconds pensent qu'il est inutile (voire même contre-productif) de commencer par la programmation procédurale (le passage procédural-objet ayant laissé quelques mauvais souvenirs à certains membres de l'assistance !). Enfin, nous avons eu aussi droit à l'éternel débat : java ou python ? Brice Canvel a, je pense, bien résumé la situation : « Personne ne détient la vérité, aucune approche n'est meilleure que l'autre, chacun doit prendre le chemin qui lui convient le mieux. » Le système suisse permet ce genre de raisonnement (très grande autonomie pédagogique des établissements), qu'en sera-t-il en France ? Présentation d'un travail de maturité par un élève et examen de maturité Un élève en dernière année de maturité (la maturité correspond, à peu près, à notre baccalauréat général) nous a présenté sa réalisation : un grapheur très évolué réalisé à l'aide de : Javascript + XHTML + CANVAS + UNIBOARD. Nous avons tous été très impressionnés par le travail réalisé par cet élève (d'après son professeur, c'est un bon élève, mais pas exceptionnel...). Le niveau atteint est remarquable. Dans la même idée, 2 enseignants sont venus nous présenter les examens d'informatique de fin de maturité proposés à leurs élèves. Une petite parenthèse, les examens de maturité sont conçus par les propres enseignants des élèves, visiblement, cela ne pose aucun problème, la maturité a bien la même « valeur », quel que soit l'établissement, parenthèse refermée. Ici aussi, le niveau est très bon, les problèmes sont complexes et techniquement très évolués. En résumé les examens (écrit et oral), dans les 2 exemples qui nous ont été présentés, portent sur le hardware et la programmation à l'aide du trio JavaScript + XHTML + CSS. Les élèves qui suivent l'option informatique sont de bons élèves (seulement, environ 10% des élèves atteignent la maturité, la sélection est donc sévère). Au minimum (cela dépend des cantons, comme toujours en Suisse !), ils ont suivi des cours d'informatique pendant 2 ans à raison de 2 heures hebdomadaires (encore une fois c'est un minimum). Ces deux informations permettent de mieux comprendre les compétences exigibles. Utilisation d'une machine virtuelle en option informatique Brice Canvel utilise une machine virtuelle sous Ubuntu, l'OS hôte peut-être Windows ou Mac Os, le logiciel de virtualisation utilisé étant VirtualBox. Ces machines virtuelles sont utilisées pour initier les élèves à l'utilisation de GNU/Linux, à travailler sur les réseaux (il installe notamment un serveur web de type apache sur sa machine virtuelle, puis il suit les paquets TCP à l'aide du logiciel wireshark ) et beaucoup d'autres choses. Sa méthode est très souple et permet aux élèves de tester beaucoup de choses sans craindre de mettre en « péril » l'intégrité de l'OS hôte (la réinstallation de la machine virtuelle est très simple). XLOGO et robotique en collège Jusqu'à présent, toutes les présentations concernaient le travail réalisé en lycée. Une enseignante de collège nous a présenté son expérimentation d'apprentissage de la programmation à l'aide de XLOGO (dérivé du LOGO). Une fois les bases de la programmation acquises, les élèves passent à la robotique (le coût des robots est important, mais le financement de ce genre d'activité ne semble pas poser de réel problème !) Je n'ai pas trop voulu entrer dans les détails de chaque présentation, pour de plus amples informations sur un thème ou un autre, Brice Canvel a mis en ligne tous les documents utilisés lors de ces 2 jours sur le site : ___________________ |