Co jsem se naučil z Coursera's „Learning How to Learn“

Jak používám techniky učení z kurzu Coursera, abych byl lepší vývojář

Jsem vývojářem softwaru více než 4 roky a pokud se v této práci něco změní, je to, že se to neustále mění. Vždy se musí učit nové věci. Miluji tu část. Učení je cíl.

Když jsem tedy viděl kurz s názvem Učení se, jak se učit na Coursera, skočil jsem na příležitost dozvědět se o učení od akademických odborníků - Dr. Barbary Oakley a Dr. Terrence Sejnowski z Kalifornské univerzity v San Diegu.

Zde jsou klíčové cesty z kurzu, které mi pomáhají být lepší vývojář a obecně lepší student.

Režimy „Zaměřené“ a „Rozptýlené“

Když se učíte, existují časy, ve kterých se soustředíte, a časy, ve kterých necháte svou mysl bloudit. Tento zaostřený nebo rozptýlený režim je stejně cenný jako zaostřený režim a umožňuje mozku něco naučit. Takže - udělejte si přestávky, meditujte, přemýšlejte o jiných věcech a věnujte se v obou režimech spoustu času.

Jedním ze způsobů, jak se ujistit, že děláte pravidelné přestávky, je sledovat techniku ​​Pomodoro. Na tomto místě naprogramujete 25 minut a poté si udělejte pauzu na 5 minut. Délka práce a doba přestávky se mohou lišit v závislosti na tom, co je pro vás nejlepší. Důležité je, že máte pravidelnou přestávku. Existuje několik aplikací, které vám pomohou nastavit časovač Pomodoro. Používám Pomodoro Time.

Chunking

To je myšlenka rozdělení toho, co se chcete naučit, do konceptů. Cílem je naučit se každý koncept takovým způsobem, že se každý z nich stane známým dílkem skládačky. Abyste zvládli koncept, musíte to nejen vědět, ale také vědět, jak to zapadá do většího obrazu.

Zvládnuté kousky tvoří celou hádanku (vlevo) vs. naučené, ale nezvládnuté kousky se nevejdou do větší skládačky (vpravo)

Dr. Oakley navrhl skvělý postupný postup k přístupu k učení se něčemu. Za prvé, průzkum a základní nátěr - to zahrnuje skenování knihy nebo osnov kurzu, například pro získání obecné představy o větším obrázku. Za druhé, pozorujte příklad. Pak to udělej sám. A konečně to udělejte znovu a znovu v různých kontextech.

Řekněme, že jsem se snažil naučit React a měl jsem to štěstí, že jsem našel úžasný programový program Tyler McGinnis. Chcete-li použít tento navrhovaný postup, nejprve bych se podíval na všechny jednotky v kurzu, abych se pokusil získat obecný přehled témat. Poté bych postupoval pečlivě, když Tyler sestavuje příklad aplikace. Poté jsem vytvořil vlastní aplikaci. Nakonec bych tyto poznatky aplikoval na nové funkce, které vyvíjíme v Reacte při mé práci.

Dejte si pozor na iluze kompetencí

Existuje mnoho způsobů, jak se můžeme cítit, jako bychom se „naučili“ koncept. Například hledat řešení a myslet si, že víte, jak toho řešení dosáhnout, je jednou z nejčastějších iluzí kompetencí v učení. Zvýraznění nebo podtržení jsou také techniky, které často vedou k této iluzi učení. Na druhé straně, stručné poznámky, které shrnují koncepty klíčů, jsou mnohem efektivnější.

Nedávno jsem našel tuto skvělou aplikaci zvanou Vysoce (měli byste ji použít!). Díky rozšíření Chrome je opravdu snadné zvýraznit každý článek, který čtu na webu. Když jsem četl a zvýrazňoval článek, poskytuje krásné shrnutí všeho, co jsem zvýraznil. To je pro mě nesmírně užitečné.

Snažím se šetřit tím, co zdůrazňuji. Čím méně s sebou jede, tím je pravděpodobnější, že to odnesu. To dobře zapadá do dalšího bodu ...

Odvolání

Dr. Oakley odkazuje na výzkum Dr. Jeffa Karpicka, který se zaměřuje na postupy získávání informací a poskytuje vědeckou podporu za pár minut na shrnutí nebo stažení materiálu, který se pokoušíte naučit. Je to dlouhá cesta, jak vzít něco z krátkodobé paměti do dlouhodobého učení. Dokonce i vyvolání materiálu v různých fyzických prostředích vám může pomoci uchopit materiál nezávisle na fyzických narážkách, které váš mozek může mít.

