• Sep 2, 2024

Manifeste pour l’enseignement du JavaScript

    J’ai un unique but :

    Aider les gens n’ayant aucune expérience en programmation et qui souhaitent changer de métier à apprendre le JavaScript et à se faire embaucher en tant que développeur le plus vite possible.

    Pour atteindre cet objectif :

    • J'ai créé JavaScript de Zéro : une formation vidéo en ligne qui vous apprend suffisamment de JavaScript pour être embauché rapidement. Vous êtes en train de lire le manifeste de cette formation.

    • Je tweete des liens et des bouts de code utiles pour améliorer votre productivité en JavaScript.

    Pourquoi créer une formation vidéo sur JavaScript alors qu’il en existe déjà beaucoup ?

    Parce que celles qui existent déjà n’enseignent pas certains points cruciaux

    Les concepts en premier, la syntaxe en second

    Toutes les formations pour débutants focalisent sur l’enseignement de la syntaxe JavaScript avant de vous expliquer les concepts de programmation sous-jacents. Quelle approche compliquée pour les débutants !

    J’utilise des animations graphiques pour expliquer en français clair et sans utiliser de code les concepts de programmation dans un premier temps. Ensuite seulement, je vous apprends comment appliquer ces concepts en utilisant le langage JavaScript.

    Comment résoudre les bogues par soi-même

    C’est LA compétence la plus importante à acquérir pour un développeur professionnel. Et pourtant, la plupart des formations (pour ne pas dire toutes) n’enseignent jamais comment résoudre les bogues, interpréter les messages d’erreur, utiliser le débogueur ou chercher sur Google des réponses.

    Malheureusement pour vous, c’est 90% du travail d’un développeur !

    Le but n°1 de ma formation est de vous faire devenir autonome. Vous apprendrez la méthodologie complète que j’utilise pour déboguer n’importe quel code proprement. Cette compétence sera enseignée au tout début de la formation puisqu’elle vous sera utile tout au long de votre apprentissage.

    La résolution de problèmes expliquée

    Les auteurs de cours n’enseignent pas leur façon de penser pour résoudre les problèmes. Ils se contentent d’écrire et d’expliquer simplement une ligne de code après l’autre pour résoudre un problème donné. Ils oublient à chaque fois d’expliquer par où ils commencent et pourquoi.

    Ça rend les étudiants confus quand il s’agit de résoudre de nouveaux problèmes: ils ne savent pas par où commencer.

    J’enseigne dans ma formation, en plus des concepts de programmation et la syntaxe du JavaScript, la façon dont je raisonne pour résoudre un problème donné. Pour tout dire, j'ai même un module complet dédié : le module algorithmique !

    Je décris pas à pas mon raisonnement et ma façon de voir le problème avant d’écrire une ligne de code. Comme ça vous apprenez à penser comme un développeur.

    D’ailleurs j’ai déjà produit plusieurs vidéo en live sur YouTube où je résous des exercices en JavaScript en expliquant ma réflexion et en utilisant du code adapté pour les débutants (sans concepts avancés).

    Pas besoin de prendre de notes, restez concentré

    Regarder une vidéo est un bon moyen pour comprendre un concept, mais pas pour retenir toutes les informations contenues dans celle-ci. Se souvenir de ce que vous apprenez dans le temps est la clé du succès. Mais prendre des notes est très laborieux et surtout ça interrompt votre concentration pendant la vidéo.

    Ma formation est conçue sur le principe des répétitions espacées. Par conséquent vous retiendrez naturellement ce que j’enseigne dans mes vidéos.

    J’ai suivi le cours « Apprendre à apprendre » (cours en anglais mais les sous-titres sont disponibles en français) de l’Université de Californie pour concevoir cette formation en utilisant les dernières avancées dans les sciences cognitives.

    Au coeur des bonnes pratiques

    Vous apprendrez les bonnes pratiques pendant que vous apprendrez à programmer. Comme ça, à la fin de ma formation, vous ne saurez pas seulement développer et être autonome mais vous appliquerez également les bonnes pratiques du métier. C’est un atout considérable pour espérer décrocher un emploi.

    Des supports différents pour des étudiants différents

    La plupart des formations utilisent juste du code pour expliquer les choses. Mais nous sommes tous différents et beaucoup de gens préfèrent voir des images, des croquis, des schémas, des graphiques, des animations ou même des dessins pour comprendre de nouveaux concepts.

    Je suis au courant que certaines personnes sont bien plus réceptives au support visuel qu’à une voix off ou du code source. Pour répondre à ce besoin, j'ai produit des animations et des images explicatives de qualité pour expliquer les concepts que j’aborde.

    De cette façon, vous avez toujours plusieurs angles d’approche pour comprendre un nouveau concept et l’intégrer.

    Pas de mathématiques

    Les auteurs de cours utilisent les maths tout le temps dans leurs exercices. Pourquoi ?! Être bon en maths n’a jamais été un pré-requis pour apprendre à programmer ! La logique oui, mais les mathématiques, certainement pas.

    À cause de ça, beaucoup d’étudiants pensent qu’ils doivent être bons en maths pour devenir développeur et abandonnent en cours de route. C’est totalement FAUX !

    J'ai donc conçu mes exercices et mes exemples de code pour qu’ils utilisent le moins de maths possible.

    Pas d’exercices inutiles avec truc, machin ou toto

    Beaucoup d’exercices sont de faux problèmes déconnectés de la réalité créés uniquement pour des raisons de démonstration. Résoudre un exercice en apprenant quelque chose de nouveau qui soit utile pour vos futurs projets est une meilleure approche plutôt que de résoudre un exercice juste pour appliquer une leçon.

    J'ai conçu mes exercices pour qu’ils soient toujours utiles et ancrés dans des problèmes réels et pas inventés, dans la mesure du possible.

    Vous pouvez consulter les exercices sur le GitHub de la formation.

    Exercices de difficulté croissante

    Parfois, dans un cours, la difficulté entre chaque exercice est très différente et vous pouvez rester bloqué des heures sur un exercice donné. C’est déprimant.

    Pour éviter ça, dans ma formation, vous devrez résoudre des exercices après chaque leçon: un exercice simple, intermédiaire, difficile (avec des cas particuliers) et un exercice « Trouvez le bogue ! ».

    De cette façon vous vous entraînerez d’abord sur le concept enseigné avec des exercices simples avant de rencontrer des difficultés dans les exercices plus compliqués.

    L’exercice « Trouvez le bogue ! » vous challenge à lire, comprendre et corriger du code erroné et sera très utile puisque je rappelle qu’on passe 90% de son temps à corriger des bogues quand on est développeur.

    Une approche pas à pas

    Parfois, d’une leçon à une autre vous pouvez sentir une grosse différence de difficulté. Il est très difficile pour un enseignant d’augmenter progressivement la difficulté d’un cours dans le temps.

    J’utilise des étapes très graduelles pour m’assurer que vous ne soyez pas perdu d’un coup avec les leçons. J'ai aussi fait des vidéos qui se chevauchent en terme de contenu pour créer les transitions les plus douces possibles. Je préfère répéter un concept plusieurs fois plutôt que de risquer de vous voir perdu entre deux vidéos.

    Vidéos de 10 minutes

    Les vidéos qui sont longues sont pénibles à suivre jusqu’à la fin, spécialement quand vous n’avez pas l’habitude de programmer : lire du code est très fatiguant.

    Toutes les vidéos de ma formation durent environ 10 minutes, sauf quand je suis obligé de faire plus long pour la clarté d’une explication. Donc si vous voulez regarder une vidéo pendant que vous êtes dans le bus ou dans le métro, c’est la durée idéale !

    De plus, utiliser de courtes vidéos vous force à prendre des pauses plus fréquemment avant de regarder la prochaine vidéo, c’est bon pour faciliter la mémorisation.

    Vidéos adaptées au smartphone

    Regarder une vidéo sur son téléphone est très commun de nos jours. Malheureusement beaucoup de cours n’ont pas pris en compte cette tendance et utilisent de trop petits caractères sur leurs vidéos rendant la lecture difficile.

    Toutes mes vidéos sont créées soigneusement pour être confortablement lisibles sur téléphone.

    Un seul nouveau concept par vidéo

    Quand je vois une vidéo de 30 minutes dans un cours, je fuis en courant. Comme les enseignants connaissent leur domaine sur le bout des doigts, ils n’hésitent pas à introduire plusieurs nouveaux concepts différents dans une même vidéo.

    Mais ils oublient qu’ils parlent à des débutants complets qui sont peu familiers avec les nouveaux concepts introduits. Pour garder les choses simples, chaque vidéo ne contiendra qu’un seul nouveau concept à la fois.

    Liens naturels entre les leçons

    Je n’ai jamais vu de cours qui explique pourquoi telle ou telle fonctionnalité a été créée dans le langage ou pourquoi vous devriez l’apprendre. Suivre ce genre de cours revient à faire du saute mouton : on saute de leçon en leçon sans comprendre le lien entre chaque leçon.

    Dans ma formation JavaScript de Zéro, vous apprenez pourquoi une fonctionnalité particulière a été créée dans le langage et son intérêt avant de l’apprendre. Chaque leçon est connectée à la précédente et à la suivante. C’est comme ça que fonctionne la mémoire et que vous entraînerez votre sens logique.

    Pas de musique de fond gênante

    Une fois, j’ai annulé l’achat d’un cours juste parce que la musique de fond était trop forte et insupportable. Vous pouvez le croire ? Je suis sûr que c’est très commun en fait.

    Eh bien dans mes vidéos, pas de musique pour une concentration au maximum !

    Rien de trop technique

    Certains enseignants trouvent utile de parler de choses très « bas niveau » (proche du matériel) comme la façon dont sont encodés les nombres en mémoire etc. Je pense que c’est la meilleure façon de dégoûter n’importe quel débutant en programmation.

    Tout ce qui touche les sujets bas niveau seront étudiés dans les modules avancés / experts de la formation, vous ne les trouverez jamais dans un module conçu pour les débutants.

    Démystifier les termes techniques

    Fonctions récursives, méthodes, variables mutables, immuables, fonctions de premier ordre… Tous ces termes effrayants seront expliqués avec des analogies simples du quotidien, pas de maths, pas de trucs compliqués d’ingénieurs. Juste du français simple et clair.

    Pas de framework, seulement du JavaScript pur

    Apprendre un framework comme React, Angular ou Vue avant de connaître correctement le JavaScript est la pire des erreurs à faire. Comment pouvez-vous penser une seule seconde maîtriser un framework quand vous ne savez même pas maîtriser le langage sous-jacent ?

    C’est comme essayer d’apprendre à écrire du Shakespeare alors qu’on sait à peine parler anglais.

    Je ne parlerai pas des frameworks dans ma formation. Vous apprendrez uniquement le JavaScript pur et croyez-moi il y a déjà beaucoup de boulot de ce côté là !

    Les erreurs sont des opportunités pour apprendre

    Autre chose que je trouve très contre productif dans les formations en ligne c’est que toutes les erreurs sont coupées au montage. Cela provoque 2 problèmes terribles.

    Le premier, c’est que ça ne représente pas du tout la réalité du développement : on fait tous des erreurs, même après avoir programmé pendant plus de 20 ans ! Quand les étudiants voient que leur prof ne fait jamais d’erreur dans les vidéos, ils commencent à être honteux des leurs. Ça tue leur motivation et leur confiance en eux.

    Deuxièmement, supprimer les erreurs dans une vidéo est une opportunité ratée d’enseigner à un étudiant comment la résoudre ! C’est une opportunité d’apprentissage exceptionnelle pour un étudiant surtout qu’il va être confronté à énormément de bogues au cours de son apprentissage. J'ai donc laissé mes erreurs en vidéo pour que vous puissiez voir comment je raisonne pour les résoudre.

    Devenir confiant et autonome

    La ludification (gamification) est devenue le standard pour motiver les gens sur les plateformes en ligne. Acquérir un badge ou un trophée virtuel n’a jamais motivé personne à continuer à travailler.

    En revanche, les petites victoires fréquentes, oui.

    Ressentir la joie de corriger un bogue ou d’écrire le code source correct avant que la leçon ne se termine… ÇA, ça vous motivera et vous donnera confiance en vous !

    Une de mes priorités les plus importantes est de vous faire devenir autonome. À la fin de ma formation, vous serez capable de corriger vos propres erreurs de code et d’apprendre par vous-même de nouveaux concepts en un clin d’oeil.

    Apprendre par soi-même en autonomie est la clé pour devenir un développeur aguerri car c’est un métier en constante évolution.

    Les outils : Visual Studio Code et Chrome

    Vous n’aurez qu’à installer Visual Studio Code et le navigateur Chrome, qui sont les références populaires actuelles en terme d’outils de développement.

    Les extensions et autres outils qu’on utilisera dans la formation évolueront au fur et à mesure que vous progresserez avec le langage JavaScript.

    Support de la communauté

    Rester coincé des heures sur un bogue est la pire expérience qu’on puisse subir quand on apprend à programmer. Ça tue la confiance en soi et la motivation.

    Ça n’arrivera pas dans ma formation puisque vous bénéficierez de mon aide en tête à tête (mentorat en visioconférence avec partage d'écran) !

    Objectifs de la formation

    • Apprendre les bases de JavaScript proprement pour avoir de solides fondations en programmation.

    • Devenir un développeur autonome qui puisse apprendre puis évoluer par lui-même.

    • Être capable de corriger ses propres bogues.

    • Être capable de corriger les bogues des autres.

    • Être capable de lire et comprendre le code de quelqu’un d’autre et de l’améliorer.

    • Concevoir et créer une application à partir de zéro.

    • Résoudre un problème donné en utilisant du code.

    • Écrire du code de qualité en appliquant les bonnes pratiques.

    • Décrocher un travail dans l’industrie aussi vite que possible.

    Si vous êtes intéressé : inscrivez-vous dès maintenant pour accéder à ma formation ! Le module débutant est gratuit. À partir du module intermédiaire, la formation est payante.

    N’hésitez pas à m’envoyer un email ou à me laisser un commentaire sur cet article pour me dire ce que vous pensez de ce manifeste.

    Merci et à bientôt dans ma formation 😉.

    0 comments

    Sign upor login to leave a comment