Please wait...

Comment faire du codage à la maison une activité réussie

Comment faire du codage à la maison une activité réussie

Le logiciel est devenu le fondement de la civilisation moderne. La littératie numérique occupe une place importante dans les compétences nécessaires aux citoyens du 21ème siècle; dans un futur proche, ne pas connaître le langage des ordinateurs sera comparable à être analphabète aujourd’hui.

Comprendre le langage des ordinateurs, ou la pensée computationnelle, est la façon avec laquelle les ingénieurs logiciels résolvent les problèmes, une démarche intellectuelle qui combine à la fois les mathématiques, la logique, et les algorithmes. L’enjeu est tel qu’on commence à voir des ressources pédagogiques qui adressent l’enseignement de la programmation (codage) au même titre que la lecture ou les mathématiques.

Cependant, si vous faites partie des parents qui s’occupent eux-mêmes de l’éducation de leurs enfants, vous ne savez peut-être pas comment vous y prendre. Il y a là une multitude de ressources dont vous pouvez vous servir pour démarrer.

Voici nos conseils pour une prise en main du codage comme activité éducative à la maison.

Les blocs visuels pour bien débuter

Quand on pense au codage pour les enfants, le premier environnement qui vient à l’esprit est Blockly. Le langage visuel Blockly permet de construire des algorithmes comme un empilement de briques les unes au-dessus des autres. Cette notation est devenue populaire grâce à son adéquation avec les tablettes, et surtout avec l’avènement de Scratch, le logiciel gratuit du MIT, qui utilise cette technologie pour apprendre aux enfants comment créer des animations. Pour programmer avec Blockly depuis une tablette, il suffit de toucher l’écran pour glisser-déposer les briques depuis une boite à outils vers un canevas, et de configurer ensuite ces briques élémentaires à l’aide de menus contextuels.

Scratch

Mis à part l’aspect graphique du langage, ce qui le rend plus facile à prendre en main, Blockly simplifie la programmation car il fait abstraction de :

  • La syntaxe du langage : avec Scratch, toutes les manipulations que vous faites sont garanties correctes syntaxiquement, c’est-à-dire que le programme que vous construisez est toujours valide peu importe ce que vous mettez dedans. Avec un vrai langage de programmation, l’écriture textuelle impose de respecter la syntaxe du langage de programmation, par exemple l’utilisation des mots clés, l’utilisation les parenthèses, les point virgules à la fin de chaque instruction, voire même l’endroit où débute l’instruction dans l’éditeur (exemple : Python).
  • En contrepartie de la validité syntaxique garantie, des limitations fonctionnelles ont été introduites, comme par exemple la portée des variables : dans Blockly, toutes les variables sont globales, c’est-à-dire que vous pouvez y accéder depuis n’importe quel empilement de blocs sur le canevas, ce qui simplifie la vie des apprenants mais qui fait abstraction d’une notion fondamentale en informatique. Dans la vraie vie, les variables ont une portée (scope) : une variable peut être locale vis-à-vis d’une procédure, d’un bloc d’instructions (exemple une boucle), ou peut être globale (accessible depuis n’importe où).

L’algorithmique textuelle pour avoir un aperçu du vrai code

Vous avez découvert Scratch, votre enfant commence à comprendre la logique sous-jacente, il/elle arrive à s’en servir pour créer des programmes simples pour réaliser des animations et intégrer des pistes audio. Il est temps de passer au niveau supérieur !

Seul hic, vous avez là une multitude de langages de programmation, dont les plus populaires sont Python, JavaScript, et Java. Certains sont dits « procéduraux », d’autres sont « orientés objet », certains ont « compilés », d’autres sont « interprétés ». N’étant pas vous-même expert en la matière, la question que vous vous posez dans doute est de savoir lequel utiliser, sans trop rentrer dans les détails techniques que de toute façon, vous avez du mal à appréhender.

Il n’y a pas de réponse universelle à cette question tant les domaines d’applications sont divers et variés. Vous devez apprendre, pour le langage choisi, la syntaxe et la sémantique. Vous devez connaître les bibliothèques communément utilisées ainsi que les conventions et les environnements de développement à utiliser. Il existe plus de 300 langages de programmation, avec des domaines d’utilisation divers et variés, ils ont tous en commun un ensemble de notions fondamentales : les procédures, les variables, les expressions arithmétiques et logiques, le boucles, les expressions conditionnelles, etc. Toutes ces notions se retrouvent bien évidemment dans Python, Java, et plus généralement dans les langages de programmation généralistes.

Coding Park propose une étape intermédiaire agnostique du langage de programmation, avec une technologie d’écriture algorithmique en texte. Le pseudo langage Play propose une syntaxe épurée et minimaliste permettant d’écrire des algorithmes simplement. Le pseudo code a l’avantage d’être concis – c’est-à-dire que vous n’avez pas besoin d’écrire beaucoup de code pour créer des programmes. Il suffit de savoir appliquer de règles précises comme :

  • Un programme commence par un { et finit par },
  • Un appel de fonction est suivi d’une parenthèse,
  • Une variable est déclarée avec un mot clé (var),
  • Une variable a une portée (locale vs globale),
  • Une condition est exprimée avec des mots clé (if, then, else),
  • etc.

Coding Park prépare votre enfant à l’acquisition des notions d’algorithmique, simplement. Si votre enfant aime les jeux vidéo, vous pouvez apporter cet enthousiasme dans le monde du codage avec le jeu de chasse aux trésors Golden Quest. Et une fois que votre enfant maîtrise les bases de l’écriture du code, il/elle peut ensuite passer facilement à JavaScript ou Python avec les cours de codage plus évolués.

