Tvær sögur af því hvernig ANKI getur hjálpað þér að læra erlent tungumál og undirbúa þig fyrir viðtöl

Ég trúði því alltaf að latur forritari væri góður forritari. Hvers vegna? Vegna þess að biðja harðan starfsmann að gera eitthvað, hann mun fara og gera það. Og latur forritari mun eyða 2-3 sinnum meiri tíma, en skrifar handrit sem gerir það fyrir hann. Það getur tekið óeðlilega langan tíma að gera þetta í fyrsta skipti, en með endurteknum verkefnum mun þessi nálgun skila sér mjög fljótt. Ég tel mig vera latan forritara. Það var formálið, nú skulum við fara að vinna.

Saga eitt

Fyrir nokkrum árum velti ég því fyrir mér hvernig ég gæti bætt enskuna mína. Ekkert var betra en að lesa bókmenntir. Ég keypti rafrænan lesanda, sótti bækur og ég byrjaði að lesa. Við lesturinn rakst ég sífellt á ókunnug orð. Ég þýddi þær strax með því að nota orðabækurnar sem voru innbyggðar í lesandann, en ég tók eftir einum eiginleika: orðin vildu ekki muna eftir þeim. Þegar ég rakst á þetta orð aftur nokkrum blaðsíðum síðar, með 90% líkum, þurfti ég aftur þýðingu og þetta gerðist í hvert skipti. Niðurstaðan var sú að það væri ekki nóg að einfaldlega þýða ókunnug orð við lestur, það þyrfti að gera eitthvað annað. Kjörinn kostur væri að kynna það inn í daglegt líf og byrja að nota það, en ég bý ekki í enskumælandi landi og það er ólíklegt. Svo mundi ég eftir því að ég las einu sinni um Skipt endurtekning.

Hvað er það og með hverju er það borðað? Í stuttu máli, það er þetta gleymandi feril, frekari tilvitnun í Wikipedia:

Þegar á fyrstu klukkustundinni gleymast allt að 60% allra upplýsinga sem berast; 10 klukkustundum eftir að hafa lagt á minnið eru 35% af því sem lært var eftir í minni. Svo gengur gleymsluferlið hægt áfram og eftir 6 daga eru um 20% af heildarfjölda upphaflega lærðra atkvæða eftir í minni og sama magn eftir í minninu eftir mánuð.

Og niðurstaðan héðan

Þær ályktanir sem hægt er að draga út frá þessari kúrfu eru þær að til að leggja á minnið er nauðsynlegt að endurtaka efnið sem lagt er á minnið.

Svo komum við með hugmynd millibils endurtekning.

ANKI er algjörlega ókeypis og opinn uppspretta forrit sem útfærir hugmyndina um dreifða endurtekningu. Einfaldlega sagt, tölvustýrð flash-kort hafa spurningu á annarri hliðinni og svar á hinni. Þar sem þú getur gert spurningar/svör með því að nota reglulega html/css/javascript, þá getum við sagt að það hafi sannarlega takmarkalausa möguleika. Að auki er það stækkanlegt með sérstökum viðbætur, og einn þeirra mun nýtast okkur mjög vel í framtíðinni.

Að búa til kort handvirkt er langt, leiðinlegt og með miklum líkum mun þú gleyma þessu verkefni eftir smá stund og því spurði ég sjálfan mig á einhverjum tímapunkti þeirrar spurningar hvort það væri hægt að gera þetta verkefni sjálfvirkt. Svarið er já, þú getur. Og ég gerði það. Ég segi strax, það er meira POC (Proof of concept), en sem hægt er að nota. Ef það er áhugi frá notendum og aðrir forritarar taka þátt, þá er hægt að koma því í fullunna vöru sem jafnvel tæknilega ólæsir notendur geta notað. Nú, að nota tólið mitt krefst nokkurrar þekkingar á forritun.