Takže - po dokončení čtení tohoto článku (nebo jakéhokoli článku) se chvilku pokuste uvést, co si z tohoto článku pamatujete. Bude to daleko.

Testování na kousnutí

Chcete-li se vyhnout iluzím kompetencí nebo je prolomit, měli byste si vyzkoušet, jak se setkáváte s novým materiálem. Vyvolání je jednoduchý příklad tohoto mini-testování.

Není důležité, abyste tyto testy absolvovali bez chyb. Chyby (a náprava těchto chyb) jsou důležitým krokem k upevnění vašeho učení.

Over-learning

Po dlouhém učení ...

Hlavním krokem v tomto bodě není trávit příliš mnoho času v jednom sezení, kdy se znovu a znovu opakuje stejný materiál. Zákon o snižování výnosů se jistě použije. Rozložte ji na mnoho lekcí a na mnoho různých způsobů učení.

Snažil jsem se vyčlenit 30–60 minut každý den na každou novou věc, kterou se snažím učit nebo se učit hlouběji. Nejenže to mělo za následek trvalé učení, ale také jsem zjistil, že je mnohem dosažitelnější říci, že budu pracovat na X po dobu 30 minut.

Prokládání

Jakmile budete mít základní znalosti o tom, co se pokoušíte naučit, lze prokládání použít k osvojení pojmů. Tím, že cvičíte skákání tam a zpět mezi problémy, které vyžadují různé techniky, můžete upevnit své porozumění pojmům tím, že se naučíte, jak je zvolit, jak je aplikovat v různých situacích. Vědět, kdy použít konkrétní koncept, je stejně důležité jako vědět jak.

Tuto techniku ​​jsem dosud nepoužil záměrně, ale vraťme se k předchozímu příkladu učení React, mohu použít techniku ​​prokládání tím, že mám 2 různé projekty, ve kterých používám architekturu React a Flux.

Zpracovat produkt

Když čelíte otálení, přemýšlejte o procesu nad produktem. Často otálím, když jsem ohromen myšlenkou: „Dobře, musím udělat X“. Namísto toho může být užitečné myslet si: „Dobře, strávím hodinu na X“ - což není ohromující, nevyžaduje dlouhé rozdělení úkolů a začíná mě (90% bitvy).

Metafory a analogie

O metaforách a analogiích se často mluví jako o užitečných studijních technikách. Osobně jsem je nikdy moc nevyužil. Ale jak jsem potkal více lidí a více učitelů / mentorů, zjistil jsem, že ti nejlepší vždy používají, když komunikují. A schopnost komunikovat to, co jste se naučili, je jednou z hlavních dovedností, které odlišují dobrého vývojáře od skvělého (IMHO).

Snažte se proto vyvinout úmyslné úsilí, abyste učili, co se naučíte, někomu jinému, a při tom budete pravděpodobně nuceni vysvětlit pojmy pomocí relativních metafor a analogií.

V každodenní praxi vývoje softwaru existuje několik příležitostí učit se a učit se od druhých. Můžete spárovat program, komentovat žádosti o vyžádání, zaregistrovat se, abyste mohli mluvit o kódu na konkrétní téma, a blog! Udělejte všechny tyto věci. Vím, že se snažím.

Studijní skupiny / týmová práce

Tohle není pro mě nic nového a ukázalo se, že je nejvýhodnější udržovat neustálý pokrok a navzájem se zodpovídat. Je však důležité zahrnout do tohoto seznamu a poznamenat, že nalezení správné skupiny je klíčové.

V práci mám štěstí, že mám spoustu interních skupin: klub tech book (v současné době čte Pragmatic Programmer), open source klub, kulturní klub, elixirovou skupinu a pravděpodobně i další. Existuje však několik úžasných komunit, které se v NYC a online setkávají a učí se spolu!

Bez ohledu na to, co a kde se učíte, nemusíte se učit sami. Ve skutečnosti je to jedinečnost lidí, se kterými se učíte, a diskuse, které máte společně, to, co se naučíte, nezapomenutelné.

Klikněte níže na ❤, aby to ostatní viděli tady na médiu.