Ob zaj dab neeg hais txog yuav ua li cas ANKI tuaj yeem pab koj kawm lus txawv teb chaws thiab npaj rau kev xam phaj

Kuv ib txwm ntseeg tias tub nkeeg programmer yog ib tus programmer zoo. Vim li cas? Vim hais kom tus neeg ua haujlwm hnyav ua ib yam dab tsi, nws yuav mus ua. Thiab ib tug tub nkeeg programmer yuav siv sij hawm 2-3 zaug ntxiv, tab sis yuav sau ib tsab ntawv uas yuav ua rau nws. Tej zaum nws yuav siv sij hawm ntev tsis tsim nyog los ua qhov no thawj zaug, tab sis nrog kev rov ua haujlwm dua, txoj hauv kev no yuav them sai sai. Kuv xav tias kuv yog ib tug tub nkeeg programmer. Qhov ntawd yog qhov preamble, tam sim no cia peb nqis mus ua lag luam.

Dab neeg ib

Ob peb xyoos dhau los kuv xav paub tias kuv tuaj yeem txhim kho kuv cov lus Askiv li cas. Tsis muaj ib yam dab tsi zoo dua li kev nyeem ntawv. Kuv yuav ib lub tshuab nyeem hluav taws xob, rub tawm cov phau ntawv thiab kuv pib nyeem. Thaum nyeem ntawv, kuv pheej tuaj hla cov lus tsis paub. Kuv tam sim ntawd txhais lawv siv cov phau ntawv txhais lus ua rau tus nyeem ntawv, tab sis kuv pom ib qho feature: cov lus tsis xav kom nco qab. Thaum kuv tuaj hla lo lus no dua ob peb nplooj ntawv tom qab, nrog rau 90% qhov tshwm sim kuv rov xav tau kev txhais lus, thiab qhov no tshwm sim txhua zaus. Qhov xaus yog tias nws tsis txaus los tsuas txhais cov lus tsis paub thaum nyeem ntawv, koj yuav tsum ua lwm yam. Qhov kev xaiv zoo tshaj plaws yuav yog los qhia rau hauv lub neej txhua hnub thiab pib siv nws, tab sis kuv tsis nyob hauv lub tebchaws uas hais lus Askiv thiab qhov no tsis zoo li. Ces kuv nco qab tias kuv ib zaug nyeem txog Spaced Repetition.

Nws yog dab tsi thiab nws noj nrog dab tsi? Hauv luv, muaj qhov no tsis nco qab nkhaus, ntxiv quote los ntawm Wikipedia:

Twb tau nyob rau hauv thawj teev, txog li 60% ntawm tag nrho cov ntaub ntawv tau txais tsis nco qab lawm; 10 teev tom qab memorization, 35% ntawm qhov tau kawm tseem nyob hauv nco. Tom qab ntawd cov txheej txheem ntawm kev tsis nco qab pib maj mam, thiab tom qab 6 hnub txog 20% ​​ntawm tag nrho cov lej ntawm cov lus pib kawm tseem nyob hauv lub cim xeeb, thiab cov nyiaj qub tseem nyob hauv lub cim xeeb tom qab ib hlis.

Thiab qhov xaus ntawm no

Cov lus xaus uas tuaj yeem kos tau raws li qhov nkhaus no yog tias kom muaj txiaj ntsig zoo nws yog qhov yuav tsum tau rov ua cov ntaub ntawv memorized.

Yog li ntawd peb tuaj nrog ib lub tswv yim spaced repetition.

NKI yog ib qho dawb thiab qhib qhov kev pab cuam uas siv lub tswv yim ntawm spaced repetition. Cias muab, computerized flash cards muaj lus nug ntawm ib sab thiab ib lo lus teb rau lwm yam. Txij li thaum koj tuaj yeem ua cov lus nug / lus teb siv li niaj zaus html/css/javascript, ces peb tuaj yeem hais tias nws muaj qhov tsis muaj kev txwv tiag tiag. Tsis tas li ntawd, nws yog expandable nrog tshwj xeeb plugins, thiab ib qho ntawm lawv yuav muaj txiaj ntsig zoo rau peb yav tom ntej.