Ég les bækur með því að nota forritið Flugleiðari. Það hefur getu til að tengja utanaðkomandi orðabækur og þegar þú þýðir orð vistar það orðið sem þú kallaðir eftir til þýðingar í textaskrá. Það eina sem er eftir er að þýða þessi orð og búa til ANKI spil.

Í fyrstu reyndi ég að nota fyrir þýðingar Google þýðing, Lingvo API o.s.frv. En hlutirnir gengu ekki upp með ókeypis þjónustu. Ég tæmdi lausamörkin meðan á þróunarferlinu stóð, auk þess, samkvæmt skilmálum leyfisins, hafði ég ekki rétt til að vista orð. Á einhverjum tímapunkti áttaði ég mig á því að ég þyrfti að þýða orðin sjálf. Í kjölfarið var skrifuð eining dsl2html sem þú getur tengt við DSL orðabækur og hver veit hvernig á að breyta þeim í HTML sniði.

Svona lítur orðabókarfærsla út í *. HTML, valkostur minn miðað við valmöguleikann GoldenDict

Tvær sögur af því hvernig ANKI getur hjálpað þér að læra erlent tungumál og undirbúa þig fyrir viðtöl

Áður en ég leita að orði í tengdum orðabókum kem ég því að orðabókarform (lemma) að nota bókasafnið Stanford CoreNLP. Reyndar, vegna þessa bókasafns, byrjaði ég að skrifa í Java og upphaflega planið var að skrifa allt á Java, en í leiðinni fann ég bókasafnið hnút-java sem þú getur tiltölulega auðveldlega keyrt Java kóða frá nodejs og hluti af kóðanum er skrifaður í JavaScript. Ef ég hefði fundið þetta bókasafn fyrr, hefði ekki ein einasta lína verið skrifuð á Java. Annað hliðarverkefni sem fæddist í ferlinu er sköpunin geymsla með DSL skjölum sem fannst á netinu á sniðinu *.chm, breytt og færð í guðlega mynd. Ef höfundur upprunalegu skrárinnar er notandi með gælunafni yozhic Þegar hann sér þessa grein þakka ég honum kærlega fyrir vinnuna sem hann hefur unnið, án skjala hans hefði ég líklegast ekki náð árangri.

Svo, ég er með orð á ensku, orðabókarfærslu þess á sniðinu *. HTML, það eina sem er eftir er að setja allt saman, búa til ANKI greinar úr orðalistanum og setja þær inn í ANKI gagnagrunninn. Í þessu skyni var eftirfarandi verkefni búið til gögn2anki. Það getur tekið lista yfir orð sem inntak, þýtt, búið til ANKI *. HTML greinar og skrá þær í ANKI gagnagrunninn. Í lok greinarinnar eru leiðbeiningar um hvernig á að nota það. Í millitíðinni er önnur sagan þar sem skiptar endurtekningar geta verið gagnlegar.

Önnur sagan.

Allt fólk í leit að meira/minna hæfri sérgrein, þar á meðal forritarar, stendur frammi fyrir því að þurfa að búa sig undir viðtal. Mörg þeirra hugtaka sem spurt er um í viðtölum notar þú ekki í daglegri iðkun og þau gleymast. Þegar ég undirbjó mig fyrir viðtal, fletti í gegnum glósur, bók, uppflettirit, stóð ég frammi fyrir því að það tekur mikinn tíma og athygli að sigta út upplýsingar sem þú veist nú þegar því þær eru ekki alltaf augljósar og þú verður að lestu það vandlega til að skilja hvað það er, skiptir ekki máli. Þegar þú kemur að efni sem virkilega þarf að endurtaka gerist það oft að þú ert þegar þreyttur og gæði undirbúnings þíns skerðir. Á einhverjum tímapunkti hugsaði ég, af hverju ekki að nota ANKI kort í þetta líka? Til dæmis, þegar þú skrifar minnispunkta um efni skaltu strax búa til minnismiða í formi spurningar og svars, og síðan þegar þú endurtekur það muntu strax vita hvort þú veist svarið við þessari spurningu eða ekki.

