Kuinka Anki pelasti insinööriurani

Olin palanut ja ohjelmistourani pysähtyi vain kolme vuotta sisään. Muistini imeytyi. Oliko huono muistini stressistä, unen puutteesta vai oliko se aina niin huono? Työ oli sykli, joka aloitti päivän "Tänään on päivä, jolloin muutan" ja lopetetaan se itsekoskevalla dopamiiniriippuvaisella HackerNewsilla, Redditillä ja Mediumilla. Olin epäonnistunut.

Tarvitsin neuvoja, joita huomasin huomiotta # 213 : Älä sido itsearvostasi työhösi.

Halusin olla hyvä, helvetti, loistava ohjelmistoinsinööri. Mutta työni oli keskinkertaista. Vielä pahempaa, yritin. Perseeni oli tuossa tuolissa kaksitoista tuntia päivässä, kuusi päivää viikossa ja yritti kirjoittaa kaunista Python-koodia. Etsin jatkuvasti dokumentaatiota ja imin aina Internetin häiriötekijöiden kaninreikään. Olin kovaa epäonnistumista.

Ja sitten oli Kyle. Kyle ja minä olimme aloittaneet ohjelmoinnin tyhjästä; me molemmat oppimme työssä. Kolme vuotta myöhemmin edistyksemme ei ollut samanlaista.

"Kyle on ensimmäinen 10X-insinööri, jonka kanssa olen koskaan työskennellyt." - Jokainen. yksittäinen. työtoveri. yli 15 vuoden kokemus.

Kyle työskenteli arkisin klo 10-16. Hän sai työnsä valmiiksi aikaisin ja yksin tuotti 80% koko tiimistä. Lisää loukkauksia loukkaantumiseen, hän työskenteli vain kuin 60% ajasta. Loput ajasta käytettiin… HackerNewsiin, Redditiin ja Mediumiin. Olin yrittävä hidas raakaa, ja Kyle oli siro jänis.

Kylellä ei ollut salaa. Hän ei koskaan meditoinut. Hän oli laiha huolimatta McDonaldsista aamiaiseksi, lounaaksi ja illalliseksi. Mutta Kylellä oli supersankarikyky. Valokuvamuisti API-syntaksissa ja dokumentaatiossa.

Halusin sen ja olin kateellinen. Urani oli jumissa ja jotain tarvitsi muuttua. Ja niin aloitin omistetun matkan toistettuun välein. Joka päivä kolmen vuoden ajan vietin yksi-kolme tuntia toistossa. Se oli julmaa ja tarvitsin sitä.

Mikä on välitön toisto?

Välitön toisto on muistotekniikka, joka muistuttaa sinua käsitteistä eriteltyin välein maksimoidaksesi muistin säilymisen tehokkaasti. Se on strategia muistuttaa aivojamme tosiseikoista; se hyödyntää sitä, että paras aika muistaa tosiasia on juuri ennen kuin unohdamme sen. Aivomme ovat unohtavia, mutta voimme käyttää strategioita sen vähentämiseksi.

Kun väli kasvaa, muisti konsolidoituu todennäköisemmin pitkäaikaismuistiin (ja unohdetaan vähemmän). Huomaa, että jokaisen muistutuksen kesto on aina pidempi.

Huomaa: Tämä kuva edustaa täsmälleen samaa kuin yllä, mutta eri väreillä säilyttämisen edistämiseksi. Olen täynnä aivojen hakkereita.

Teeskentele, että sinulla on kuusi mahdollisuutta muistuttaa Bill Gatesia nimesi vuodessa. Jos Bill muistaa nimesi koko kalenterivuotta myöhemmin, saat miljoonan dollarin!

Minkä muistutusvälin valitsisit?

  • Vaihtoehto 1 - Cram ennen koetta: 26., 27., 28., 29., 30., 31. joulukuuta.
  • Vaihtoehto 2 - Ivy League Valedictorian: 1. joka toinen kuukausi. 1. tammikuuta, 1. maaliskuuta, 1. huhtikuuta jne.
  • Vaihtoehto 3 - Toistettu toisinto: 1. tammikuuta, 3. tammikuuta, 20. tammikuuta, 28. helmikuuta, 15. huhtikuuta, 30. syyskuuta.

Vaihtoehto 3 (Spided Repetition) antaa sinulle suurimman todennäköisyyden siitä, että Bill muistaa nimesi. Ah, kapteenin ilmeinen blogikirjoittaja.