Manually tsim daim npav yog ntev, nkees, thiab muaj qhov tshwm sim siab, tom qab ib ntus koj yuav hnov ​​​​qab txog txoj haujlwm no, thiab yog li ntawm qee lub sijhawm kuv nug kuv tus kheej cov lus nug, nws puas tuaj yeem ua txoj haujlwm no. Cov lus teb yog yog, koj ua tau. Thiab kuv tau ua nws. Kuv mam li hais tam sim ntawd, nws ntau dua POC (Cov pov thawj ntawm lub tswvyim), tab sis qhov twg tuaj yeem siv tau. Yog tias muaj kev txaus siab los ntawm cov neeg siv thiab lwm tus neeg tsim khoom tau koom nrog, ces nws tuaj yeem raug coj mus rau cov khoom tiav uas txawm tias cov neeg siv tsis paub ntawv siv tau. Tam sim no, siv kuv cov nqi hluav taws xob xav tau qee qhov kev paub txog kev ua haujlwm.

Kuv nyeem phau ntawv siv qhov program AI nyeem ntawv. Nws muaj peev xwm los txuas cov phau ntawv txhais lus sab nraud, thiab thaum koj txhais ib lo lus, nws txuag cov lus koj hu rau kev txhais lus rau cov ntawv nyeem. Txhua yam uas tseem tshuav yog txhais cov lus no thiab tsim daim npav ANKI.

Thaum xub thawj kuv sim siv rau kev txhais lus Google Txhais, Lingvo API lwm. Tab sis tej yam tsis ua hauj lwm nrog cov kev pab dawb. Kuv tau tso tseg qhov kev txwv pub dawb thaum lub sijhawm txhim kho, ntxiv rau, raws li cov ntsiab lus ntawm daim ntawv tso cai, kuv tsis muaj cai cache cov lus. Qee lub sij hawm kuv pom tau hais tias kuv yuav tsum tau txhais cov lus kuv tus kheej. Yog li ntawd, ib qho module tau sau dsl2 html uas koj tuaj yeem txuas tau DSL phau ntawv txhais lus thiab leej twg paub yuav hloov lawv mus rau hauv HTML hom ntawv.

Nov yog qhov kev nkag hauv phau ntawv txhais lus zoo li hauv *.html, kuv qhov kev xaiv piv rau qhov kev xaiv GoldenDict

Ob zaj dab neeg hais txog yuav ua li cas ANKI tuaj yeem pab koj kawm lus txawv teb chaws thiab npaj rau kev xam phaj

Ua ntej nrhiav ib lo lus nyob rau hauv kev sib txuas dictionaries, kuv coj nws mus phau ntawv txhais lus (lemma) siv lub tsev qiv ntawv Stanford Core NCO. Qhov tseeb, vim yog lub tsev qiv ntawv no, kuv pib sau ntawv hauv Java thiab thawj txoj kev npaj yog sau txhua yam hauv Java, tab sis hauv cov txheej txheem kuv pom lub tsev qiv ntawv. node-java nrog uas koj tuaj yeem ua tau yooj yim Java code los ntawm nodejs thiab qee qhov code tau sau rau hauv JavaScript. Yog tias kuv tau pom lub tsev qiv ntawv no ua ntej, tsis yog ib kab yuav tau sau rau hauv Java. Lwm sab project uas tau yug los hauv cov txheej txheem yog kev tsim repository nrog DSL cov ntaub ntawv uas tau pom ntawm lub network hauv hom *.chm, hloov dua siab tshiab thiab coj mus rau hauv Vajtswv daim ntawv. Yog tias tus sau ntawm cov ntaub ntawv qub yog tus neeg siv los ntawm lub npe menyuam yaus yozhic ua Thaum nws pom cov kab lus no, kuv ua tsaug ntau rau nws txoj haujlwm uas nws tau ua; yam tsis muaj nws cov ntaub ntawv, Kuv feem ntau yuav tsis ua tiav.

