A l’heure où le sujet passionne les foules, « doit-on enseigner le code à l’école », nous nous sommes penchés sur la démarche d’enseigner le code « à tous », et ce que cela pouvait apporter pour la valorisation du métier de développeur en France. Interview de Max Prudhomme, étudiant à Epitech et bénévole au sein des Voyageurs du Code.
1. Vous êtes passionné de développement. Quelqu’un vous a-t-il “initié” ou auriez-vous aimé que ce soit le cas ?
Quand j’ai commencé à coder c’était il y a environ 5 ans, je souhaitais simplement créer un site internet pour partager des informations à propos d’un jeu vidéo. Mais petit à petit j’ai voulu améliorer ce site en ajoutant des « modules », mais en modifiant le code source pour qu’il corresponde à mes besoins. Puis j’ai appris le langage HTML/CSS pour créer mon premier site personnel. Enfin j’ai appris les autres langages PHP, MySQL, Javascript, etc. pour mes sites professionnels et personnels.
J’ai donc appris seul, je n’ai pas cherché à avoir un tuteur pour m’apprendre. Au final ce n’est pas plus mal car je suis tombé sur beaucoup d’erreurs qu’aujourd’hui je sais régler rapidement car je les connais déjà. J’ai pu apprendre en « sautant » des étapes des tutoriels pour apprendre que ce qui me convient et revenir plus tard sur les notions sautées.
Si on a un professeur, on doit donc suivre un programme spécifique, il n’est pas possible de sauter une étape et si on est bloqué le professeur vient et nous débloque. L’avantage d’être seul, c’est de mieux comprendre les erreurs, car il n’y personne à côté de vous,vous êtes obligé de chercher comment réparer/corriger cette erreur, on en apprend beaucoup plus que si quelqu’un vous donne la réponse. Il y a donc des avantages et inconvénients à ces deux modes d’apprentissage. A plusieurs il y a de l’interaction. Chaque mercredi quand je travaille avec les enfants, ils veulent tester de nouvelles choses et le font sans craintes car s’il y a un problème, on est là pour les aider.
2. Vous transmettez votre passion du code en donnant des cours au travers du programme “Les Voyageurs du Code”, qu’est-ce qui vous a donné envie de vous inscrire dans cette démarche ?
Une annonce a été postée sur l’intranet de mon école, je me suis donc inscrit à l’association pour partager mon savoir mais également montrer aux gens que ce n’est pas si difficile et compliqué qu’il n’y paraît.
Beaucoup de personnes prennent peur dès que les lignes de codes apparaissent (code source d’une page web, écran de démarrage d’un ordinateur (boot), messages de debug dans certains jeux, etc.). Or en connaissant la base de la programmation, on se rend compte que toutes ces lignes veulent dire quelque chose : elles donnent des ordres à l’ordinateur.
Le but de l’association est d’initier les gens à la programmation. Nous leur montrons HTML/CSS pour qu’ils comprennent la structure/le squelette des sites internet, mais aussi du Javascript qui montre la vraie base de la programmation : les variables, les fonctions, les conditions, les opérateurs, les différents type de variables,etc.
Ce qu’il faut travailler en tant que bénévole, c’est la capacité à simplifier ce domaine si vaste et complexe pour que tout le monde puisse s’y retrouver. On va donc dans la mesure du possible prendre des exemples du quotidien pour illustrer qu’est-ce que la programmation aux différents publics.
3. Pouvez-vous nous en dire plus sur ces exemples du quotidien ?
Pour la compréhension générale de l’ordinateur et d’un programme informatique, on prend l’exemple d’une machine à café ou d’un distributeur. Quand l’utilisateur appuie sur un bouton, le système va éxécuter une commande pré-définie. Un programme obéit toujours à des instructions. C’est le principe d’action-réaction. L’utilisateur demande quelque chose, l’ordinateur éxécute l’ordre.
La personne voulant coder doit alors donner des instructions pour que l’ordinateur les éxécutes. Généralement on ouvre le code source d’une page web et on leur explique que chaque ligne correspond à un ordre (le doctype, les balises de titres, les liens, etc.).
Pour expliquer les différents langages du web, j’aime bien donner l’exemple d’une voiture. L’HTML correspond à la structure, au squelette, le CSS au design et aux couleurs. À partir de là tout est optionnel : le Javascript pour ajouter un toit décapotable par exemple,etc. Chaque langage est différent et à des utilités propres. Il faut donc expliquer les différences simplement avec des exemples.
4. Le programme a été lancé par Bibliothèques Sans Frontières qui est à l’origine de la version française de Codecademy. Il a pour but d’initier un plus grand nombre de personnes et de « faire émerger des générations de citoyens éclairés, créatifs, inventifs ». Au sein de vos cours, quel public rencontrez-vous ? Vous adressez-vous également à des personnes qui ont vocation à devenir développeurs ?
L’association essaie de toucher le plus de personnes possible. Chaque mercredi nous apprenons aux enfants la logique de la programmation en leur faisant développer de petits jeux (avancer, reculer, tourner, jouer un son, etc.).
Lors des séances d’initiation, n’importe quel public est invité, enfants, ados, adultes, nous adaptons le cours suivant le niveau. Pendant ces séances nous présentons le but de l’association en leur montrant des exemples, et s’il reste du temps nous essayons de les faire coder. Si certaines personnes sont intéressées, elles peuvent s’inscrire à des séances de formation, où 2 heures par semaine on se retrouve pour apprendre à coder. Il existe également une formation intensive où pendant 4 jours consécutifs, nous apprenons à coder et réalisons de petits travaux.
Actuellement le public visé est plus les personnes ayant peu accès à l’informatique et qui n’ont pas forcément de travail, pour leur apprendre la base du code et pouvoir s’en sortir avec ce peu de bagage (pour créer par exemple son CV au format HTML, une page internet de présentation de ses travaux, etc.). Mais n’importe qui peut s’inscrire pour profiter des cours.
5. Que pensez-vous que la découverte du développement informatique apporte aux personnes novices ? Cela ouvre-t-il les esprits par rapport à l’image du métier de développeur en France ? Cela fait-il naître des vocations ?
La première fois que l’on montre un code source d’une page web à quelqu’un, celui est très étonné et presque dégoûté car selon lui c’est très compliqué et incompréhensible. Mais après lui avoir expliqué que chaque ligne signifiait quelque chose et en le faisant coder sa propre page internet, il se rend compte que c’est plutôt simple car il suffit d’écrire ce qu’on veut pour que l’ordinateur exécute l’action. Certaines personnes qui au départ avaient peur se retrouvent à la fin en train de coder.
La base que nous apportons permet de créer de simples choses mais qui peuvent être utiles, en entreprise par exemple. Si ce sont des personnes en difficulté et qu’elles sont capable de créer un CV ou une page internet en HTML, ça fait des connaissance en plus. Il faut persévérer pour en apprendre davantage ! Une personne que j’ai eu en formation m’a confié vouloir créer un site internet pour partager ses photos. Avec de simples bases en programmation c’est tout à fait possible, on peut créer ce qu’on a besoin et adapter selon ses envies. Si après les personnes trouvent ça amusant et veulent en savoir plus c’est un bonus.
6. Pensez-vous que cela fait avancer la reconnaissance et la compréhension du métier de développeur ?
Actuellement il est encore trop tôt pour voir les réactions sur les personnes de notre association. Le but étant de leur montrer que l’informatique et en particulier la programmation n’est pas uniquement destinée aux érudits. Même si les membres n’arrivent à faire que de petits morceaux de code, ils fonctionnent, c’est déjà bien, il faut les encourager.
Si après les formations cet apprentissage se transforme en passion, c’est super. Et si ce n’est pas le cas, ils auront néanmoins appris que chaque objet informatisé est en fait une succession d’ordre que quelqu’un à écrit dans un fichier ! Lors d’une des formations, l’une des personnes présente s’est rendue compte qu’en fait, toutes les choses informatisées que l’on utilise au quotidien sont réalisées par une ou plusieurs personnes, qui ont ordonnées au système de réaliser des tâches très précises.
7. Qu’est-ce que ces cours vous apportent à vous personnellement ?
Ça me permet de simplifier au maximum les explications. Expliquer quelque chose de complexe est un exercice très difficile, mais prouve que l’on comprend bien de quoi l’on parle. « Si vous ne pouvez expliquer quelque chose simplement, c’est que vous ne l’avez pas bien compris » – Albert Einstein
Bien sûr, nous ne pouvons pas tout connaître, quand une personne nous pose une question et que l’on ne connait pas la réponse, on ne va pas lui mentir. Nous avons chacun des connaissances différentes sur plusieurs sujets.
Mais également, quand je vois que les personnes au départ souhaitaient abandonner parce que « c’est trop compliqué » et qu’au final elles arrivent à créer de petit programmes, c’est super. Il n’y a qu’en s’accrochant que l’on peut y arriver. Je suis tombé et je tombe toujours sur beaucoup d’erreurs, mais c’est en persévérant que l’on arrive à ses fins.
C’est vraiment une joie de partager ses connaissances avec d’autres personnes, mais c’est beaucoup plus gratifiant quand celles-ci réussissent. « C’est le rôle essentiel du professeur d’éveiller la joie de travailler et de connaître. » – Albert Einstein
Max est étudiant à Epitech, et bénévole au sein des Voyageurs du Code : www.maxprudhomme.fr. JobProd est un intermédiaire atypique du recrutement pour développeurs passionnés qui sélectionne des entreprises IT où il fait bon travailler : www.welovedevs.com/fonctionnement-developpeurs/
Merci Max d’avoir répondu à nos questions !
Et vous, qu’en pensez-vous ? Pour ou contre enseigner le code à tous ? Est-ce que cet article vous donne envie de passer à l’action ?
Cet article vous a plu ? Vous aimerez sûrement aussi :
Changer d’entreprise, c’est excitant. Nouveau challenge, nouveaux collègues, nouveau café. Mais, bien souvent, on oublie…
Ça n’étonnera personne si nous affirmons que le monde du développement logiciel est en constante…
En Allemagne, le travail en tandem à temps partiel, aussi appelé « jobsharing » est…
On se retrouve comme d'habitude pour le début du classement qcm saison automne ! Mais…
La saison printemps des tests techniques WeLoveDevs s'est terminée le 31 mai, et c'est Axel…