« Initiation à la pensée computationnelle avec JavaScript » : différence entre les versions

De EduTech Wiki
Aller à la navigation Aller à la recherche
Ligne 20 : Ligne 20 :
== Objectifs ==
== Objectifs ==


Contrairement à d'autres ressources sur le sujet qui visent promouvoir la pensée computationnelle en tant que compétence universelle et applicable à tout domaine, cette initiation se "contente" d'appliquer la pensée computationnelle au domaine qui lui est plus proche : la computation. Nous considérons l'initiation achevée si, en partant de connaissances informatiques très faibles, l'utilisateur arrive à se construire des représentations mentales du fonctionnement des ''agents computationnels'' au sens large (ordinateurs, applications, mais également objets connectés, etc.).
Contrairement à d'autres ressources sur le sujet qui visent promouvoir la pensée computationnelle en tant que compétence universelle et applicable à tout domaine, cette initiation se "contente" d'appliquer la pensée computationnelle au domaine qui lui est plus proche : la computation. Dans l'imaginaire collectif il y a souvent une dichotomie qui divise les utilisateurs avec des compétences informatiques en deux groupes :


Pour atteindre cet objectif, nous sommes de l'avis - corroboré d'ailleurs par la littérature scientifique qui sera présentée surtout dans le premier module [[Aspects théoriques de la pensée computationnelle]] - qu'une exposition à la programmation à travers du code représente la meilleure manière pour consolider les notions théoriques présentées. De plus, à travers le développement de petits applications principalement avec finalités pédagogiques, les utilisateurs peuvent :
* Les '''''power user''''' qui sont perçus comme des experts dans la manipulation d'une ou plusieurs applications (e.g. Suite Microsoft Office, Photoshop, Édition vidéo, ...) ;
* Les '''programmateurs/développeurs''' qui, grâce à une prédisposition naturelle à la pensée logique et mathématique, sont perçus comme des experts dans le codage.


# Observer l'application directe des notions théoriques ;
Ces deux figures sont en réalité l'expression d'un même principe fondamental qui consiste à instruire une machine pour qu'elle fasse ce que l'on veut. Que ce soit à travers des lignes de code ou des manipulations sur des interfaces utilisateur, le résultat est le même : on déclenche de la computation pour que les instructions atteignent le résultat souhaité. Grâce aux progrès en termes de puissance des ordinateurs, souvent ce mécanisme sous-jacent n'est plus perceptible. Néanmoins, il est présent et, de sa nature mécanique, il nécessite de temps, d'énergie et d'un dispositif physique (i.e. du hardware) pour être exécuté.
# Acquérir des compétences procédurales qui peuvent représenter des bases solides pour appliquer eux-mêmes par la suite, dans une perspective ''end-user development'', les connaissances acquises.


Dans l'imaginaire collectif il y a souvent une dichotomie qui divise les utilisateurs avec des compétences informatiques en deux groupes :
'''Nous considérons l'initiation achevée si, en partant de connaissances informatiques très faibles, l'utilisateur arrive à se construire des représentations mentales du fonctionnement des ''agents computationnels'' au sens large (ordinateurs, applications, mais également objets connectés, etc.)'''. Pour atteindre cet objectif, nous sommes de l'avis - corroboré d'ailleurs par la littérature scientifique présentée dans le premier module [[Aspects théoriques de la pensée computationnelle]] - qu'une exposition à la programmation à travers du code représente la meilleure manière pour consolider les notions théoriques présentées. De plus, à travers le développement de petits applications principalement avec finalités pédagogiques, les utilisateurs peuvent :


* Les '''''power user''''' qui sont des experts dans la manipulation d'une ou plusieurs applications (e.g. Suite Microsoft Office, Photoshop, Édition vidéo, ...) ;
# Observer l'implémentation directe des notions théoriques dans le code source de petits jeux ou applications ;
* Les '''programmateurs/développeurs''' qui, grâce à une prédisposition naturelle à la pensée logique et mathématique, sont des experts dans le codage.
# Acquérir des compétences procédurales qui peuvent représenter des bases solides pour appliquer eux-mêmes, par la suite et dans une perspective ''end-user development'', les connaissances acquises.
 
Ces deux figures sont en réalité l'expression d'un même principe fondamental qui consiste à instruire une machine pour qu'elle fasse ce que l'on veut. Que ce soit à travers des lignes de code ou des manipulations sur des interfaces utilisateur, le résultat est le même : on déclenche de la computation pour que les instructions atteignent le résultat souhaité. Grâce aux progrès en termes de puissance des ordinateurs, souvent ce mécanisme sous-jacent n'est plus perceptible. Néanmoins, il est présent et, de sa nature mécanique, il nécessite de temps, d'énergie et d'un dispositif physique (i.e. du hardware) pour être exécuté.