Mutta miksi vaihtoehto 3?

  1. Cramming toimii harvoin, kun se siirtyy lyhytaikaisesta muistista. Kuinka monta täyttöistuntoa muistat lukiosta?
  2. Tasaisesti sijoitetut muistutukset tekevät työtä, mutta sinun on tarkistettava kaikki tietosi joka välein, mikä ei kuulosta skaalattavalta / hauskalta / anna sinun olla sosiaalisessa elämässä.
  3. Aivomme toimivat parhaiten eksponentiaalisesti sijoitettujen muistutusten kanssa.

Lääketieteen opiskelijoiden ja kielenoppimissovellusten, kuten Duolingo, ulkopuolella toistuva toistaminen ei ole yleistä. Se ei ole niin siistiä kuin tunkeutuminen, mutta se toimii. Lääketieteen opiskelijat käyttävät sitä muistamaan nuo kauheat tuhannen sivun oppikirjat. Duolingo käyttää sitä, koska se on tehokas. Muistatko kaverin, joka hallitsi Jeopardiaa muutama vuosi sitten? Välitön toistofanaatikko.

Jos se on niin hämmästyttävää, miksi toistuva toistaminen ei ole yleistä?

  • Ihmiset eivät tiedä siitä.
  • Vaikka käytät sitä, on vaikea saada tapana tarkistaa muistikortteja.
  • Korttien tekeminen on ärsyttävää. Kuka haluaa kirjoittaa muistiinpanoja muistikorttisovellukseen?
  • Ihmiset puhuvat suuren osan itsensä kehittämisestä, mutta eivät halua tehdä kovaa työtä.
  • Se ei ole siistiä. Et aio tuoda esiin kuvakorttia opiskelemalla ensimmäisenä päivänä.

Mutta ohjelmistosuunnittelijoilla on jo nämä kipupisteet ...

  • Insinöörien odotetaan tietävän tulevista trendeistä. Muussa tapauksessa käytät silti BitBucketia ja Adobe Flashia.
  • Insinöörit ovat tapoja. Tee muistikorttisovelluksen tarkistamisesta ensimmäinen työtehtäväsi (junassa, wc: ssä juuri ennen Candy Crushia). Lopeta StackOverflowing "miten voin muuttaa git-sitoutumistani" viisi kertaa kuukaudessa.
  • Sen sijaan, että käyttäisit muistiinpanojen tekemiseen Quiveriä, EverNotea, Notionia jne., Tallenna se muistikortiksi.
  • Hyvä ohjelmistoinsinööri edellyttää elinikäistä oppimista.
  • Olkaamme rehellisiä, et saa paljon ensimmäisiä treffejä.

Anki ja SuperMemo ovat yleisimpiä toistettuja toistosovelluksia. Molemmat auttavat luomaan muistikortteja ja tietokilpailuja, jotka perustuvat etäisyysalgoritmiin. Jos saat kysymyksen oikein, se kysyy uudestaan. Saitko väärän kortin? Se muistuttaa sinua huomenna. Käytän Ankia. Anki näyttää yleisemmältä ohjelmistoinsinöörien keskuudessa. Lataa mobiilisovellus (iOS / Android). Android-sovellus on upea.

Joitakin nopeita termejä (jos unohdat):

  • Välitön toisto on oppimistekniikkaa.
  • Anki ja SuperMemo ovat sovelluksia, jotka käyttävät toistettua toistoa.
  • Voit luoda muistikortteja Ankissa ja SuperMemossa. He kyselevät sinua tietyin väliajoin.
  • Kansi kutsutaan yleisesti koko muistikorttikokoelmaksi.

Tottumus: Aina kun etsin StackOverflow-palvelua, luon heti kysymykseeni kortin ja lisätään vastaukset vastauksiin Ankiin.

Välitön toisto on offline-köyhän miehen StackOverflow (Kyllä, yritin Dashia). Pre-Anki, unohdin syntaksin, joka vastaa päivittäistä oppimistani. Käytin Ankia jo yleiseen tietoon. Mikset omaksu ohjelmointikortteja Ankille? Olin epäröivä muutamista syistä.

  • Laiskuus. Hyvien Anki-ohjelmointikorttien kirjoittaminen voi olla vaikeaa.
  • Kortteja sisältäviä muistikortteja on vaikea muistaa. On paljon helpompaa muistaa Mongolian pääkaupunki (Ulan Bator) kuin kopioida .txt-tiedostossa olevien tiedostojen luettelo ulkoisesti asennetulta kiintolevyltä käyttämällä xargsia (cat list.txt | xargs -l {} mv / Volumes / External / {} / Työpöytä). Kortin väärä saaminen useita päiviä on turhauttavaa.

