her er hvorfor lære at kode er så svært (og hvad man skal gøre ved det)

dette skyldes, at din hjerne gemmer langsigtede minder i hippocampus via foreninger. Hippocampus har brug for kontekst for at gemme et nyt koncept med relaterede begreber. Kontekst er i dette tilfælde ikke de tilstødende kodelinjer med individuelle forklaringer.

i stedet ville nye internetudviklere have en meget bedre chance for at gemme konceptet med en HTTP-server ved at knytte det til noget, de allerede forstår. Din hjerne har brug for at skabe et rigt netværk af forbindelser for at kunne gemme nye udfordrende koncepter.

Her er nogle måder, hvorpå din hjerne bedre kan forstå komponenterne på en HTTP-server:

  1. en analogi, der forklarer de forskellige dele af kodeblokken og bruger eksisterende relationer til at forklare disse nye relationer.
  2. en interaktiv version af kodestykket, der viser applikationens live-tilstand. Når du ændrer en linje, får du et øjeblikkeligt svar på, hvad der skete med din anmodning.

fejl # 2: undladelse af at overveje 80/20-reglen

Hvis du afhører en internetudviklingslærer eller 10 nye internetudviklere, vil du høre om de samme udfordringer igen og igen. CSS positionering. Flyde. Tilbagekald. Dette har været de mest almindelige udfordringer i de sidste 10 år.

af en eller anden grund vil tutorials dog stadig lære hvert koncept i samme tid. Hvis en lektion om indledende CSS består af 10 lektioner og forventes at tage 5 timer i alt, vil hver lektion være cirka 30 minutter lang. De lette undervises nøjagtigt så længe som de hårde, selvom der er en veldokumenteret konsensus om de hårdeste emner!

det er som at lære at bryde et æg versus hvordan man omhyggeligt sår et gourmet kyllingebryst. Begge er lige så vigtige for at lave et godt måltid, men man kræver meget mere øvelse. Men du kan blive vildledt til at tro, at de er lige så vanskelige, fordi madlavning af kyllingebryst perfekt ser ud udefra for at være et ligetil job.

nye udviklere løser dette problem på et par måder:

  1. Antag, at de er de dumme og giver op
  2. konsulter andre tutorials om det samme emne, som stort set vil være gentagne og lejlighedsvis dårlig kvalitet. “Spray and pray” – metoden.
  3. fortsæt til næste emne med den antagelse, at de vil”finde ud af det senere”

lærere fra andre discipliner vil bruge en 80/20 analyse til at fokusere deres indsats igen. Det betyder, at 20% af de nye koncepter vil forbruge 80% af de studerendes læringstid.

Sample CSS emner

The 6 CSS emner kan være lige så nødvendigt at opbygge en smuk hjemmeside. Men de er ikke lige så lette at lære. Nogle skaber timers kamp.

i en ideel verden vil en fuld CSS–læseplan indeholde 2-3 gange mere materiale om disse fælles udfordrende emner. Det ville omfatte positiv opmuntring (“alle kæmper med dette!”) og ekstra øvelsesmuligheder. Men det er ikke sket endnu, og jeg forventer ikke, at det nogensinde vil ske for de fleste populære tjenester.

du ved, at du sidder fast i dette spor, når du har forsøgt at lære et nyt koncept i timevis, og du kan stadig ikke forudsige, hvad der vil ske, hvis du justerer en linje kode. Du kan bruge Feynman-teknikken til at bestemme de emner, du ikke fuldt ud forstår:

  1. Vælg et koncept
  2. Lær det til et lille barn
  3. Identificer huller og gå tilbage til kildematerialet
  4. gennemgå og forenkle (valgfrit)

fejl #3: undervisning fra en erfaren ingeniørs perspektiv

mange introduktionskodningstutorials er skrevet af ingeniører med 10+ års erfaring. Hvordan ved jeg det? Fordi jeg var nødt til at se eller læse tutorials igen og igen, indtil jeg indså, “de vil ikke forklare dette nøglekoncept! Jeg bliver nødt til at søge på internettet for en forklaring, før jeg kan fortsætte.”

Dette er faktisk en veldokumenteret kognitiv bias kaldet “forbandelse af viden”, og det sker på tværs af alle tekniske discipliner.

Billedkilde: CommunicateHealth

Her er hvad det betyder – når lærere har mange års erfaring med et teknisk emne, har de allerede skabt en dyb forståelse af emnet. Da de er blinde af forbindelserne i deres egen hjerne, kan de ikke forstå, hvordan en nybegynder kan se det nye materiale.

Hvis du husker den måde, din hjerne gemmer minder ovenfra, har dette faktisk et biologisk grundlag! Lærerens hippocampus har dannet foreninger, der ikke er til stede i elevernes hjerner.

for at overvinde denne udfordring anbefaler jeg et værktøj som FreeCodeCamp, der blev skrevet af selvlærte netudviklere til andre i en lignende position! Det har en fuld læseplan, der specifikt er beregnet til at hjælpe selvstyrede elever med at overvinde forhindringer.