Yog li, kuv muaj lus Askiv, nws phau ntawv txhais lus nkag rau hauv hom *.html, txhua yam uas tseem tshuav yog muab txhua yam ua ke, tsim ANKI cov khoom los ntawm cov npe ntawm cov lus thiab nkag mus rau hauv ANKI database. Rau lub hom phiaj no, qhov project hauv qab no tau tsim data2 ua. Nws tuaj yeem nqa cov npe ntawm cov lus raws li kev tawm tswv yim, txhais, tsim ANKI *.html cov ntawv thiab sau rau hauv ANKI database. Thaum kawg ntawm tsab xov xwm muaj cov lus qhia txog kev siv nws. Nyob rau hauv lub meantime, zaj dab neeg thib ob yog qhov chaw repetitions yuav pab tau.

Zaj thib ob.

Txhua tus neeg hauv kev tshawb nrhiav qhov tshwj xeeb ntau dua / tsawg dua, suav nrog cov programmer, tau ntsib nrog qhov xav tau los npaj rau kev xam phaj. Ntau lub tswv yim uas tau nug hauv kev xam phaj koj tsis siv hauv kev xyaum txhua hnub thiab lawv tsis nco qab lawm. Thaum npaj rau kev xam phaj, tig los ntawm kev sau ntawv, phau ntawv, phau ntawv siv, kuv tau ntsib nrog qhov tseeb tias nws yuav siv sij hawm ntau thiab mloog kom tshem tawm cov ntaub ntawv uas koj twb paub vim nws tsis yog ib txwm pom tseeb thiab koj yuav tsum tau ua tib zoo nyeem nws kom nkag siab tias nws tsis cuam tshuam dab tsi. Thaum koj tuaj rau ib lub ntsiab lus uas yuav tsum tau rov qab ua dua, feem ntau tshwm sim tias koj twb nkees thiab qhov zoo ntawm koj qhov kev npaj raug kev txom nyem. Qee lub sij hawm kuv xav, vim li cas ho tsis siv ANKI phaib rau qhov no thiab? Piv txwv li, thaum sau ntawv rau ib lub ntsiab lus, tam sim ntawd tsim ib daim ntawv nyob rau hauv daim ntawv ntawm cov lus nug thiab cov lus teb, thiab ces thaum koj rov qab nws, koj yuav paub tam sim ntawd seb koj puas paub cov lus teb rau lo lus nug no los yog tsis.

Qhov teeb meem nkaus xwb uas tau tshwm sim yog qhov kev sau cov lus nug tau ntev heev thiab tedious. Yuav ua kom cov txheej txheem yooj yim dua, data2 ua qhov project kuv ntxiv hloov ua haujlwm kos npe ntawv hauv ANKI daim npav. Txhua yam koj xav tau yog sau ib cov ntaub ntawv loj uas cov lus nug thiab cov lus teb yuav raug cim nrog cov cim ua ntej ntawm cov cim, uas tus parser yuav nkag siab tias lo lus nug nyob qhov twg thiab cov lus teb nyob qhov twg.

Thaum cov ntaub ntawv no tsim, koj khiav data2anki thiab nws tsim ANKI phaib. Thawj cov ntaub ntawv yog ib qho yooj yim los kho thiab qhia, koj tsuas yog yuav tsum tau tshem tawm cov ntawv sib raug zoo thiab khiav qhov kev pab cuam dua, thiab cov ntawv tshiab yuav raug tsim.

