Voici Pourquoi Apprendre À Coder Est Si Difficile (et que faire à ce sujet)

C’est parce que votre cerveau stocke des souvenirs à long terme dans l’hippocampe via des associations. L’hippocampe a besoin de contexte pour stocker un nouveau concept avec des concepts connexes. Le contexte, dans ce cas, n’est pas les lignes de code adjacentes avec des explications individuelles.

Au lieu de cela, les nouveaux développeurs Web auraient une bien meilleure chance de stocker le concept d’un serveur HTTP en l’associant à quelque chose qu’ils comprennent déjà. Votre cerveau doit créer un riche réseau de connexions pour stocker avec succès de nouveaux concepts stimulants.

Voici quelques façons dont votre cerveau pourrait mieux comprendre les composants d’un serveur HTTP :

  1. Une analogie qui explique les différentes parties du bloc de code et utilise les relations existantes pour expliquer ces nouvelles relations.
  2. Une version interactive de l’extrait de code qui affiche l’état en direct de l’application. Lorsque vous modifiez une ligne, vous obtenez une réponse instantanée sur ce qui est arrivé à votre demande.

Erreur #2: Non-respect de la règle des 80/20

Si vous interviewez un professeur de développement Web ou 10 nouveaux développeurs Web, vous entendrez parler des mêmes défis encore et encore. Positionnement CSS. Flottant. Rappel. Ce sont les défis les plus courants des 10 dernières années.

Pour une raison quelconque, cependant, les tutoriels enseigneront toujours chaque concept pendant le même laps de temps. Si une leçon de CSS d’introduction est composée de 10 leçons et devrait prendre 5 heures au total, chaque leçon durera environ 30 minutes. Les plus faciles sont enseignés aussi longtemps que les plus difficiles, même s’il existe un consensus bien documenté sur les sujets les plus difficiles!

C’est comme apprendre à casser un œuf par rapport à saisir soigneusement une poitrine de poulet gourmande. Les deux sont tout aussi importants pour préparer un bon repas, mais il faut beaucoup plus de pratique. Mais, vous pouvez être induit en erreur de croire qu’ils sont tout aussi difficiles car la cuisson d’une poitrine de poulet semble parfaitement de l’extérieur être un travail simple.

Les nouveaux développeurs résolvent ce problème de deux manières:

  1. Supposons qu’ils sont les plus stupides et abandonnent
  2. Consultez d’autres tutoriels sur le même sujet, qui seront largement répétitifs et parfois de mauvaise qualité. L’approche « pulvériser et prier ».
  3. Passez au sujet suivant en supposant qu’ils « le comprendront plus tard »

Les enseignants d’autres disciplines utiliseront une analyse 80/20 pour recentrer leurs efforts. Cela signifie que 20% des nouveaux concepts consommeront 80% du temps d’apprentissage des élèves.

Exemples de sujets CSS

Les 6 sujets CSS peuvent être également nécessaires pour créer un beau site Web. Mais ils ne sont pas aussi faciles à apprendre. Certains créent des heures de lutte.

Dans un monde idéal, un programme CSS complet comprendrait 2 à 3 fois plus de matériel sur ces sujets difficiles courants. Cela comprendrait des encouragements positifs (« Tout le monde se bat avec ça! ») et des possibilités de pratique supplémentaires. Mais, cela ne s’est pas encore produit, et je ne m’attends pas à ce que cela se produise un jour pour les services les plus populaires.

Vous savez que vous êtes coincé dans cette ornière lorsque vous essayez d’apprendre un nouveau concept depuis des heures, et vous ne pouvez toujours pas prédire ce qui se passera si vous modifiez une ligne de code. Vous pouvez utiliser la Technique de Feynman pour déterminer les sujets que vous ne comprenez pas complètement:

  1. Choisissez un Concept
  2. Enseignez-le à un Tout-petit
  3. Identifiez les lacunes et Revenez au Matériel Source
  4. Revoir et Simplifier (facultatif)

Erreur #3: Enseigner du Point de Vue d’un Ingénieur expérimenté

De nombreux tutoriels d’introduction au codage sont écrits par des ingénieurs avec plus de 10 ans d’expérience. Comment savoir ? Parce que j’ai dû revoir ou relire des tutoriels encore et encore jusqu’à ce que je réalise: « Ils ne vont pas expliquer ce concept clé! Je vais devoir rechercher une explication sur Internet avant de pouvoir continuer. »

Il s’agit en fait d’un biais cognitif bien documenté appelé la « malédiction de la connaissance », et cela se produit dans toutes les disciplines techniques.

Source d’image: CommunicateHealth

Voici ce que cela signifie moyens – lorsque les enseignants ont des années d’expérience avec une matière technique, ils ont déjà acquis une compréhension approfondie de la matière. Comme ils sont aveuglés par les connexions dans leur propre cerveau, ils ne peuvent pas comprendre comment un débutant pourrait voir le nouveau matériel.

Si vous vous souvenez de la façon dont votre cerveau stocke les souvenirs d’en haut, cela a en fait une base biologique! L’hippocampe de l’enseignant a formé des associations qui ne sont pas présentes dans le cerveau des élèves.

Pour surmonter ce défi, je recommande un outil comme FreeCodeCamp qui a été écrit par des développeurs web autodidactes pour d’autres dans une position similaire! Il a un programme complet qui est spécifiquement destiné à aider les apprenants autodirigés à surmonter les obstacles.

Erreur #4: Enseigner le Code Comme S’Il s’agissait d’un Nouveau Système Mystérieux