fejl # 4: Undervisningskode som om det er et mystisk nyt System

lad os gå tilbage til madlavningssammenligningen. De fleste mennesker har kogt noget hele deres liv, eller blev undervist i det grundlæggende af forældre. De er allerede bekendt med alle de grundlæggende værktøjer fra mange års forsøg og fejl. Så hvis du lærte en person at være en professionel kok, ville du allerede have det grundlæggende at bygge videre på.

men der er ingen “grundlæggende” version af læringsudvikling! Selvom du tidligere har lært R eller Java, vil der stadig ikke være mange lektioner, der overføres.

så hvordan tager de fleste online tutorials dette i betragtning? De inkluderer lektioner, der lærer kode, som om det er en fantastisk ny verden, fuld af HTTP-servere, finicky bro.sere og asynkrone begivenheder. De fungerer som disse komplicerede stykker er grundlaget for senere avanceret læring.

Forestil dig, om madlavning krævede en så høj adgangsbarriere. Vi ville alle spise mikrobølge mad. Madlavning engagerer alle 5 sanser og gør den rigtige procedure og den forkerte procedure hurtigt fast i din hjerne. Den menneskelige hjerne lærer bedst, når man engagerer flere sanser. Det kan forstå systemer, når forskellige stimuli gør godt vs. Dårligt indlysende.

nu ved jeg, at dette virker umuligt. Da al koden kører i en bro. ser eller på en server, hvordan kan den oprette forbindelse til vores sanser? Og jeg mener ikke at se en <div> Forstør rundt på en skærm, mens du skifter dens CSS-egenskaber. Det tilskynder ikke til læring.

Jeg ville også have troet, at imaginære tal fra matematik var umulige at forbinde til menneskelige sanser. Kan du huske jeg,i2, i3, og jeg går ind? Virker som et nyt system, som du bare skal huske for at kunne anvende.

i stedet bruger Kalid fra Betterforklaret en graf med en H og y-akse til at hjælpe dig med at visualisere “imaginær” dimension. Nu er begrebet imaginære tal bundet direkte til et velkendt koncept. Ingen memorisering nødvendig.

Fejl # 5: manglende øjeblikkelig Feedback

på overfladen kan det virke som om internetudvikling allerede har et perfekt system til feedback. Når alt kommer til alt, så snart du opdaterer din bro.ser eller skriver “npm start” i konsollen, får du et øjeblikkeligt svar.

i madlavningsanalogien, lad os sige, at du forsøger at lave et kyllingebryst perfekt til dit måltid. I stedet brænder du det. Hvad kunne være gået galt?

  1. skåret det for tyndt i første omgang
  2. vendte varmen op for højt
  3. læg det i gryden for sent
  4. efterlod det i gryden for længe

dit brændte produkt i slutningen giver dig ingen anelse om, hvad der gik galt. Kun mange års erfaring eller utallige forsøg ved hjælp af forsøg og fejl hjælper dig med at finde ud af, hvad der gik galt.

Her er den fejlmeddelelse, du ville få, hvis dette skete i en kommandoprompt:

det vil ikke hjælpe med debugging! Det tilskynder læring ved trial and error indtil, timer senere, du regne det ud. I stedet, du har brug for et feedbacksystem, der advarer dig om virkningen af hver beslutning:

det visuelle ovenfor viser, at der på trin 2, “Højeste Temp”, gik noget galt, der ødelagde output.

dette rige netværk af mulige beslutninger er allerede indlejret i hjernen hos ekspertkokke. Og selv mellemliggende netudviklere kan læse en fejlmeddelelse og fokusere deres fejlfindingsindsats på en del af scriptet. Men begyndere har ikke noget lignende instinkt, og i dag lærer de kun fra timers forsøg og fejl med intermitterende feedback.

igen kan det virke umuligt at trække i en teksteditor eller online editor som CodePen. Men Bret Victor ‘ s berømte essay Learnable programmering har allerede skitseret en hel ramme for at hjælpe nye programmører med at få feedback på hver linje kode i deres script, så snart de er skrevet.

selvlærte elever er skadet mest

Hvis du går i gymnasiet eller college, kan du håndtere et under-par niveau af undervisning. Du skal bare forberede dig til den næste test, og du har et supportnetværk af medstuderende. Du vurderes om du kan få en score på en test, ikke om du kan få betalt for at øve færdigheden i det virkelige liv.

men hvis du er en selvlært internetudvikler, står du sandsynligvis over for forskellige omstændigheder. Du har en begrænset tid, og du bliver nødt til at bevise hele din færdighed ved at opbygge en rigtig app eller bestå en test under en jobsamtale. Der er ikke noget begreb om at studere til en test og derefter gå videre.

efterhånden som onlineuddannelsesindustrien vokser, og flere voksne bliver tvunget til at lære nye færdigheder online, forudsiger jeg, at magten vil skifte mod eleverne. Der vil være stigende pres på onlineuddannelsesvirksomheder for at forbedre selve læringsoplevelsen. De bedste undervisningsstrategier vil blive belønnet med hundreder af tusinder af betalende abonnenter.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.