Installation thiab siv

  1. Txhim kho ANKI + AnkiConnect

    1. Download ANKI ntawm no: https://apps.ankiweb.net/
    2. Nruab AnkiConnect plugin: https://ankiweb.net/shared/info/2055492159

  2. chaw data2 ua

    1. Download tau data2 ua los ntawm github repository
      git clone https://github.com/anatoly314/data2anki
    2. Txhim kho kev vam meej
      cd data2anki && npm install
    3. Download java dependencies https://github.com/anatoly314/data2anki/releases/download/0.1.0/jar-dependencies.zip
    4. Unpacking jar-dependencies.zip thiab tso nws cov ntsiab lus rau hauv data2anki/java/nqe/jars

  3. Siv los txhais lus:

    1. Hauv cov ntaub ntawv data2anki/config.json:

      • hauv tus yuam sij hom sau tus nqi dsl2 ua

      • hauv tus yuam sij modules.dsl.anki.deckName ΠΈ modules.dsl.anki.modelName sau raws li Lub Npe ΠΈ Model Lub npe (yuav tsum tau tsim ua ntej tsim daim npav). Tam sim no tsuas yog hom qauv txhawb nqa Basic:

        Muaj pem hauv ntej thiab nram qab teb, thiab yuav tsim ib daim npav. Cov ntawv koj nkag rau hauv pem hauv ntej yuav tshwm nyob rau pem hauv ntej ntawm daim npav, thiab cov ntawv koj nkag rau hauv Back yuav tshwm rau sab nraum qab ntawm daim npav.

        lo lus qub nyob qhov twg? pem hauv ntej teb, thiab kev txhais lus yuav nyob rau hauv Rov qab teb.

        Tsis muaj teeb meem ntxiv kev txhawb nqa Basic (thiab daim npav rov qab), qhov twg daim npav rov qab yuav raug tsim rau lo lus thiab kev txhais lus, qhov twg raws li kev txhais lus koj yuav tsum nco ntsoov cov lus qub. Txhua yam koj xav tau yog lub sijhawm thiab lub siab xav.

      • hauv tus yuam sij modules.dsl.dictionariesPath sau npe array nrog txuas *.dsl ib phau ntawv txhais lus. Txhua phau ntawv txhais lus txuas nrog yog ib phau ntawv uas cov phau ntawv txhais lus cov ntaub ntawv nyob rau hauv raws li hom ntawv: DSL phau ntawv txhais lus qauv

      • hauv tus yuam sij modules.dsl.wordToTranslatePath nkag mus rau hauv txoj kev mus rau cov npe ntawm cov lus koj xav txhais.

    2. Tua tawm nrog ANKI daim ntawv thov khiav
      node data2ankiindex.js
    3. PUAS!!!

  4. Siv los tsim daim npav los ntawm markdown

    1. Hauv cov ntaub ntawv data2anki/config.json:

      • hauv tus yuam sij hom sau tus nqi markdown2 ua
      • hauv tus yuam sij modules.markdown.anki.deckName ΠΈ modules.dsl.anki.modelName sau raws li Lub Npe ΠΈ Model Lub npe (yuav tsum tau tsim ua ntej tsim daim npav). Rau markdown2 ua hom nkaus xwb hom qauv yog txaus siab Basic.
      • hauv tus yuam sij modules.markdown.selectors.startQuestionSelectors ΠΈ modules.markdown.selectors.startAnswerSelectors koj sau cov xaiv uas koj kos qhov pib ntawm nqe lus nug thiab teb, raws li. Cov kab nrog tus selector nws tus kheej yuav tsis raug parsed thiab yuav tsis xaus rau hauv daim npav; tus parser yuav pib ua haujlwm los ntawm kab tom ntej.

        Piv txwv li, daim npav lo lus nug / teb no:

        Ob zaj dab neeg hais txog yuav ua li cas ANKI tuaj yeem pab koj kawm lus txawv teb chaws thiab npaj rau kev xam phaj

        Nws yuav zoo li no hauv markdown:
        #QUESTION# ## Nqe Lus Nug 5. Sau ib qho kev ua haujlwm mul uas yuav ua haujlwm zoo thaum hu nrog cov lus hauv qab no. ``javascript console.log(mul(2)(3)(4)); // tso zis : 24 console.log(mul(4)(3)(4)); // tso zis : 48 ``` #ANSWER # Hauv qab no yog cov lej ua raws li kev piav qhia ntawm nws ua haujlwm li cas: ``javascript function mul (x) { rov ua haujlwm (y) { // tsis qhia npe ua haujlwm rov qab ua haujlwm (z) { // tsis qhia npe muaj nuj nqi rov x * y * z; }; }; } ``` Ntawm no cov haujlwm `mul` lees txais thawj qhov kev sib cav thiab xa rov qab qhov tsis qhia npe ua haujlwm uas yuav siv qhov thib ob parameter thiab rov qab cov haujlwm tsis qhia npe uas siv qhov thib peb parameter thiab xa rov qab qhov sib npaug ntawm cov lus sib cav uas tau dhau los ua tiav hauv Javascript muaj nuj nqi tau hais tseg. sab hauv muaj kev nkag mus rau sab nrauv muaj nuj nqi kuj sib txawv thiab muaj nuj nqi yog thawj chav kawm khoom yog li nws tuaj yeem rov qab los ntawm kev ua haujlwm thiab dhau los ua kev sib cav hauv lwm txoj haujlwm. - Ib qho kev ua haujlwm yog ib qho piv txwv ntawm Hom Hom - Ib txoj haujlwm tuaj yeem muaj cov khoom thiab muaj qhov txuas rov qab mus rau nws tus qauv tsim - Ib txoj haujlwm tuaj yeem khaws cia raws li qhov sib txawv - Ib txoj haujlwm tuaj yeem dhau los ua ib qho parameter mus rau lwm txoj haujlwm - Kev ua haujlwm tuaj yeem ua tau rov qab los ntawm lwm txoj haujlwm
        

        Piv txwv tau los ntawm no: 123-JavaScript-Kev Sib Tham-Cov Lus Nug

        Kuj tseem muaj cov ntaub ntawv nrog cov piv txwv hauv qhov project folder examples/markdown2anki-example.md

      • hauv tus yuam sij modules.markdown.pathToFile
        sau txoj hauv kev mus rau cov ntaub ntawv qhov twg *.md cov lus nug/ teb cov ntaub ntawv

    2. Tua tawm nrog ANKI daim ntawv thov khiav
      node data2ankiindex.js
    3. PUAS!!!

