hvordan jeg bruker læringsteknikker Fra Coursera kurset for å bli en bedre utvikler
div>
jeg har vært En Programvareutvikler i mer enn 4 år nå, og hvis det er en Ting som aldri endres om denne jobben, er det at den alltid endrer seg. Det er alltid nye ting å lære. Jeg elsker den delen av det. Læring er målet.Så da jeg så et kurs som heter Learning How To Learn on Coursera, hoppet jeg på sjansen til å lære om læring fra akademiske eksperter – Dr. Barbara Oakley og Dr. Terrence Sejnowski fra University Of California, San Diego.
Her er de viktigste takeaways fra kurset som hjelper meg å være en bedre utvikler og, generelt, en bedre elev.
«Fokusert» Og «Diffust» Modus
når du lærer, er det tider hvor du er fokusert og tider hvor du lar tankene dine vandre. Denne ufokuserte eller diffuserte modusen er like verdifull som den fokuserte modusen for å la hjernen LÆRE noe. Så — ta pauser, meditere, tenke på andre ting, og gi deg selv god tid i begge modi.
En måte å sørge for at du tar regelmessige pauser på er Å følge Pomodoro-teknikken. Dette er hvor du programmerer i 25 minutter, og ta en pause i 5 minutter. Arbeids-og pausetidslengder kan variere basert på hva som fungerer best for deg. Det viktigste er at du har en vanlig pause. Det finnes flere programmer der ute som hjelper deg å sette Opp En Pomodoro timer. Jeg bruker Pomodoro Tid.
Chunking
dette er ideen om å bryte det du vil lære i konsepter. Målet er å lære hvert konsept på en måte at de hver blir som et velkjent puslespill. For å mestre et konsept trenger du ikke bare å vite det, men også å vite hvordan det passer inn i det større bildet.
dr. Oakley foreslo en stor steg-for-steg prosess for å nærme seg å lære noe. Først, undersøkelse og priming — dette innebærer å skanne en bok eller pensum i et kurs, for eksempel for å få en generell ide om det større bildet. For det andre, observere et eksempel. Så gjør det selv. Og til slutt, gjør det igjen og igjen i forskjellige sammenhenger.Så-la oss si at jeg prøvde å lære React, og jeg var heldig nok til å finne Tyler McGinnis fantastiske React.js Program kurs. For å bruke denne foreslåtte prosessen, ville jeg først se over alle enhetene i kurset for å prøve å få en generell oversikt over emnene som dekkes. Deretter vil jeg følge nøye Med Da Tyler bygger et eksempelprogram. Etter det ville jeg bygge min egen applikasjon. Og til slutt vil jeg bruke disse læringene i de nye funksjonene vi utvikler I React på jobben min.
Vokt Dere For Illusjoner Av Kompetanse
det er mange måter vi kan få oss til å føle at vi har»lært»et konsept. For eksempel, å se på en løsning og tenke at du vet hvordan du kommer til den løsningen, er en av de vanligste illusjonene om kompetanse i læring. Fremheving eller understreking er også teknikker som ofte fører til denne illusjonen av læring. På den annen side er korte notater som oppsummerer nøkkelkonsepter mye mer effektive.
Nylig fant jeg dette flotte programmet Kalt Highly (du bør bruke dette!). De gjør det veldig enkelt å markere en artikkel som jeg leser på nettet ved hjelp Av En Chrome-utvidelse. Når jeg er ferdig med å lese og fremheve en artikkel, gir den et vakkert sammendrag av alt jeg fremhevet. Dette er utrolig nyttig for meg.
jeg prøver å være sparsom i det jeg fremhever. Jo færre takeaways, jo mer sannsynlig at jeg faktisk vil ta det bort. Dette binder godt inn i neste punkt…
Recall
dr. oakley peker på dr. jeff karpickes forskning om gjenfinningspraksis for å gi vitenskapelig støtte bak å ta et par minutter for å oppsummere eller huske materiale du prøver å lære. Det går en lang vei å ta noe fra korttidshukommelse til langsiktig læring. Selv tilbakekalling av materiale i forskjellige fysiske miljøer kan hjelpe deg med å forstå materialet uavhengig av fysiske tegn som hjernen din kan ha.
So – når du er ferdig med å lese denne artikkelen (eller en artikkel), ta et øyeblikk og prøv å oppgi hva du husker fra artikkelen. Det vil gå en lang unna.
Bite-Sized Testing
for å unngå eller bryte gjennom illusjoner av kompetanse, bør du teste deg selv når du møter nytt materiale. Recall er et enkelt eksempel på denne mini-testing.
det er ikke viktig at du passerer disse testene uten å gjøre noen feil. Feil (og korrigere disse feilene) er et viktig skritt mot solidifying din læring.
Over-Læring
den viktigste takeaway på dette punktet er ikke å bruke for mye tid i en sittende går over det samme materialet om og om igjen. Loven om avtagende avkastning gjelder sikkert. Spre det ut over mange økter og over mange forskjellige måter å lære på.
jeg har prøvd å sette av 30-60 minutter hver dag for hver ny ting jeg prøver å lære eller lære i mer dybde. Ikke bare har dette vært bedre i å resultere i varig læring, men jeg finner det også mer oppnåelig å si at Jeg skal jobbe På X i 30 minutter.
Interleaving
når du har en grunnleggende forståelse av hva du prøver å lære, kan interleaving brukes til å hjelpe deg med å mestre konseptene. Ved å praktisere hoppe frem og tilbake mellom problemer som krever ulike teknikker, kan du stivne din forståelse av begrepene ved å lære hvordan du velger å bruke dem i ulike situasjoner. Vet når du skal bruke et bestemt konsept er like viktig som å vite hvordan.jeg har ikke bevisst brukt denne teknikken ennå, men går tilbake til det tidligere eksempelet på learning React, jeg kan bruke interleaving teknikken ved å ha 2 forskjellige prosjekter der Jeg bruker React og Flux arkitektur.
Prosess Over Produkt
når du står overfor utsettelse, tenk på prosess over produkt. Jeg utsetter ofte når jeg er overveldet av tanken, «Ok, Jeg må få X gjort». I stedet kan det være gunstig å tenke, «Ok, jeg vil tilbringe en time På X» — som ikke er overveldende, krever ikke en lang oversikt over oppgaver, og får meg i gang (90% av kampen).
Metaforer og Analogier
metaforer og analogier blir ofte snakket om som nyttige studieteknikker. Personlig har jeg aldri gjort mye bruk av dem. Men da jeg har møtt flere mennesker og flere lærere/mentorer, har jeg funnet ut at de beste alltid bruker disse når de kommuniserer. Og å kunne kommunisere det du har lært er en av de viktigste ferdighetene som skiller en god utvikler FRA EN stor EN (IMHO).Så prøv å gjøre en bevisst innsats for å lære det du lærer til noen andre, og ved å gjøre det, vil du sannsynligvis bli tvunget til å forklare begreper med relatable metaforer og analogier.
det er flere muligheter i den daglige praksisen med programvareutvikling for å undervise og lære av andre. Du kan koble program, kommentere pull forespørsler, registrere deg for å gi en kode snakk om et bestemt emne, og blogg! Gjør alle disse tingene. Jeg vet at jeg prøver.
Studiegrupper / Teamarbeid
Denne er ikke ny for meg og har vist seg å være mest gunstig for å opprettholde fortsatt fremgang og holde hverandre ansvarlige. Men det er viktig å inkludere i denne listen og merk at å finne den rette gruppen er nøkkelen.på jobben er jeg heldig å ha mange interne grupper: tech book club (for tiden Leser Pragmatic Programmer), open source club, culture club, elixir group, og sannsynligvis andre også. Men det er flere fantastiske samfunn som møtes og lærer sammen I NYC og online!
Uansett hva eller hvor du lærer, trenger du ikke å lære alene. Faktisk er det unikheten til de menneskene du lærer og diskusjonene du har sammen som gjør det du lærer uforglemmelig.