- Der er to vigtige ting, man skal vide om at lære at kode:
- Den første pointe har jeg set igen og igen. Folk, der fortæller mig, at de vil lære at kode, og så begynder de at lære det, og så synes de, at det er pissekedeligt.
- Det bringer mig til punkt nummer to. At lære at kode betyder ikke længere det samme.
- Problemet er, at det ikke er det, folk ønsker. De ønsker at bygge noget. Og vi bør ikke længere tage det for givet, at man for at kunne bygge noget skal lære alt om computere eller endog kodning generelt.
- Som lærere er vi nødt til at erkende, at når folk siger, at de ønsker at lære at kode, mener de ofte i virkeligheden, at de ønsker at bygge en web- eller mobilapplikation.
- Som studerende: Lær det, du gerne vil lære.
- Så hvor lang tid tager det at lære at kode?
Der er to vigtige ting, man skal vide om at lære at kode:
- De fleste mennesker ønsker faktisk ikke at “lære at kode”
- At lære at kode betyder ikke længere én ting
Det er vigtigt at vide disse to ting, fordi ellers er den måde, vi lærer folk om kodning på, forkert, og folk vil ikke lære det.
Den første pointe har jeg set igen og igen. Folk, der fortæller mig, at de vil lære at kode, og så begynder de at lære det, og så synes de, at det er pissekedeligt.
Jeg kalder det kodningsfejlslutningen. Folk tror, at de vil lære at kode, men det, de i virkeligheden ønsker at gøre, er at bygge et produkt.
Når vi tænker over det, burde det være ret indlysende. Kendskab til kode i sig selv er ikke værdifuldt, hvis man ikke kan gøre noget med det. Så for de fleste mennesker er den største motivation for at lære at kode at bygge noget (selv om en tæt på andenpladsen er at få et bedre betalt job).
Det bringer mig til punkt nummer to. At lære at kode betyder ikke længere det samme.
Det plejede at være sådan, at for at kunne kode skulle man vide næsten alt om computere (deraf betegnelsen “Computer Science”). Derefter blev tingene abstraheret til et punkt, hvor man ikke rigtig behøvede at dykke ned i visse emner, medmindre man virkelig havde brug for det. For eksempel behøver jeg som webapplikationsudvikler på nuværende tidspunkt kun at vide meget lidt om systemadministration, fordi det for det meste gøres for mig af værktøjer som Heroku og Amazon Web Services.
Så når folk siger, at de ønsker at lære at kode, starter de fleste lærere der, hvor de antager, at de skal (hvor de altid har gjort det), med datatyper, de forskellige strukturer i et sprog, og hjælper eleverne med at udvikle en dybere forståelse af computere.
Problemet er, at det ikke er det, folk ønsker. De ønsker at bygge noget. Og vi bør ikke længere tage det for givet, at man for at kunne bygge noget skal lære alt om computere eller endog kodning generelt.
For eksempel, hvis nogen allerede arbejder med en dygtig backend-udvikler, ville det give mening blot at lære dem front-end’en, fordi det vil være det mest nyttige for dem. De vil faktisk hurtigere få det, de ønsker at få gjort, og de vil kunne lære backend’en på et senere tidspunkt. På den måde reducerer vi den kognitive belastning for den studerende og gør det muligt for ham eller hende at lære hurtigere.
Når man udvikler til nettet, skal man specifikt beskæftige sig med:
- HTML
- CSS
- JavaScript
- Back-end programmering
- Databaser
- Hosting/DNS
Der er meget her at lære. Og det meste af det er temmelig irrelevant for ikke-webudvikling (bortset fra databaser og applikationsstruktur naturligvis).
Som jeg ser det, involverer de fleste kodningsuddannelser en lokkemad og et skift. Det går sådan her:
Student: “Jeg vil gerne lære at kode.” (Men hvad de i virkeligheden – men ikke ved nok til at spørge – er, at jeg vil bygge en web- eller mobilapplikation.)
Lærer: “Okay, lad os begynde med datatyper.”
Lærer: “Okay, lad os begynde med datatyper.”
Lærer: “Jeg vil lære at kode:
(2 uger senere)
Lærer: “Nu kan vi designe effektive algoritmer.”
Lærer: “Nu kan vi designe effektive algoritmer.”
Eelev: “
Som lærere er vi nødt til at erkende, at når folk siger, at de ønsker at lære at kode, mener de ofte i virkeligheden, at de ønsker at bygge en web- eller mobilapplikation.
Det er fordi, at for dem er det det, kodning ER. Det er alt, hvad de nogensinde er blevet udsat for om kodning. Problemet er, at de ikke ved, hvordan de skal spørge om det! Så vi skal ikke bare tage alt hvad de siger for pålydende. Det er vores opgave som pædagoger at læse mellem linjerne.
Jeg husker at have set et teaterstykke for et par år siden, hvor en præst siger, at man skal fortælle sandheden, selv under vanskelige omstændigheder. Den person, han taler til, spørger: “Men hvad nu, hvis nogen stiller dig et spørgsmål, og du ved, at sandheden vil såre dem?” Præsten svarer: “Når nogen stiller dig et spørgsmål, skal du svare på det spørgsmål, de VIRKELIG stiller.”
Også inden for uddannelse skal man læse mellem linjerne for at finde ud af, hvad folk virkelig ønsker. Hvis de spørger om en bestemt ting, skal man guide personen hen imod det, der vil føre ham/hende hen imod hans/hendes ideelle læringsoplevelse.
Så det er op til os som undervisere og eksperter at guide folk i den rigtige retning og ikke bare lade dem svæve rundt. Hvis vi kan gøre det, kan vi give mange flere mennesker mulighed for at gøre fantastiske ting.
Som studerende: Lær det, du gerne vil lære.
En af de bedste ting, du kan gøre i dit eget læringseventyr, er at lære lidt om en masse ting – så du ved, hvad du senere vil dykke dybere ned i.
Her på One Month, når vi siger, at du kan “lære at kode på 30 dage”, mener vi, at du på bare 30 dage kan lære nok af HTML (JavaScript eller Python) til at være fortrolig med kode, sikker nok til at du kan skille dig ud på arbejdsmarkedet.
Så hvor lang tid tager det at lære at kode?
Vi hedder “One Month”, så betyder det, at efter 30 dage med kodning er vores elever færdige med at lære? Overhovedet ikke! Jeg har kodet i over 15 år nu, og der er stadig så mange ting, jeg ikke ved – men det er ikke det, der er pointen. At “lære at kode” handler ikke om at kunne hver eneste ting i sproget, det handler om at vide nok til at kunne konversere og sætte et præg på verden ved hjælp af din hjerne og dine kreative evner.