Nov yog qhov nws zoo li ntawm lub xov tooj ntawm tes:

tshwm sim

Daim npav tau txais ntawm lub desktop version ntawm ANKI yog synchronized yam tsis muaj teeb meem nrog ANKI huab (dawb txog 100mb), thiab tom qab ntawd koj tuaj yeem siv lawv txhua qhov chaw. Muaj cov neeg siv khoom rau Android thiab iPhone, thiab koj tuaj yeem siv nws hauv browser. Yog li ntawd, yog tias koj muaj sij hawm uas koj tsis muaj dab tsi los siv rau, ces tsis txhob tsom mus rau hauv Facebook lossis miv ntawm Instagram, koj tuaj yeem kawm qee yam tshiab.

Epilogue

Raws li kuv tau hais, qhov no yog ntau ntawm POC ua haujlwm uas koj tuaj yeem siv ntau dua li cov khoom tiav. Txog 30% ntawm DSL parser tus qauv tsis raug siv, thiab yog li ntawd, Piv txwv li, tsis yog tag nrho cov ntawv sau npe uas muaj nyob hauv phau ntawv txhais lus tuaj yeem pom, kuj muaj ib lub tswv yim los rov sau dua hauv JavaScript, vim kuv xav tau "kev sib raug zoo", thiab dhau li ntawd, tam sim no nws tsis tau sau zoo heev. Tam sim no tus parser tab tom tsim ib tsob ntoo, tab sis hauv kuv lub tswv yim qhov no tsis tsim nyog thiab tsis tas yuav ua rau cov cai nyuaj. IN markdown2 ua hom, cov duab tsis parsed. Kuv yuav sim txiav me ntsis, tab sis txij li thaum kuv sau ntawv rau kuv tus kheej, kuv yuav ua ntej ntawm tag nrho cov kev daws teeb meem uas kuv tus kheej yuav nqis, tab sis yog leej twg xav pab, txais tos koj. Yog tias koj muaj lus nug txog qhov kev zov me nyuam, kuv yuav zoo siab los pab los ntawm cov teeb meem qhib hauv cov haujlwm tseem ceeb. Sau lwm yam kev thuam thiab cov lus qhia ntawm no. Kuv vam tias qhov project no yuav muaj txiaj ntsig rau ib tus neeg.

PS Yog tias koj pom qhov yuam kev (thiab, hmoov tsis, muaj qee qhov), sau ntawv rau kuv hauv tus kheej cov lus, Kuv yuav kho txhua yam.

Tau qhov twg los: www.hab.com

Ntxiv ib saib