Dans le cadre de la semaine des métiers du numérique 2020, Pôle Emploi organisait une initiation au codage à l’Epitech le mardi 4 février dernier (avant le confinement). En m’inscrivant, je ne savais pas quelle forme prendrait cette initiation. Avec quel langage? Selon quelles modalités? S’agirait-il d’un jeu comme Les Lapins Crétins : Apprends à Coder d’Ubisoft? Mystère! Tout ce qu’on avait, c’était l’adresse où se rendre et un intitulé passe-partout : « Zoom sur Marché du travail sectoriel – Initiation codage Epitech« . Aucune mention de Python.
Epitech, école d’informatique aux 17 campus
En arrivant à Epitech Rennes, un écriteau sur la porte met tout de suite dans l’ambiance :
Nous nous sommes donc retrouvés à une dizaine de participants dans une petite pièce. Un ordinateur portable par personne et trois étudiants de seconde année pour épauler le groupe.
Comme la piscine du 42
Après nous avoir souhaité la bienvenue, ils nous ont expliqué que nous devons créer un jeu pour deviner un chiffre, ont détaillé ensuite ce que nous avions à notre disposition. Puis… ils se sont tus, nous laissant ainsi livrés à nous même, façon piscine du 42. Ceux qui n’avaient encore jamais codé sont donc un peu désarçonnés.
Nous avions donc :
- Premièrement, un navigateur ouvert sur deux onglets :
- Un mini-manuel de Python (ah, donc, c’est une initiation sur Python)
- Deuxièmement, une interface de codage en local, avec :
- une partie de la fenêtre pour écrire le code (vide au début)
- L’autre partie de la fenêtre pour voir le résultat après compilation (pas question de WYSIWYG ici 😁)
On se prend finalement au jeu du Python
« Le but du juste prix est de trouver un chiffre généré aléatoirement par le programme.
(But du projet dans les instructions pour la séance)
Le joueur donne un nombre, le programme lui répond si le joueur doit donner un nombre plus élevé, ou au contraire donner un nombre moins élevé, pour au final trouver le nombre généré aléatoirement ! »
« Voici une liste de choses que vous pouvez ajouter à votre programme:
– Afficher un message de victoire
– Demander au joueur entre quel nombre et quel nombre il veut que le chiffre à trouver soit généré »
Durant deux heures, de 16h à 18h, nous nous sommes creusé la tête tout en échangeant entre nous, n’appelant les étudiants encadrants (les fameux « cobras ») que lorsque nous étions vraiment bloqués. A la fin de la séance, je suis ainsi arrivé à répondre à la consigne initiale, mais je cherchais encore le bug pour l’option consistant à proposer une nouvelle partie.
Je voulais garder une trace de cette expérience. C’est finalement l’un des cobras qui m’enverra de quoi poursuivre. Qu’il en soit ici remercié. Son mail contenait :
- Les deux fichiers d’aide (consigne et mini-manuel de Python)
- Une copie de mon code tel qu’il était à la fin de la séance
- le lien du sujet sur gitlab: https://gitlab.com/coding-club-rennes/juste_prix_python (donnant accès à pleins d’autres sujets!)
- et enfin, un lien le lien vers un éditeur de code en ligne : https://www.onlinegdb.com (présentation vidéo ci-dessous)
Python, un goût de revenez-y
Le lendemain, je suis ainsi retourné sur mon code. J’y ai ajouté deux fonctionnalités :
- Le joueur a dix essais pour trouver le chiffre mystère
- Le joueur peut refaire une partie avec un nouveau chiffre à chercher (ou pas)
- On pourrait encore, par exemple, demander au joueur en combien d’essais il veut jouer au lieu de lui en imposer dix arbitrairement.
(changez l’extension en .py pour en faire un fichier Python)Télécharger
Cette séance était une petite récréation qui m’a rappelé nos jeux sur calculatrices au lycée. Parmi les jeux qui circulaient alors sur nos calculatrices graphiques, il y avait un pendu, un golfe, un billard, etc, qu’on récupérait et qu’on aménageait à notre sauce, sans même connaitre la notion de logiciel libre.
C’était il y a… bien des années.
Python est un langage qui peut s’utiliser dans de nombreux contextes et s’adapter à tout type d’utilisation grâce à des bibliothèques spécialisées. Il est cependant particulièrement utilisé comme langage de script pour automatiser des tâches simples mais fastidieuses (Wikipedia)
Code et éthique numérique
Cette initiation était destinée à des personnes se demandant si elles pourraient travailler dans l’informatique, le numérique ou le digital, ce qui est tout à fait logique.
Néanmoins, quand j’entends partout qu’il faut apprendre le code aux enfant dès le plus jeune age, pour les préparer au monde numérique de demain, je m’interroge. A l’université, j’ai appris l’algorithmique en réalisant des applications pour lire des chaines de caractères figurant les chaînes de bases de l’ADN, avec pour finalité par exemple d’en déduire la séquence d’acides aminés correspondante.
Toutefois, cela ne m’a nullement préparé aux moteurs de recherche, ni aux réseaux sociaux, ni aux fake news, ni aux strikes de Youtube, ni au deep learning, pour ne prendre que quelques exemples. En effet, les questions de copyright madness, d’éducation aux médias ou encore de données personnelles ne s’apprennent pas en codant. Ainsi, apprendre le code pour avoir une idée de ce qu’est un algorithme, c’est bien. Mais cela ne peut être considéré comme un viatique suffisant pour préparer les citoyens de demain au numérique.
- L’éthique du numérique
- L’hyperpuissance de l’informatique
- L’éducation à l’informatique
- Promotion de la littératie : qui va s’en occuper?
- Du bon usage de l’Internet documentaire
- Les NTIC, des technologies pas si nouvelles que ça!
- Algorithmique et algorithmes
- Quel langage informatique apprendre en 2020 ?
- Frameworks JavaScript
- Frameworks JS, une longue histoire
- Svelte, un framework JS à suivre
- JavaScript : un langage ou des langages?
Retour de ping : Algorithmique et algorithmes | InfoDocBib - Architecte de l'information
Retour de ping : Quel langage informatique apprendre en 2020 ? Architecte de l'information
Retour de ping : Frameworks JavaScript | InfoDocBib - Architecte de l'information
Retour de ping : Frameworks JS : une longue histoire | Architecte de l'information
Retour de ping : Svelte, un framework JS à suivre | InfoDocBib - Architecte de l'information
Retour de ping : JavaScript : un langage ou des langages? | Architecte de l'information
Retour de ping : Pourquoi j'ai choisi la Wild Code School | Infodocbib.net