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 :

  • Je suis en train de créer JavaScript de Zéro: un cours vidéo en ligne qui vous apprendra suffisamment de JavaScript pour être embauché rapidement. Vous êtes en train de lire le manifeste de ce cours. Accédez en avant-première à JavaScript de Zéro.
  • J’envoie une newsletter hebdomadaire pour les débutants complets chaque vendredi. Articles, podcasts, vidéos, conférences… je sélectionne à la main le meilleur contenu concernant le JavaScript chaque semaine pour vous. Abonnez-vous maintenant et jetez un oeil aux archives.
  • Je propose un mentorat gratuit via Skype / Google Hangout / Slack pour vous aider à apprendre plus vite. Ajoutez-moi à vos contacts et discutons dès maintenant ! Skype: jeremy.mouzin, Hangout: jeremy.mouzin (at) gmail.com, Slack: javascriptdezero.slack.com (abonnez-vous pour obtenir le lien d’invitation Slack).
  • Je tweete des liens et des bouts de code utiles pour améliorer votre productivité en JavaScript.

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

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

Les concepts en premier, la syntaxe en second

Tous les cours 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’utiliserai des animations graphiques pour expliquer en Français clair et sans utiliser de code les concepts de programmation dans un premier temps. Ensuite seulement, vous apprendrez comment appliquer ces concepts en utilisant le langage JavaScript.

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

C’est LA compétence la plus importante à acquérir pour un développeur professionnel. Et pourtant, la plupart des cours (pour ne pas dire tous) n’enseignent jamais comment résoudre les bugs, 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 mon cours 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 du cours puisqu’elle vous sera utile tout le temps pendant 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 content 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’enseignerai dans mon cours, en plus des concepts de programmation et la syntaxe du JavaScript, la façon dont je raisonne pour résoudre un problème donné. 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 apprendrez à penser comme un développeur.

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.

Mon cours est conçu sur le principe des répétitions espacées. Par conséquent vous retiendrez naturellement ce que j’enseigne dans mes vidéos. De plus, chaque chapitre sera accompagné d’une fiche de travail (en PDF) résumant les points importants à retenir de façon claire et concise.

Vous pourrez imprimer et relire ces fiches quand bon vous semble pour vous rafraîchir la mémoire sur le sujet. 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 ce cours 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 mon cours, 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 cours 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, je produirai des animations et des images explicatives de qualité pour expliquer les concepts que j’aborde.

De cette façon, vous aurez 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. Tellement. FAUX.

Je concevrai mes exercices et mes exemples de code pour qu’ils utilisent le moins de maths possible. Et non, vous n’avez pas besoin d’introduire la factorielle pour expliquer le principe d’une fonction récursive.

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 serait une meilleure approche plutôt que de résoudre un exercice juste pour appliquer une leçon.

Je concevrai mes exercices pour qu’ils soient toujours utiles et ancrés dans des problèmes réels et pas inventés.

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 mon cours, vous devrez résoudre 4 sortes d’exercices après chaque leçon: un exercice simple, intermédiaire, difficile (avec des cas particuliers) et un exercice « Trouvez le bug ! ». 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 bug ! » sera très utile puisque je rappelle qu’on passe 90% de son temps à corriger des bugs 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’utiliserai des étapes très graduelles pour m’assurer que vous ne soyez pas perdu d’un coup avec les leçons. Je ferai sûrement 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 5 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 mon cours durent environ 5 à 7 minutes. Si vous voulez regarder une vidéo pendant que vous êtes dans le bus ou dans le métro, aucune problème !

De plus de courtes vidéos vous forceront à 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 lisible 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.

Je n’ai jamais vu de cours qui explique pourquoi telle ou telle fonctionnalité a été créé 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 JavaScript de Zéro, vous apprendrez pourquoi une fonctionnalité particulière a été créé dans le langage et son intérêt avant de l’apprendre. Chaque leçon sera 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 insupportable. Vous pouvez le croire ? Je suis sûr que c’est très commun en fait.

Je n’utiliserai pas de musique de fond dans mon cours lorsque je montrerai du code.

Le silence aide à la concentration et à l’apprentissage.

Mais si vous apprenez mieux avec une musique de fond, libre à vous de mettre ce que vous voulez pendant mes vidéos, pas de problème. Mais je ne vous imposerai pas ma musique !

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 du cours, 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 mon cours. 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 cours en ligne c’est que toute 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 d’une décennie ! Quand les étudiants voient que leur prof ne fait jamais d’erreur dans ses 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 bugs au cours de son apprentissage. Je laisserai donc 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 bug 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 mon cours, 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.

Pas besoin d’outils, juste d’un navigateur web

Vous n’aurez pas à installer d’éditeur rutilant pour écrire vos premiers programmes. Vous aurez juste besoin de votre navigateur web. Les outils évolueront au fur et à mesure que vous progresserez avec le langage JavaScript.

Support de la communauté

Rester coincé des heures sur un bug 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 mon cours puisque vous bénéficierez de mon aide et de celui de la communauté JavaScript de Zéro :

  • Chat en live sur Slack: javascriptdezero.slack.com (demandez-moi une invitation par email ou mieux, abonnez-vous pour la recevoir directement !)
  • Chat vidéo en tête à tête avec moi avec partage d’écran (et de code) via Skype, Google Hangout, ou Slack

Objectifs du cours

  • 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 bugs.
  • Être capable de corriger les bugs 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 gratuitement au cours ! Dans quelques mois il deviendra payant.

Combien ça coûtera ?

49 € / mois.

Du fait que je fournirai un service d’aide à la demande en vidéo et par chat et que je travaille à plein temps sur ce cours, il sera facturé 49 € / mois. Ce n’est pas cher pour avoir un mentor compétent disponible qui vous aide à décrocher un emploi rapidement !

Comme le cours n’est pas encore complet, vous pouvez bénéficier d’un accès en avant-première gratuit si vous vous abonnez dès maintenant.

Intéressé ? Abonnez-vous !

Je suis toujours dans le processus de création du cours et j’ai besoin de vos retours pour faire en sorte qu’il soit le mieux adapté à vos besoins. J’utilise une approche itérative pour produire le meilleur contenu possible.

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.

Pour rester au courant des nouveautés, n’oubliez pas: abonnez-vous.

Merci.

Vous apprenez le JavaScript sans aucune expérience en programmation ?

Alors mon cours vidéo JavaScript de Zéro et ma newsletter sont faits pour vous !

Abonnez-vous maintenant pour:

  • Accéder gratuitement à mon cours JavaScript de Zéro (lisez mon manifeste pour l'enseignement du JavaScript)
  • Accéder à l'espace de discussion privé réservé aux membres du cours pour obtenir de l'aide (sur Slack)
  • Recevoir des trucs & astuces sur JavaScript pour les débutants chaque vendredi
  • Être notifié par email dès que je publie du nouveau contenu

Pas de spam. Seulement du contenu de qualité.
Vous pouvez vous désabonner quand vous voulez.

Abonnez-vous dès maintenant, c'est gratuit:

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.