Eina vandamálið sem kom upp var að það var mjög langt og leiðinlegt að skrifa spurningar. Til að gera ferlið auðveldara, gögn2anki verkefni ég bætti við umbreyta virkni markdown texti í ANKI kortum. Allt sem þú þarft er að skrifa eina stóra skrá þar sem spurningar og svör verða merkt með fyrirfram ákveðinni stafaröð, þar sem þátttakandinn mun skilja hvar spurningin er og hvar svarið er.

Þegar þessi skrá er búin til keyrir þú data2anki og hún býr til ANKI kort. Auðvelt er að breyta og deila upprunalegu skránni, þú þarft bara að eyða samsvarandi kortum og keyra forritið aftur og ný útgáfa verður búin til.

Uppsetning og notkun

  1. Setur upp ANKI + AnkiConnect

    1. Sæktu ANKI héðan: https://apps.ankiweb.net/
    2. Settu upp AnkiConnect viðbót: https://ankiweb.net/shared/info/2055492159

  2. Uppsetning gögn2anki

    1. Sækja gögn2anki frá github geymslunni
      git clone https://github.com/anatoly314/data2anki
    2. Setja upp ósjálfstæði
      cd data2anki && npm install
    3. Sækja java ósjálfstæði https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. Að pakka niður jar-dependencies.zip og setja innihald þess inn data2anki/java/jars

  3. Notaðu til að þýða orð:

    1. Í skrá data2anki/config.json:

      • í lyklinum ham sláðu inn gildið dsl2anki

      • í lyklinum modules.dsl.anki.deckName и modules.dsl.anki.modelName skrifa í samræmi við það Nafn þilfars и Model Name (verður nú þegar að vera búinn til áður en spil eru búin til). Eins og er er aðeins gerð líkansins studd Basic:

        Er með reiti að framan og aftan og mun búa til eitt spil. Texti sem þú slærð inn að framan mun birtast framan á kortinu og texti sem þú slærð inn í aftan mun birtast aftan á kortinu.

        hvar er upprunalega orðið? Fremri völlur, og þýðingin verður í Bakvöllur.

        Það er ekkert mál að bæta við stuðningi Basic (og öfugt kort), þar sem öfugt spjald verður búið til fyrir orðið og þýðingu, þar sem byggt á þýðingunni þarftu að muna upprunalega orðið. Allt sem þú þarft er tími og löngun.

      • í lyklinum modules.dsl.dictionariesPath skrá fylki með tengdum *.dsl orðabækur. Hver tengd orðabók er mappa þar sem orðabókarskrárnar eru staðsettar í samræmi við sniðið: Uppbygging DSL orðabókar

      • í lyklinum modules.dsl.wordToTranslatePath sláðu inn slóðina að lista yfir orð sem þú vilt þýða.

    2. Ræstu með ANKI forritið í gangi
      node data2ankiindex.js
    3. HAGNAÐUR!!!

  4. Notar til að búa til spil frá markdown

    1. Í skrá data2anki/config.json:

      • í lyklinum ham sláðu inn gildið markdown2anki
      • í lyklinum modules.markdown.anki.deckName и modules.dsl.anki.modelName skrifa í samræmi við það Nafn þilfars и Model Name (verður nú þegar að vera búinn til áður en spil eru búin til). Fyrir markdown2anki Aðeins gerð gerð er studd Basic.
      • í lyklinum modules.markdown.selectors.startQuestionSelectors и modules.markdown.selectors.startAnswerSelectors þú skrifar veljara sem þú merkir upphaf spurningar og svars með. Línan með veljaranum sjálfum verður ekki þáttuð og mun ekki enda á kortinu; þáttarinn mun byrja að vinna frá næstu línu.

        Til dæmis, þetta spurninga/svarspjald:

        Tvær sögur af því hvernig ANKI getur hjálpað þér að læra erlent tungumál og undirbúa þig fyrir viðtöl

        Það mun líta svona út í markdown:
        #QUESTION# ## Spurning 5. Skrifaðu mul fall sem mun virka rétt þegar það er kallað fram með eftirfarandi setningafræði. ```javascript console.log(mul(2)(3)(4)); // output : 24 console.log(mul(4)(3)(4)); // úttak : 48 ``` #ANSWER# Hér fyrir neðan er kóðinn og fylgt eftir með útskýringu á því hvernig það virkar: ```javascript fall mul (x) { return function (y) { // anonymous function return function (z) { // nafnlaus fall skilar x * y * z; }; }; } ``` Hér tekur `mul` fallið við fyrstu breytunni og skilar nafnlausu fallinu sem tekur seinni færibreytuna og skilar nafnlausu fallinu sem tekur þriðju færibreytuna og skilar margföldun á frumbreytum sem er send í röð Í Javascript fall skilgreint inni hefur aðgang að ytri virka breytu og fall er fyrsta flokks hlutur svo það er líka hægt að skila honum af fallinu og senda það sem rök í annarri falli. - Fall er tilvik af Object tegundinni - Fall getur haft eiginleika og hefur tengil aftur við byggingaraðferð sína - Fall er hægt að geyma sem breytu - Fall er hægt að senda sem færibreytu í annað fall - Fall getur verið skilað frá annarri aðgerð
        

        Dæmi tekið héðan: 123-JavaScript-viðtal-spurningar

        Einnig er skrá með dæmum í verkefnamöppunni examples/markdown2anki-example.md

      • í lyklinum modules.markdown.pathToFile
        skrifaðu niður slóðina að skránni þar sem *.md spurninga/svar skrá

    2. Ræstu með ANKI forritið í gangi
      node data2ankiindex.js
    3. HAGNAÐUR!!!