Revenons à la comparaison de cuisson. La plupart des gens ont cuisiné QUELQUE chose toute leur vie ou ont appris les bases par leurs parents. Ils connaissent déjà tous les outils de base des années d’essais et d’erreurs. Donc, si vous enseigniez à une personne à être un cuisinier professionnel, vous auriez déjà les bases sur lesquelles s’appuyer.

Mais il n’y a pas de version « de base » du développement web d’apprentissage! Même si vous avez appris R ou Java dans le passé, il n’y aura toujours pas beaucoup de leçons qui se prolongeront.

Alors, comment la plupart des tutoriels en ligne en tiennent-ils compte? Ils comprennent des leçons qui enseignent le code comme si c’était un nouveau monde fantastique, plein de serveurs HTTP, de navigateurs capricieux et d’événements asynchrones. Ils agissent comme si ces pièces compliquées constituaient la base d’un apprentissage avancé ultérieur.

Imaginez si la cuisson nécessitait une barrière à l’entrée aussi élevée. Nous mangerions tous de la nourriture au micro-ondes. La cuisine engage les 5 sens et fait que la bonne procédure et la mauvaise procédure restent rapidement dans votre cerveau. Le cerveau humain apprend mieux lorsqu’il engage plusieurs sens. Il peut comprendre les systèmes lorsque différents stimuli rendent évident le bien contre le mal.

Maintenant, je sais que cela semble impossible. Puisque tout le code s’exécute dans un navigateur ou sur un serveur, comment peut-il se connecter à nos sens? Et je ne veux pas dire regarder un <div > zoomer sur un écran pendant que vous basculez ses propriétés CSS. Cela n’encourage pas l’apprentissage.

J’aurais aussi pensé que les nombres imaginaires des mathématiques étaient impossibles à connecter aux sens humains. Tu te souviens de moi, i2, i3, et je⁴? On dirait un nouveau système que vous avez juste besoin de mémoriser pour appliquer.

Au lieu de cela, Kalid Azad de BetterExplained utilise un graphique avec un axe x et un axe y pour vous aider visualisez la dimension « imaginaire « . Maintenant, le concept de nombres imaginaires est directement lié à un concept familier. Aucune mémorisation nécessaire.

Erreur #5: Manque de Feedback immédiat

À première vue, il peut sembler que le développement web dispose déjà d’un système parfait pour le feedback. Après tout, dès que vous actualisez votre navigateur ou que vous tapez « npm start » dans la console, vous obtenez une réponse immédiate.

Dans l’analogie de la cuisine, disons que vous essayez de cuisiner parfaitement une poitrine de poulet pour votre repas. Au lieu de cela, vous le brûlez. Qu’est-ce qui a pu mal tourner?

  1. Le couper trop fin en premier lieu
  2. Monter le feu trop haut
  3. Le mettre dans la casserole trop tard
  4. Le laisser dans la casserole trop longtemps

Votre produit brûlé à la fin ne vous donne aucune idée de ce qui a mal tourné. Seules des années d’expérience ou d’innombrables tentatives par essais et erreurs vous aideront à comprendre ce qui n’a pas fonctionné.

Voici le message d’erreur que vous obtiendrez si cela se produisait dans une invite de commande :

Cela ne va pas aider au débogage! Il encourage l’apprentissage par essais et erreurs jusqu’à ce que, quelques heures plus tard, vous le compreniez. Au lieu de cela, vous avez besoin d’un système de rétroaction qui vous avertit de l’impact de chaque décision:

Le visuel ci-dessus montre qu’à l’étape 2, « Température la plus élevée », quelque chose s’est mal passé qui a ruiné la sortie.

Ce riche réseau de décisions possibles est déjà intégré dans le cerveau des chefs experts. Et même les développeurs Web intermédiaires peuvent lire un message d’erreur et concentrer leurs efforts de débogage sur une partie du script. Mais les débutants n’ont pas d’instinct similaire, et aujourd’hui, ils n’apprennent que des heures d’essais et d’erreurs avec des retours intermittents.

Encore une fois, cela peut sembler impossible à réaliser dans un éditeur de texte ou un éditeur en ligne comme CodePen. Mais, le célèbre essai de programmation apprenable de Bret Victor a déjà décrit un cadre complet pour aider les nouveaux programmeurs à obtenir des commentaires sur chaque ligne de code de leur script dès qu’ils sont tapés.

Les apprenants autodidactes Sont les Plus touchés

Si vous êtes au lycée ou au collège, vous pouvez faire face à un niveau d’enseignement inférieur. Vous avez juste besoin de vous préparer pour le prochain test et vous avez un réseau de soutien de camarades étudiants. Vous êtes évalué si vous pouvez obtenir un score à un test, pas si vous pouvez être payé pour pratiquer la compétence dans la vie réelle.

Mais si vous êtes un développeur web autodidacte, vous êtes probablement confronté à des circonstances différentes. Vous avez un temps limité et vous devrez prouver l’ensemble de vos compétences en créant une véritable application ou en réussissant un test lors d’un entretien d’embauche. Il n’y a pas de concept d’étudier pour un test puis de passer à autre chose.

À mesure que l’industrie de l’éducation en ligne se développe et que de plus en plus d’adultes sont obligés d’acquérir de nouvelles compétences en ligne, je prédis que le pouvoir se déplacera vers les apprenants. Il y aura une pression croissante sur les entreprises d’éducation en ligne pour améliorer l’expérience d’apprentissage elle-même. Les meilleures stratégies d’enseignement seront récompensées par des centaines de milliers d’abonnés payants.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.