JavaScool:Cadrage

De Sciencinfolycee
Révision datée du 14 février 2011 à 15:03 par Vthierry (discussion | contributions) (Algorithmique et programmation en mathématiques (depuis la rentrée 2009).)
Aller à : navigation, rechercher

Trois étapes dans l'apprentissage de l'informatique.

Il faut être clair : à l'ère numérique dans laquelle nous vivons, les fondements de l'informatique constituent un savoir indispensable comme peut l'être la lecture ou l'écriture, et tôt ou tard (et plutôt tantôt que trop tard !), c'est une discipline à part entière qu'il faut pouvoir enseigner à nos jeunes, probablement en trois étapes :

  1. [primaire-collège] Apprentissage de l'usage des outils : apprendre à utiliser les outils : édition, communication, (et un clavier !),... profiter des ressources de l'internet, etc.
  2. [collège-lycée] Apprentissage des méthodes par la pratique expérimentale : c'est à dire ici apprentissage des algorithmes et de la programmation.
    • Il est indispensable d'apprendre l' « algorithmique » (et les fondements théoriques qui y conduisent), c'est le levier pour pouvoir comprendre et maîtriser, voire adapter les logiciels que nous utilisons (et pas uniquement les subir !).
    • Il est impossible de s'approprier ce savoir sans une vraie pratique, une démarche expérimentale, il faut donc incarner cette algorithmique en faisant de la programmation.
  3. [fin de lycée-et au delà] commence la Formation Scientifique dans le domaine : par exemple la théorie de l'information, de la compilation, traitement des données, etc.

Sans oublier, à tous les niveaux, le développement de la réflexion et de la culture : comprendre d'où vient l'informatique, ce qu'elle change au niveau de notre société, etc..

Un levier: l'apprentissage de la programmation.

On peut dire, comme l'enseigne Gilles Dowek, que, au confluent des quatre clés de voûte de l'informatique (Algorithme, Langage, Information, Machine), il y a la programmation. Apprendre à programmer permet de devenir autonome et de découvrir expérimentalement les fondements des sciences de l'information de ce 3ème millénaire.

Il s'agit bien d'apprendre un savoir faire : écrire un programme, pour réussir à conceptualiser ce que l'intelligence mécanique, la "machine" peut réaliser. Dans cette situation encore transitoire, l'usage des outils commence à être enseigné de manière structurée et systématique à travers les B2I et, à plus haut niveau, C2I. Mais l'enseignement des fondements de l'informatique, c'est à dire, pour ce qui est du lycée: l'apprentissage des méthodes par la pratique expérimentale, reste encore très parcelaire et se retrouve à ce jour incluse dans deux matières, comme détaillé ici.

Une présentation vidéo accompagnée de ses supports complète cette petite analyse.

Informatique et programmation au lycée en 2010-2011

Algorithmique et programmation en mathématiques (depuis la rentrée 2009).

Référence: programme en vigueur

Objectifs pour le lycée.

«La démarche algorithmique est, depuis les origines, une composante essentielle de l’activité mathématique. Au collège, les élèves ont rencontré des algorithmes (algorithmes opératoires, algorithme des différences, algorithme d’Euclide, algorithmes de construction en géométrie). Ce qui est proposé dans le programme est une formalisation en langage naturel propre à donner lieu à traduction sur une calculatrice ou à l’aide d’un logiciel. Il s’agit de familiariser les élèves avec les grands principes d’organisation d’un algorithme : gestion des entrées-sorties, affectation d’une valeur et mise en forme d’un calcul, en opérant essentiellement sur des nombres entiers.

Dans le cadre de cette activité algorithmique, les élèves sont entraînés :

  • à décrire certains algorithmes en langage naturel ou dans un langage symbolique ;
  • à en réaliser quelques uns à l’aide d’un tableur ou d’un petit programme réalisé sur une calculatrice ou avec un logiciel adapté ;
  • à interpréter des algorithmes plus complexes.

Aucun langage, aucun logiciel n’est imposé.L’algorithmique a une place naturelle dans tous les champs des mathématiques et les problèmes posés doivent être en relation avec les autres parties du programme (fonctions, géométrie, statistiques et probabilité, logique) mais aussi avec les autres disciplines ou la vie courante. À l’occasion de l’écriture d’algorithmes et de petits programmes, il convient de donner aux élèves de bonnes habitudes de rigueur et de les entraîner aux pratiques systématiques de vérification et de contrôle.» (extrait des documents officiels).