Ja viimeisten kolmen vuoden aikana olen lisännyt kaiken Ankkiin. Bash-aliakset, IDE-pikakuvakkeet, ohjelmointirajapinnat, dokumentaatio, suunnittelumallit jne. Tämän tekemisen jälkeen en suosittele kaiken lisäämistä . Anki-virheideni aihe ansaitsee oman artikkelin ...?

Edut

Kun olin käsitellyt Ankin, kun olin oppinut kortin, nopea kielen ja kehys-sovellusliittymien muistutus oli kuin saisi lopulta vastaukseni rukoukseen virtajumalia vastaan.

Kolme vuotta sitten aivan liian yleinen mallini oli:

  • Aloita koodaus
  • StackOverflow syntaksi, jonka unohdin turhauttavasti
  • Hajota. Lue HackerNews
  • Hmm, ei mitään uutta HackerNewsissa, kokeillaan Redditiä
  • Yritätkö päästä virtaukseen?
  • Epätoivo. Ehkä joku lähetti uuden tarinan HackerNewsiin?

Nyt varustettu parannetulla muistilla API-syntaksissa, dokumentaatiossa, maakunnan pääkaupungeissa ja suunnittelussa - siinä on huomattava ero.

2016 - Lyhyet purskeet, joita seuraa turhauttavia häiriötekijöitä

Kuluva vuosi tähän mennessä - minun pitäisi löytää uusi harrastus ...

Sitoutuminen

Välitön toisto vaatii päivittäistä sitoutumista, mutta takaa hyvän muistin. Useimmat käyttäjät tarkastelevat keskimäärin noin 20 minuuttia päivässä. Jos lisäät nolla ylimääräistä korttia (yskä, löysä), tarkistusaika on keskimäärin nolla, kun tiedosta tulee pitkäaikaista muistia. Luottamus tietää, että kun jotain lisätään Ankiin, sitä ei unohdeta, on päihdyttävää .

Heijastus

Välitön toisto on tärkein urani / elämäni hakkerointi . Se ei ole aina helppoa. Se ei takaa, että olet parempi insinööri (parhaat käytännöt ja muotoilu voittaa syntaksin), mutta se tekee sinusta kykenevän. Kun muistat nopeasti syntaksin, olet hämmästynyt siitä, kuinka nopeasti voit koodata. Joskus tämä johtaa vain haastavaan koodiin nopeammin. Mutta parhaat koodaajat koodaavat paljon . Ja se on ainoa taattu tapa parantaa.

Tieto yhdistää mielenkiintoisilla tavoilla. Monet korttini sisältävät blogeja ja artikkeleita suunnittelusta - RPC: n, SOAP: n, REST: n ja GraphQL: n historian tunteminen on johtanut parempiin suunnittelu- ja arkkitehtuuripäätöksiin. Laskuri : Binaarihakupuun algoritmien muistaminen ei ole vielä hyödyllistä ...

Jahtaa 10x

Aloitin tämän jahtaamalla absurdia unta "tulla KX: n kaltaiseksi 10X-insinööriksi". Aivan kuin siellä olisi valmistujaisseremonia tai jotain naurettavaa. Toinen ajatus on, että vuoden suurin työkalu -palkinto kuulostaa oikeassa.

Minulla ei ole aavistustakaan, mikä on 10X-insinööri; meillä ei ole vertailuarvoja, jotka kattavat tuotoksen, johtajuuden, koodin laadun ja teknisen velan. 10X: n jahtaamisesta tuli merkityksetöntä, kun minulla oli lopulta luottamus siihen, että muokkaan itseäni. Parannettu muisti antoi minulle hallita omaa kohtaloani.

Kyle on edelleen moninkertainen parempi kuin minä koskaan olen, ja se on aivan hieno.

Tarvitsin neuvoja, jotka jätettiin huomiotta # 421 : Älä vertaa itseäsi muihin. Varmista vain, että paranet päivittäin. Yhdistetty kiinnostus on maailmankaikkeuden voimakkain asia.

Muut:

  • Oma Anki Analytics

Muita hienoja artikkeleita toistuvasta toistosta:

  • Välitön toisto - Gwern
  • Pitkän aikavälin muistin lisääminen - Michael Nielsen
  • Ohjelmointikielen ulkoa opiskelu toisintoohjelmistoilla - Derek Sivers
  • Haluatko muistaa kaiken mitä opit? Luopuminen - langallinen

Seurantaartikkelit:

  • Parhaat ja pahimmat virheet, kun Anki opiskelee, muistihakkerointi ja ensimmäisten periaatteiden luominen vs taktiset muistikortit. (10. huhtikuuta)
  • Suosikkihakkeriini Internetin häiriötekijöiden välttämiseksi (13. huhtikuuta)

Alun perin julkaistu senrigan.io.