Golden Quest

La programmation avec un langage informatique pour approfondir

Maintenant que vous maîtrisez les bases de l’algorithmique, vous n’aurez aucun problème à faire le grand saut et de découvrir un vrai langage de programmation. Vous avez effectué vos recherches est vous avez du mal à vous décider.

Les technologies évoluent sans cesse ; des langages apparaissent et disparaissent tout au long de l’Histoire. Vous n’avez sans doute jamais connu FORTRAN, COBOL, ou PASCAL ? Ce sont les ancêtres des technologies actuelles, des langages populaires dans les années 70 et 80, mais qui ont complètement disparu depuis (en vrai, certains sont encore utilisés aujourd’hui pour la seule raison que l’effort de modernisation est jugé trop important). Les personnes ayant encore ces compétences sont d’une autre génération, plus personne ne s’y intéresse aujourd’hui à vrai dire. Les stars d’hier sont hélas les oubliés d’aujourd’hui.

Aujourd’hui, JavaScript avec ses variantes (TypeScript, JSX) reste le langage de prédilection pour la création de sites web dynamiques en conjonction avec HTML (langage de définition de structure de pages web) et CSS (langage de description de styles graphiques). Il existe une panoplie de frameworks basés sur JavaScript qui permettent de créer plus efficacement des sites web de grande qualité, les plus connus sont React et Angular.

A côté de JavaScript, Python est l’un des langages informatiques les plus utilisés actuellement, car boosté par les applications d’Intelligence Artificielle et de Machine Learning. Aujourd’hui, beaucoup de grandes entreprises comme Google, la Nasa et Youtube, l’utilisent pour élaborer leurs applications. On peut aussi s’en servir pour programmer des cartes électroniques comme par exemple micro:bit ou Raspberry Pi.

Que ce soit JavaScript, Python, ou tout autre langage de programmation, vous devez installer un environnement de développement intégré (IDE) ; il y en a des très bon accessibles gratuitement, comme par exemple Visual Studio Code (VS Code) de Microsoft. Il existe sur internet une multitude de tutoriels détaillés pas à pas expliquant comment écrire, compiler, et exécuter le code. Généralement, le premier exercice que l’on pratique lorsqu’on veut apprendre un nouveau langage consiste à faire apparaître le message « Hello World » sur une console. Ensuite, libre à vous de trouver des exercices pertinents pour maintenir l’intérêt de votre enfant.

vscode

Tout est question de motivation

Les enfants qui n’ont pas la motivation ou l’envie d’apprendre à coder seront forcément réticents et indifférents. L’apprentissage devient plus difficile lorsqu’ils doivent apprendre tous seuls à la maison, car ils/elles préféreront passer ce temps à jouer ou à naviguer sur internet. C’est pourquoi vous devez trouver la bonne manière de stimuler l’intérêt de votre enfant pour la programmation.

Une bonne approche pour susciter l’intérêt consiste à expliquer aux enfants tout ce qu’ils/elles peuvent réaliser avec le codage. Par exemple, vous pouvez leur dire comment avec le codage, ils/elles peuvent créer des jeux vidéo, concevoir des sites internet attractifs, ou développer des chat bots. Jouer avec le codage peut leur donner la possibilité de créer quelque chose d’amusant qui leur ressemble, et c’est bien cela le plus important ; prendre du plaisir à coder au lieu de faire cela juste par obligation.

Rendez le codage amusant en prêtant une attention particulière à ce que votre enfant aime le plus et en allant dans cette direction. L’apprentissage du codage comporte plusieurs approches, et la votre doit dépendre de ce qui motive votre enfant.

Avant de décider de l’outil à utiliser, visitez les sites web des fournisseurs, voyez s’il y a suffisamment d’aide et de support en ligne, et essayez d’évaluer quelle est la meilleure option pour votre enfant.

Et si vous ne parvenez toujours pas à enseigner le codage à votre enfant à la maison, vous pouvez l’inscrire à l’un des ateliers de codage en ligne; vous pouvez même y assister vous-même côte à côte avec lui/elle pour avoir un aperçu pratique et prendre en main les logiciels.

Soyez patient

Si vous êtes déterminé à apprendre à votre enfant à coder à la maison, il y a un trait que vous devez posséder : la patience. Gardez à l’esprit que le codage est une discipline complexe qui demande du temps et du dévouement. Puisque votre enfant apprend à la maison, prenez votre temps, et adaptez-vous à son rythme.

Adaptez votre programme d’apprentissage en fonction du temps de concentration maximal de votre enfant. Par exemple, si leur concentration est meilleure le matin, faites-le à ce moment là. Répétez également le même concept ou exercice autant de fois que nécessaire.

S’ils/elles ne peuvent pas comprendre une notion, essayez de l’expliquer d’une manière différente. Gardez vos mains loin de l’ordinateur et laissez-les essayer et échouer de leur propre chef jusqu’à ce qu’ils réussissent. C’est la meilleure façon d’apprendre.

En résumé

Quel que soit l’âge ou les compétences de votre enfant en matière de codage, il existe des solutions pour rendre l’activité plus attractive et ludique. Espérons que ces conseils feront de votre maison un espace d’apprentissage productif et vous aideront à initier votre enfant au codage. N’oubliez pas de permettre à votre enfant de trouver sa passion pour le codage à son rythme, car c’est ce qui le rendra intéressé par le codage à long terme. Enfin, au cas où vous remarquez que votre jeune n’a aucune envie d’apprendre, ne vous obstinez pas et prenez votre temps jusqu’à ce qu’il/elle soit prêt(e).