对于真的花时间学习的人来说,Anki 是一个很好的记忆工具

现在网上可以下载到很多背单词的软件,手机上有各种各样的 app,有些简单易用界面好看,挺不错的。我不是说这些软件不好,但是我很多年前开始用一个叫 Anki 的软件背单词时,还没有那么多花里胡哨的 app。

Anki 的名字来自日语的「暗记」(罗马字写成 anki),就是记忆的意思。 它的基本原理是一款「单词卡」(flash card) 软件,在现实生活中的原型,就是正面写单词,背面写释义的那种小纸片。小时候的学霸们,在课间、在等公交车的时候、在食堂排队打饭的时候,手里翻来翻去的那种东西。(没想到这种纸张的单词卡今天还有卖,参见无印良品。)

相信各位都听说过所谓「遗忘曲线」这个东西,不细说了。大意就是,一个信息第一次见到的时候很快就忘了,隔一段时间复习一下,就能加深记忆,按时间段重复几次之后,你就记牢了。勤奋的小学霸总要拿出纸片来复习,太麻烦了。但电脑化的单词卡软件,会记下每个卡片复习过几次,推算每张卡片复习的时间。

Anki 就是这样一个软件。它有各个平台的版本,而且在 Windows、Mac、Linux、Android(安卓版名叫 AnkiDroid)上都是免费的,唯独 iOS 版本(名叫 AnkiMobile)在 App Store 里是收费的。在 http://AnkiWeb.net 上注册过以后,就可以在电脑和手机之间同步单词卡了。(身在墙国,感觉偶尔需要翻墙才能同步。)

(认准 logo,软件下载地址在这里: Anki – powerful, intelligent flashcards )

想要支持 Anki 的开发者,可以在 App Store 里买一买。不过如果想在 iPhone 上用 Anki 而又付钱,可以用浏览器打开 AnkiWeb.net,复习自己的单词。

我推荐先下载电脑版,因为下载、添加、编辑卡片在电脑上方便很多。之后再同步到手机上复习。

Anki 里信息的组织形式是这样的:

「正面是单词,反面是释义」是一张卡片 (card),「正面是释义,反面是单词」是另一张卡片。这两张相关的卡片是一条 note。同一个科目的一堆 notes 叠在一起,叫做一个 deck。

电脑版下载之后界面是这个样子的,空空如也。

你可以下载网友分享的 deck,有各种语言、各种领域的,学马来语的 deck 都能找到呢。可以下到很多中英对照的四级、六级、托福、雅思、GRE 的单词卡。点“Get Shared”即可。(当然呢,网友分享的卡片里,教学语言大多是英语。)

从 Anki 的网站上下载了一组单词卡之后,用 Anki 打开即可学习。

比如,这是我从 Anki 网站上下载的一组土耳其语和英语对照的入门单词卡片。Anki 先显示卡片的正面,土耳其语「renk」。此时你自己回忆一下见没见过这个单词,知不知道是什么意思。然后点「show answer」,Anki 就会显示卡片的背面 —— 英语意思「color」。没错,这个词就是「颜色」的意思。

要是这个词很简单,就点下面的「Easy」,Anki 会在 4 天后再次考你,看你是不是还记得。要是这个词很难,就点「Again」,几分钟之后 Anki 就会再考你一遍。

在见到这个单词若干次以后,Anki 就会根据你之前每次的记忆效果,计算下一次隔多久考你。

比如这张卡片,我已经看到过若干遍了。现在我感觉很简单,例句里提到的词组我也很熟悉,就可以点 Easy,然后它 2.3 年之后才会再蹦到我面前。

当然这一切的前提是,你要对自己诚实。这一次真的忘记了,就真的要按「Again」,从头重新学。在学习这件事上自己骗自己,就是自己坑自己呀。

然而,按照复习的效果 + 人类记忆的规律来安排复习单词的节律,这是很多背单词软件都能做的。也有别的软件可以下载到别人整理好的、现成的卡片。

我之所以推荐 Anki,并不是因为它能做到以上两点。而是因为在 Anki 里,自己手动添加、编辑卡片的功能太强大了

点上面的「Add」就可以手动添加卡片。为什么要手动添加呢?

一是因为,自己整理笔记,手打进去的过程就是很好的学习过程。而且,网友做的卡片或许是错的呢。说实话,出版的单词书里有很多多是错的。一些单词的词源、用法,最好还是遇到的时候自己查字典。

二是因为,Anki 里的单词卡片可以让你自己添加字段 (field)、设置卡片格式

比如我可以把刚才下载的那个只有「土耳其语/英语」两个字段的单词卡,修改成这样:

等到添加单词的时候效果就是这样的啦:

(例句来自 tatoeba.org,这是一个多种语言的对应句子相互对照的例句库,其中一些例句还有录音,学语言的时候很有帮助的。)

要想让修改过的字段在复习的时候显示出来,还需要设置一下卡片的格式。点上图里红色的「Cards」就能出现下面的图:

红框里的大括号,表示在这个位置显示相应字段的内容。(有些同学一定已经注意到了,这里可以输入 HTML。你输入的 HTML,在复习单词卡的时候都能看到。中间的「Styling」那个框里,是要输入 CSS。)卡片的正面需要这样编辑一下,卡片的背面也需要。

参考例句之类的内容,可以帮助你想起单词的意思。但如果你又不想一下子自己给自己剧透,就可以用「hint:」,来添加一些提醒自己的信息

比如,我又添加了一个提醒自己的字段,叫「Hint on meaning」,告诉自己「这是一种颜色」,单词的意思就容易回想多了。使用方法见下图,就是在大括号里加上一个「hint:」,显示效果如下图右侧。点一下那个「Show Hint on meaning」,它就会显示「a color」。

然后我又在卡片的背面弄了一个「Hint on spelling」,告诉自己首字母是什么,拼写也就更容易回忆了。比如,Anki 会问我:「英语的 red 土耳其语怎么讲,首字母是 k 哟。」

如果还是觉得复习时只用眼睛扫一下,记忆不牢靠,还可以用「type:」来强迫自己把单词打出来

如上图。在你想考自己的地方,大括号里加上「type:」。我在这里想考自己土耳其语单词的拼写,所以在上面红框的位置输入了 {{type:Turkish}}。右边就是显示效果。(为了卡片美观,我还调整了一下土耳其语/英语例句的显示位置。)

Anki 问我,英语的 red 土耳其语怎么说呢?我要是实在回忆不起来,可以点「Show Hint on meaning」,就能看到字母 k。之后在下面的文本框里输入,你看我果然打错了:

Anki 里还有一个异常灵活的功能,十分有用,叫做「cloze」。大家都还记得「完形填空」这种东西吗?Cloze 就是那玩意儿。可以把一句话或一段话贴进去,然后把自己要学习的东西做成 cloze 的问题。

输入卡片的时候,注意把卡片类型选成「Cloze」,之后选中要考自己的文字,再点 […] 那个按钮。

我在这一条里输入了三个 cloze 的问题。复习的时候是这样的:

左面先显示缺了一段信息一段话。右边显示答案的时候,把上面那张图里「Extra」的信息也显示了出来。

这个东西不只能学单词。学法律的孩子可以拿这个记忆法条;学医的孩子可以把各种肌肉、骨骼放进去;甚至还可以在玩桌游的时候记每张卡片有什么技能。我还曾经读到过一个人,用 Anki 复习 Ruby 代码

# 10 月 24 日补充:

1. Anki 可以插入图片和音频,可以用那个曲别针的按钮,把 jpg/png 之类的图片文件,以及 wav/mp3 之类的音频文件插入进去。

2. 插入音频的话,还可以点那个录音按钮,接着对着麦克风说话,录音就可以保存下来,直接放到文本框里。

3. 图片的话,还可以从浏览器里复制一个图片,然后粘贴到某个文本框里,比如这样。

4. 我不知道 Anki 里复习几次就可以成为永久记忆,我有一些好多年前的卡片,还是会(极其偶尔地)蹦到我的面前。但是每一个 Deck 的右边,都可以点「Option」,之后在 Option 的设置界面里,设置多长时间后复习,按了 Easy 之后复习间隔拉长多少。略有些复杂,具体参见:“Anki中文手册”
# 再补充:

Anki 这个软件,最好的用法是在电脑上添加、整理,之后同步到网上,再用移动设备随时随地复习。复习当然也可以在电脑上做,在手机上安装并不是必须的。

iOS 版本之所以有价值,是因为它是这个添加、整理、编辑、同步的循环里的一个步骤。然而,在 iPhone 上用 Safari 打开 http://Ankiweb.net 也是可以复习单词的,而且它是免费的。

如果你觉得电脑版、同步功能对你有很大帮助,希望让写这个 app 的哥们赚一些钱,你也可以想我一样付费买一下 iOS 版。然而,花一百多块买 iOS 版不是必须的

关于为什么 iOS 版定价这么贵,以及为什么仍然有人愿意花钱,参见下面的讨论

~~—-

同一系列的两篇后续贴:

  1. 用 Anki 学日语的时候,怎么设置用假名给汉字注音:记忆软件