Contenu du programme.

  • Instructions élémentaires (affectation, calcul, entrée, sortie). Les élèves, dans le cadre d’une résolution de problèmes, doivent être capables :
    • d’écrire une formule permettant un calcul ;
    • d’écrire un programme calculant et donnant la valeur d’une fonction ;ainsi que les instructions d’entrées et sorties nécessaires au traitement.
  • Boucle et itérateur, instruction conditionnelle Les élèves, dans le cadre d’une résolution de problèmes, doivent être capables :
    • de programmer un calcul itératif, le nombre d’itérations étant donné ;
    • de programmer une instruction conditionnelle, un calcul itératif, avec une fin de boucle conditionnelle.

Exemples de mise en œuvre de l'algorithmique dans chacune des trois parties du programme:

  • Etude des Fonctions Même si les logiciels traceurs de courbes permettent d’obtenir rapidement la représentation graphique d’une fonction définie par une formule algébrique, il est intéressant, notamment pour les fonctions définies par morceaux, de faire écrire aux élèves un algorithme de tracé de courbe.
  • En Géométrie Le cadre de la géométrie repérée offre la possibilité de traduire numériquement des propriétés géométriques et permet de résoudre certains problèmes par la mise en oeuvre d’algorithmes simples.
  • Statistiques et probabilités On pourra facilement programmer l'étude d'une série statistique (moyenne, dispersion), tandis que la répétition d’expériences aléatoires peut donner lieu à l’écriture d’algorithmes (marches aléatoires). À l’occasion de la mise en place d’une simulation, on peut utiliser les fonctions et mettre en place des instructions conditionnelles dans un algorithme.

Dans l'option Méthodes et Pratiques Scientifiques (à la rentrée 2010).

L'enseignement dispensé dans cette option transdisciplinaire «permet aux élèves de découvrir différents domaines [scientifiques..], pour trouver des réponses aux questions scientifiques que soulève une société moderne, d’en faire percevoir différents grands enjeux, et de donner les moyens de les aborder de façon objective. [..] Il initie les élèves à la démarche scientifique dans le cadre d’un projet» ([http://media.eduscol.education.fr/file/MPS/69/0/LyceeGT_Ressources_2_Exploration_Methodes-Pratiques-Scientifiques_149690.pdf extrait du BO dur le sujet). Les sciences informatiques étant sont au coeur de cette transdisciplinarité et des impacts sociétaux des sciences du 21ème siècle.

