Qu'est-ce que la pensée informatique ?
C'est un ensemble d'attitudes et de connaissances universellement applicables. C'est une façon d'organiser sa pensée, permettant de mettre en œuvre des notions et des procédés permettant de la rendre explicite par le biais de l'informatique. Elle se réalise essentiellement par la mise au point d'un algorithme.
Un algorithme est un enchaînement mécanique d'actions, dans un certain ordre, qui chacune a un effet, et dont l'exécution complète permet de résoudre un problème ou de faire quelque chose.
Un programme est un algorithme traduit dans un langage de programmation.
Un ordinateur est une machine qui (entre autres) est capable d'exécuter un programme, i.e., de réaliser les actions du programme.
L'algorithmie consiste à savoir décomposer un problème en termes d'étapes et d'actions, ce qui est différent de l'enseignement de l'informatique. Il est d'ailleurs possible de faire de l'algorithmie sans avoir recours à un ordinateur, c'est ce que les acteurs de la formation appellent des activités « débranchées ». Le programme de Cycle 2 de mathématiques indique la compétence cible « Mettre en œuvre un algorithme de calcul posé pour l'addition, la soustraction, la multiplication ». Une recette de cuisine est un algorithme, dont les actions sont de « casser les œufs », de « mettre de la farine », d'« ajouter un peu de sel ». La notion d'algorithme n'est donc pas réservée à l'informatique. L'outil numérique a seulement un rôle de vérification, pour exécuter les algorithmes une fois transformés en programmes.
Pourquoi l'enseigner ?
Les situations proposées, branchées ou débranchées, permettent:
- d'appréhender un problème et sa solution à différents niveaux (abstraction)
- de réfléchir aux tâches à accomplir sous forme de série d'étapes (algorithmes)
- de comprendre qu'un problème complexe peut être décomposé en problèmes simples (décomposition)
- de s'appuyer sur les compétences déjà acquises par l'élève (problèmes déjà résolus auparavant)
- d'intégrer que la solution d'un problème peut permettre la résolution de tout un éventail de problèmes similaires (généralisation)