Svona lítur það út í farsíma:

Niðurstaðan

Kort sem berast á skjáborðsútgáfu ANKI eru samstillt án vandræða við ANKI skýið (ókeypis allt að 100mb) og þá er hægt að nota þau alls staðar. Það eru viðskiptavinir fyrir Android og iPhone, og þú getur líka notað það í vafra. Þar af leiðandi, ef þú hefur tíma sem þú hefur ekkert til að eyða í, þá geturðu lært eitthvað nýtt í stað þess að fletta stefnulaust í gegnum Facebook eða ketti á Instagram.

Eftirmáli

Eins og ég nefndi er þetta meira vinnandi POC sem þú getur notað en fullunnin vara. Um 30% af DSL flokkunarstaðlinum er ekki innleitt og þess vegna, til dæmis er ekki hægt að finna allar orðabókarfærslur sem eru í orðabókum, það er líka hugmynd að endurskrifa það inn JavaScript, vegna þess að ég vil "samræmi", og þar að auki, núna er það ekki skrifað mjög ákjósanlega. Nú er parsarinn að byggja tré, en að mínu mati er þetta óþarfi og þarf ekki að flækja kóðann. IN markdown2anki ham eru myndirnar ekki flokkaðar. Ég mun reyna að skera niður smátt og smátt en þar sem ég er að skrifa fyrir sjálfan mig mun ég fyrst og fremst leysa þau vandamál sem ég sjálfur mun stíga á, en ef einhver vill hjálpa, þá ertu velkominn. Ef þú hefur spurningar um forritið mun ég gjarnan aðstoða í gegnum opin mál í viðkomandi verkefnum. Skrifaðu aðra gagnrýni og tillögur hér. Ég vona að þetta verkefni nýtist einhverjum.

PS Ef þú tekur eftir einhverjum villum (og, því miður, þær eru einhverjar), skrifaðu mér í persónulegum skilaboðum, ég mun leiðrétta allt.

Heimild: www.habr.com

Bæta við athugasemd