Au delà de champs applicatifs assez divers (aliments, cosmétologie, investigation policière, création d'oeuvres d’art, prévention des risques et environnement, perception visuelle et images) est laissée à la liberté de l'enseignant et de l'équipe pédagogique le choix des différents concepts et contenus scientifiques à proposer. L’évaluation peut prendre des formes variées, par exemple de remise projet. La travail informatique est donc un levier pour suivre un tel cadrage: à la fois car il est présent dans tous les thèmes applicatifs et parce qu'il est au coeur de «l’acquisition de compétences et de qualités telles que l’autonomie, l’initiative, l’engagement dans une démarche scientifique, ..» pronées ici.

L'enseignement optionnel en 2nd pourra être explicitement intitulé Option "informatique et société du numérique" comme c'est le cas dans plusieurs lycées, dès cette rentrée, pour acquérir et mettre en oeuvre quelques notions de programmation (algorithme élémentaire, abstractions informatiques) ou liée aux objets numériques (objets multimédia et images, logiciels d'analyse de données et de simulation).Ce sont des contenus résolument tournés vers ce dont les futurs ingénieurs ou scientifiques auront vraiment besoin, ce qui inclut la programmation. Il faut y ajouter des indispensables éléments de culture scientifique et technique («éléments d'histoire de la numération [du calcul], éléments de l'histoire de l'informatique, l'architecture d'un ordinateur») ;

Cet enseignement fait suite aux options MPS option transdisciplinaire de sciences expérimentales.

Perspective: Un enseignement de spécialité optionnel en Terminale S « Informatique et sciences du numérique ».

Comme détaillé ici ces éléments sont clairement les 1ères étapes vers l'introduction progressive, massive et pérenne des sciences informatiques dans l'enseignement secondaire.

De quelques perspectives pédagogies.

Sans aucune autre prétention que de collecter ici quelques clés pédagogiques mises en relief par des professeurs du secondaire ayant déjà pratiqué l'enseignement de l'informatique lors d'enseignements optionnels, nous pouvons noter les points suivants.

L'informatique se prête à une pédagogie participative.

Elle est de ces matières qui se prêtent bien à un enseignement par mini-projets, orienté vers le travail en binôme ou petit groupe. A une pratique où cours magistral et travaux-pratiques expérimental sont indissociables. On apprend ensemble savoir et pratique.

Apprendre à programmer un petit logiciel, c'est donner à l'élève des clés, mais aussi la liberté de s'approprier ces clés et de les mettre en pratique de manière diverse (il y a plusieurs possibles dans la manière de mettre en oeuvre la solution).

L'informatique favorise ainsi l'apprentissage par l'utilisation, ce qui correspond bien à l'esprit humain. Très précisément ici, il s'agit de découvrir un algorithme en le programmant en observant son fonctionnement, avant d'en abstraire la notion sous-jacente.

Quand le professeur apprend avec l'élève.

Dans cette période transitoire, l'informatique se prête à une expérience pédagogie des plus intéressantes pour l'élève (et enrichissante pour l'enseignant). Le Professeur de Mathématiques ou de Sciences Physiques se lève devant sa classe et dit : « je ne sais (que peu ou) pas encore programmer moi-même, mais je sais comment vous apprendre à le faire, et comment apprendre avec vous ». Cette position pédagogique a été vécue plusieurs fois en 2007-2009 avec un succès complet et récurrent : élèves responsabilisés, co-apprentissage coopératif entre élèves, professeur partageant une démarche de recherche au delà de la simple transmission de savoir, plaisir partagé de la réussite, etc. Que personne ne se trompe : il ne s'agit pas de "niveler les rôles" ! Le professeur reste le référent, détenteur non pas d'un simple lot de connaissances, mais de quelque chose de plus profond : une démarche méthodologique.

En pratique, les "profs" que nous connaissons ont joué ce rôle très simplement, de manière (au sens propre du terme) magistrale (... et aussi au sens figuré, de fait ), en tout cas avec la même discipline que tout autre cours. Les élèves ont profondément apprécié cette démarche, sans être dérouté par son aspect singulier. L'une d'elle en tirera cette belle conclusion « Oh, il est possible de tout apprendre alors ! ». C'était pour le Professeur, un des plus beaux remerciements.

L'informatique conduit à un apprentissage de la rigueur.

Cet apprentissage s'effectue par un mécanisme spécifique : celui des essais-erreurs avec une machine « neutre ». La programmation ne donnera un résultat que si tout est correct, mais donnera indéfiniment une chance de corriger, de reprendre, de re-tester.

La machine est donc un outil qui permet d'apprendre de manière incrémentale, sans jamais porter de jugement de valeur. On a vu quelque élève un peu "rebelle" regagner de l'intérêt pour cette approche nouvelle et y réussir mieux qu'en moyenne. Hélas, il faut être lucide : l'apprentissage de l'infomatique n'est pas simple, et les concepts ne sont pas simplistes : tel élève qui aurait de profondes lacunes en matière d'abstraction ne pourra qu'aprendre à reproduire le savoir et la pratique, sans forcément accéder aux concepts sous-jacents. Mais ce sera déjà un succès, à la fois pour l'aider à maîtriser le mode numérique et pour lui-même y gagner en rigueur.

Pour ce qui est de la rigueur, les lycéennees qui ont déjà profité de cet apprentissage, ont permis de vérifier cette règle attendue, à savoir que la rigueur se conjugue bien souvent au féminin. L'idée que l'informatique ne serait pas pour les filles ne les a jamais effleurée, qu'elle ne nous effleure pas non plus.

L'informatique est une science abstraite ... incarnée.

L'informatique fait entrevoir l'intérêt des sciences théoriques, car on peut « toucher » (opérer avec, visualiser...) des objets abstraits, si l'informatique est mathématiques, alors il s'agit de mathématiques « incarnées ».

L'informatique est un levier pour les sciences, car elle permet de mieux comprendre des notions universelles (par exemple la notion d'information) ou fondamentales (par exemple le calcul «mécaniste » par opposition à d'autres formes de raisonnement). Elle offre aussi la découverte de notions nouvelles (par exemple: suites aléatoires, fonctions récursives, ...) omniprésentes en ingéniérie. Nous en offrons quelques aspects ici.