== Structure ==
== Structure ==


== ... ==
== ... ==

Version du 14 juin 2018 à 13:23

Initiation à la pensée computationnelle avec JavaScript
▬▶
brouillon débutant
2018/06/14
Catégorie: JavaScript


Cet article est en construction: un auteur est en train de le modifier.

En principe, le ou les auteurs en question devraient bientôt présenter une meilleure version.



Introduction

L'initiation à la pensée computationnelle avec JavaScript est une collection de ressources théoriques, techniques et pratiques visant en premier lieu la compréhension de l'univers computationnel au sens large. L'utilisation de JavaScript, langage de programmation très répandu au niveau des pages et applications web, représente dans cette perspective l'outil cognitif qui accompagne ce parcours d'initiation, destiné principalement à des étudiants et enseignants qui n'ont pas un background informatique.

Les ressources ont été originairement conçues en tant que support du cours Sciences et Technologies de l'Information et de la Communication (STIC) du Master of Science in Learning and Teaching Technologies (MALTT) à l'Université de Genève. Les contenus sont pour la plupart des contributions originales créées par Mattia A. Fritz, sous la supervision du Prof. Daniel K. Schneider. Dans l'esprit d'EduTechWiki, cependant, les ressources peuvent être améliorées par tous les utilisateurs et des contributions précieuses ont été faites par les étudiantes des différentes volées du Master MALTT qui ont suivi le cours STIC. Tout le matériel qui accompagne les pages, notamment les exemples d'applications interactives, est également à disposition à travers des repositories GitHub. Sauf exception clairement indiquée, tout le matériel est disponible sous licence MIT ou Creative Commons pour des utilisations non-commerciales qui demande simplement l'attribution de la source.

Pour sa nature modulaire, participative et évolutive, l'initiation à la pensée computationnelle avec JavaScript peut être utilisée en tant que support à un cours d'introduction ou de sensibilisation à la programmation, mais également comme ressource d'auto-apprentissage pour toute personne intéressée à la compréhension du numérique.

Objectifs

Contrairement à d'autres ressources sur le sujet qui visent promouvoir la pensée computationnelle en tant que compétence universelle et applicable à tout domaine, cette initiation se "contente" d'appliquer la pensée computationnelle au domaine qui lui est plus proche : la computation. Dans l'imaginaire collectif il y a souvent une dichotomie qui divise les utilisateurs avec des compétences informatiques en deux groupes :

  • Les power user qui sont perçus comme des experts dans la manipulation d'une ou plusieurs applications (e.g. Suite Microsoft Office, Photoshop, Édition vidéo, ...) ;
  • Les programmateurs/développeurs qui, grâce à une prédisposition naturelle à la pensée logique et mathématique, sont perçus comme des experts dans le codage.

Ces deux figures sont en réalité l'expression d'un même principe fondamental qui consiste à instruire une machine pour qu'elle fasse ce que l'on veut. Que ce soit à travers des lignes de code ou des manipulations sur des interfaces utilisateur, le résultat est le même : on déclenche de la computation pour que les instructions atteignent le résultat souhaité. Grâce aux progrès en termes de puissance des ordinateurs, souvent ce mécanisme sous-jacent n'est plus perceptible. Néanmoins, il est présent et, de sa nature mécanique, il nécessite de temps, d'énergie et d'un dispositif physique (i.e. du hardware) pour être exécuté.

Nous considérons l'initiation achevée si, en partant de connaissances informatiques très faibles, l'utilisateur arrive à se construire des représentations mentales du fonctionnement des agents computationnels au sens large (ordinateurs, applications, mais également objets connectés, etc.). Pour atteindre cet objectif, nous sommes de l'avis - corroboré d'ailleurs par la littérature scientifique présentée dans le premier module Aspects théoriques de la pensée computationnelle - qu'une exposition à la programmation à travers du code représente la meilleure manière pour consolider les notions théoriques présentées. De plus, à travers le développement de petits applications principalement avec finalités pédagogiques, les utilisateurs peuvent :

  1. Observer l'implémentation directe des notions théoriques dans le code source de petits jeux ou applications ;
  2. Acquérir des compétences procédurales qui peuvent représenter des bases solides pour appliquer eux-mêmes, par la suite et dans une perspective end-user development, les connaissances acquises.

Structure

...