这是用户在 2025-1-27 2:23 为 https://augmentingcognition.com/ltm.html?__readwiseLocation= 保存的双语快照页面,由 沉浸式翻译 提供双语支持。了解如何保存?
Related Resources  相关资源
Using spaced repetition systems to see through a piece of mathematics
利用间隔重复系统深入理解数学内容

How can we develop transformative tools for thought?
我们如何开发具有变革性的思维工具?

Other memory work  其他记忆任务
Other tools for thought work
其他思维工具

Michael Nielsen on Twitter
迈克尔·尼尔森在推特上

Michael Nielsen's project announcement mailing list
迈克尔·尼尔森的项目公告邮件列表

cognitivemedium.com  认知媒介.com


By Michael Nielsen  作者:迈克尔·尼尔森

One day in the mid-1920s, a Moscow newspaper reporter named Solomon Shereshevsky entered the laboratory of the psychologist Alexander Luria. Shereshevsky's boss at the newspaper had noticed that Shereshevsky never needed to take any notes, but somehow still remembered all he was told, and had suggested he get his memory checked by an expert.
1920 年代中期的一天,莫斯科报社记者所罗门·舍列舍夫斯基走进了心理学家亚历山大·卢里亚的实验室。舍列舍夫斯基的老板注意到他从不做笔记,却总能记住所有听到的内容,于是建议他找专家检查一下记忆力。

Luria began testing Shereshevsky's memory. He began with simple tests, short strings of words and of numbers. Shereshevsky remembered these with ease, and so Luria gradually increased the length of the strings. But no matter how long they got, Shereshevsky could recite them back. Fascinated, Luria went on to study Shereshevsky's memory for the next 30 years. In a book summing up his research ("The Mind of a Mnemonist", 1968), Luria reported that:
卢里亚开始测试谢列舍夫斯基的记忆。他首先进行了一些简单的测试,比如短字符串的单词和数字。谢列舍夫斯基轻松地记住了这些内容,于是卢里亚逐渐增加了字符串的长度。然而,无论字符串变得多长,谢列舍夫斯基都能准确无误地背诵出来。卢里亚对此深感着迷,并继续研究了谢列舍夫斯基的记忆长达 30 年。在一本总结他研究成果的书中(《记忆大师的思维》,1968 年),卢里亚写道:

[I]t appeared that there was no limit either to the capacity of S.'s memory or to the durability of the traces he retained. Experiments indicated that he had no difficulty reproducing any lengthy series of words whatever, even though these had originally been presented to him a week, a month, a year, or even many years earlier. In fact, some of these experiments designed to test his retention were performed (without his being given any warning) fifteen or sixteen years after the session in which he had originally recalled the words. Yet invariably they were successful.
似乎 S.的记忆能力或他保留的记忆痕迹的持久性都没有极限。实验表明,他能够轻松地再现任何冗长的单词系列,即使这些单词最初是在一周、一个月、一年甚至多年前呈现给他的。事实上,一些旨在测试他记忆保持的实验是在他最初回忆这些单词的会话十五或十六年后进行的(且未提前通知他)。然而,这些实验无一例外都取得了成功。

Such stories are fascinating. Memory is fundamental to our thinking, and the notion of having a perfect memory is seductive. At the same time, many people feel ambivalent about their own memory. I've often heard people say “I don't have a very good memory”, sometimes sheepishly, sometimes apologetically, sometimes even defiantly.
这样的故事非常引人入胜。记忆是我们思维的基础,而拥有完美记忆的想法极具诱惑力。然而,许多人对自己的记忆却感到矛盾。我经常听到人们说“我的记忆力不太好”,有时是羞怯地,有时是歉意地,有时甚至是带着一丝挑衅。

Given how central memory is to our thinking, it's natural to ask whether computers can be used as tools to help improve our memory. This question turns out to be highly generative of good ideas, and pursuing it has led to many of the most important vision documents in the history of computing. One early example was Vannevar Bush's 1945 proposal*
鉴于记忆对我们的思维至关重要,很自然地会想到计算机是否可以作为工具来帮助我们改善记忆。这个问题被证明是激发好想法的源泉,探索它已经催生了计算历史上许多最重要的愿景文件。一个早期的例子是 Vannevar Bush 在 1945 年提出的提案*
* Vannevar Bush, As We May Think, The Atlantic (1945).
* 万尼瓦尔·布什,《如我们所想》,大西洋月刊(1945 年)。
for a mechanical memory extender, the memex. Bush wrote:
对于一种机械记忆扩展器,即 memex,布什写道:

A memex is a device in which an individual stores all his books, records, and communications, and which is mechanized so that it may be consulted with exceeding speed and flexibility. It is an enlarged intimate supplement to his memory.
记忆扩展器是一种设备,个人可以在其中存储所有的书籍、记录和通信,并且它是机械化的,因此可以以极高的速度和灵活性进行查阅。它是记忆的一个强大的扩展和补充。

The memex vision inspired many later computer pioneers, including Douglas Engelbart's ideas about the augmentation of human intelligence, Ted Nelson's ideas about hypertext, and, indirectly, Tim Berners-Lee's conception of the world wide web*
memex 的愿景激励了许多后来的计算机先驱,包括道格拉斯·恩格尔巴特关于增强人类智能的构想,泰德·尼尔森关于超文本的理念,以及间接影响了蒂姆·伯纳斯-李对万维网的构思*
* See, for example: Douglas Engelbart, Augmenting Human Intellect (1962); Ted Nelson, Complex information processing: a file structure for the complex, the changing and the indeterminate (1965); and Tim Berners-Lee, Information Management: a Proposal (1989).
参见,例如:Douglas Engelbart 的《增强人类智力》(1962 年);Ted Nelson 的《复杂信息处理:复杂、变化和不确定的文件结构》(1965 年);以及 Tim Berners-Lee 的《信息管理:一个提案》(1989 年)。
. In his proposal for the web, Berners-Lee describes the need for his employer (the particle physics organization CERN) to develop a collective institutional memory,
在他的网络提案中,伯纳斯-李提到他的雇主(粒子物理组织 CERN)需要建立一种集体机构记忆,

a pool of information to develop which could grow and evolve with the organization and the projects it describes.
一个可以随着组织及其所描述的项目发展和演变的信息库。

These are just a few of the many attempts to use computers to augment human memory. From the memex to the web to wikis to org-mode to Project Xanadu to attempts to make a map of every thought a person thinks: the augmentation of memory has been an extremely generative vision for computing.
这些只是众多尝试中的一部分,旨在利用计算机来增强人类记忆。从 memex 到互联网,再到维基、org-mode、Xanadu 项目,以及尝试绘制一个人所有思维的地图:记忆的增强一直是计算机领域中一个极具创造性的愿景。

In this essay we investigate personal memory systems, that is, systems designed to improve the long-term memory of a single person. In the first part of the essay I describe my personal experience using such a system, named Anki. As we'll see, Anki can be used to remember almost anything. That is, Anki makes memory a choice, rather than a haphazard event, to be left to chance. I'll discuss how to use Anki to understand research papers, books, and much else. And I'll describe numerous patterns and anti-patterns for Anki use. While Anki is an extremely simple program, it's possible to develop virtuoso skill using Anki, a skill aimed at understanding complex material in depth, not just memorizing simple facts.
在这篇文章中,我们探讨了个人记忆系统,即旨在提升个人长期记忆的系统。在文章的第一部分,我分享了自己使用名为 Anki 的系统的个人经验。正如我们将看到的,Anki 几乎可以用来记住任何东西。换句话说,Anki 让记忆成为一种主动选择,而不是听天由命的偶然事件。我将讨论如何使用 Anki 来理解研究论文、书籍以及其他内容。此外,我还会介绍使用 Anki 的多种有效模式和应避免的反模式。尽管 Anki 是一个非常简单的程序,但通过它,我们可以培养出高超的技能,这种技能不仅限于记忆简单的事实,更在于深入理解复杂的材料。

The second part of the essay discusses personal memory systems in general. Many people treat memory ambivalently or even disparagingly as a cognitive skill: for instance, people often talk of “rote memory” as though it's inferior to more advanced kinds of understanding. I'll argue against this point of view, and make a case that memory is central to problem solving and creativity. Also in this second part, we'll discuss the role of cognitive science in building personal memory systems and, more generally, in building systems to augment human cognition. In a future essay, Toward a Young Lady's Illustrated Primer, I will describe more ideas for personal memory systems.
文章的第二部分探讨了个人记忆系统的一般情况。许多人对记忆持矛盾态度,甚至贬低它作为一种认知技能:例如,人们常常提到“机械记忆”,似乎认为它不如更高级的理解方式。我将反驳这种观点,并论证记忆在问题解决和创造力中的核心作用。同样在第二部分,我们将讨论认知科学在构建个人记忆系统以及更广泛地构建增强人类认知的系统中的作用。在未来的文章《走向年轻女士的图解入门》中,我将进一步阐述关于个人记忆系统的更多想法。

The essay is unusual in style. It's not a conventional cognitive science paper, i.e., a study of human memory and how it works. Nor is it a computer systems design paper, though prototyping systems is my own main interest. Rather, the essay is a distillation of informal, ad hoc observations and rules of thumb about how personal memory systems work. I wanted to understand those as preparation for building systems of my own. As I collected these observations it seemed they may be of interest to others. You can reasonably think of the essay as a how-to guide aimed at helping develop virtuoso skills with personal memory systems. But since writing such a guide wasn't my primary purpose, it may come across as a more-than-you-ever-wanted-to-know guide.
这篇文章的风格非常独特。它既不是一篇传统的认知科学论文,比如研究人类记忆及其工作原理,也不是一篇计算机系统设计论文,尽管原型系统是我个人的主要兴趣所在。相反,这篇文章是对个人记忆系统如何运作的非正式观察和经验法则的提炼。我希望通过理解这些内容,为构建自己的系统做准备。在收集这些观察的过程中,我发现它们可能对其他人也有参考价值。你可以将这篇文章视为一本指南,旨在帮助开发个人记忆系统的高超技能。不过,由于撰写这样的指南并非我的主要目的,它可能会显得像一本“信息量超出你预期”的指南。

To conclude this introduction, a few words on what the essay won't cover. I will only briefly discuss visualization techniques such as memory palaces and the method of loci. And the essay won't describe the use of pharmaceuticals to improve memory, nor possible future brain-computer interfaces to augment memory. Those all need a separate treatment. But, as we shall see, there are already powerful ideas about personal memory systems based solely on the structuring and presentation of information.
在结束这篇引言之前,我想简单谈谈这篇文章不会涉及的内容。我将简要讨论一些可视化技术,如记忆宫殿和位置记忆法。这篇文章不会涉及使用药物来改善记忆,也不会讨论未来可能的脑机接口来增强记忆。这些内容需要单独讨论。不过,正如我们将看到的,已经有一些关于个人记忆系统的强大想法,这些想法仅基于信息的结构和呈现方式。

Part I: How to remember almost anything: the Anki system
第一部分:如何记住几乎所有事情:Anki 系统

I'll begin with an account of my own experience with the personal memory system Anki*
我将从我个人使用记忆系统 Anki*的经历开始讲述
* I've no affiliation at all with Anki. Other similar systems include Mnemosyne and SuperMemo. My limited use suggests Mnemosyne is very similar to Anki. SuperMemo runs only on Windows, and I haven't had an opportunity to use it, though I have been influenced by essays on the SuperMemo website.
我与 Anki 没有任何关系。其他类似的系统包括 Mnemosyne 和 SuperMemo。根据我有限的使用经验,Mnemosyne 与 Anki 非常相似。SuperMemo 只能在 Windows 上运行,我还没有机会使用它,但我受到了 SuperMemo 网站上文章的影响。


I won't try to hide my enthusiasm for Anki behind a respectable facade of impartiality: it's a significant part of my life. Still, it has many limitations, and I'll mention some of them through the essay.
我不会假装公正来掩饰我对 Anki 的热情:它是我生活中的重要组成部分。然而,它也有许多局限性,我将在文章中提及其中一些。
. The material is, as mentioned above, quite personal, a collection of my own observations and informal rules of thumb. Those rules of thumb may not apply to others; indeed, I may be mistaken about how well they apply to me. It's certainly not a properly controlled study of Anki usage! Still, I believe there is value in collecting such personal experiences, even if they are anecdotal and impressionistic. I am not an expert on the cognitive science of memory, and I'd appreciate corrections to any errors or misconceptions.
如上所述,这些材料非常个人化,是我自己的观察和一些非正式的经验法则的集合。这些经验法则可能并不适用于其他人;事实上,我可能对它们在我身上的适用性也有误解。这肯定不是一个关于 Anki 使用的严格对照研究!尽管如此,我相信收集这样的个人经验是有价值的,即使它们只是基于轶事和印象。我不是记忆认知科学的专家,如果有任何错误或误解,我将非常感谢纠正。

At first glance, Anki seems nothing more than a computerized flashcard program. You enter a question:
乍一看,Anki 似乎只是一个电脑化的抽认卡程序。你输入一个问题:

And a corresponding answer:
以及相应的回答:

Later you'll be asked to review the card: that is, shown the question, and asked whether you know the answer or not.
稍后你会被要求复习卡片:即,展示问题,并询问你是否知道答案。

What makes Anki better than conventional flashcards is that it manages the review schedule. If you can answer a question correctly, the time interval between reviews gradually expands. So a one-day gap between reviews becomes two days, then six days, then a fortnight, and so on. The idea is that the information is becoming more firmly embedded in your memory, and so requires less frequent review. But if you ever miss an answer, the schedule resets, and you again have to build up the time interval between reviews.
Anki 比传统抽认卡更优秀的地方在于它能够管理复习计划。如果你能正确回答一个问题,复习之间的时间间隔会逐渐延长。例如,复习间隔从一天变为两天,然后是六天,接着是两周,依此类推。这样做的目的是让信息在你的记忆中更加牢固,从而减少复习的频率。但如果你答错了一个问题,复习计划会重置,你需要重新建立复习之间的时间间隔。

While it's obviously useful that the computer manages the interval between reviews, it perhaps doesn't seem like that big a deal. The punchline is that this turns out to be a far more efficient way to remember information.
虽然计算机管理复习间隔显然很有用,但这似乎并不是什么大不了的事情。关键在于,这实际上是一种更高效的记忆信息的方式。

How much more efficient?
效率提升了多少?

To answer that question, let's do some rough time estimates. On average, it takes me about 8 seconds to review a card. Suppose I was using conventional flashcards, and reviewing them (say) once a week. If I wanted to remember something for the next 20 years, I'd need 20 years times 52 weeks per year times 8 seconds per card. That works out to a total review time of just over 2 hours for each card.
要回答这个问题,我们可以先做一个粗略的时间估算。平均来说,我复习一张卡片大约需要 8 秒钟。假设我使用的是传统的抽认卡,并且每周复习一次。如果我想记住某件事 20 年,那么我需要 20 年乘以每年 52 周,再乘以每张卡片 8 秒。这样算下来,每张卡片的总复习时间略超过 2 小时。

By contrast, Anki's ever-expanding review intervals quickly rise past a month and then out past a year. Indeed, for my personal set of Anki cards the average interval between reviews is currently 1.2 years, and rising. In an appendix below I estimate that for an average card, I'll only need 4 to 7 minutes of total review time over the entire 20 years. Those estimates allow for occasional failed reviews, resetting the time interval. That's a factor of more than 20 in savings over the more than 2 hours required with conventional flashcards.
相比之下,Anki 不断延长的复习间隔很快就能超过一个月,甚至超过一年。实际上,对于我个人的 Anki 卡片集,目前的平均复习间隔是 1.2 年,并且还在增加。在下面的附录中,我估计对于一张普通卡片,我在整个 20 年中只需要 4 到 7 分钟的总复习时间。这些估计考虑到了偶尔的复习失败,会重置时间间隔。这比传统抽认卡所需的 2 个多小时节省了 20 多倍。

I therefore have two rules of thumb. First, if memorizing a fact seems worth 10 minutes of my time in the future, then I do it*
因此我有两条经验法则。首先,如果记住某个事实在未来值得我花 10 分钟的时间,那么我就会去做*
* I first saw an analysis along these lines in Gwern Branwen's review of spaced repetition: Gwern Branwen, Spaced-Repetition. His numbers are slightly more optimistic than mine – he arrives at a 5-minute rule of thumb, rather than 10 minutes – but broadly consistent. Branwen's analysis is based, in turn, on an analysis in: Piotr Wozniak, Theoretical aspects of spaced repetition in learning.
我第一次看到类似的分析是在 Gwern Branwen 对间隔重复的评论中:Gwern Branwen,间隔重复。他的数据比我的稍微乐观一些——他得出的经验法则是 5 分钟,而不是 10 分钟——但总体上是一致的。Branwen 的分析又是基于 Piotr Wozniak 的研究:Piotr Wozniak,学习中间隔重复的理论方面。
. Second, and superseding the first, if a fact seems striking then into Anki it goes, regardless of whether it seems worth 10 minutes of my future time or not. The reason for the exception is that many of the most important things we know are things we're not sure are going to be important, but which our intuitions tell us matter. This doesn't mean we should memorize everything. But it's worth cultivating taste in what to memorize.
其次,并且取代了第一条,如果一个事实看起来引人注目,那么它就会进入 Anki,不管它是否值得我未来的 10 分钟。这个例外的原因是,许多我们已知的最重要的事情是我们不确定它们是否重要,但我们的直觉告诉我们它们很重要。这并不意味着我们应该记住所有事情。但值得培养记忆的品味。

The single biggest change that Anki brings about is that it means memory is no longer a haphazard event, to be left to chance. Rather, it guarantees I will remember something, with minimal effort. That is, Anki makes memory a choice.
Anki 带来的最大改变在于,它让记忆不再是一个偶然事件,不再依赖运气。相反,它确保我能够以最少的努力记住某些内容。换句话说,Anki 让记忆成为一种主动的选择。

What can Anki be used for? I use Anki in all parts of my life. Professionally, I use it to learn from papers and books; to learn from talks and conferences; to help recall interesting things learned in conversation; and to remember key observations made while doing my everyday work. Personally, I use it to remember all kinds of facts relevant to my family and social life; about my city and travel; and about my hobbies. Later in the essay I describe some useful patterns of Anki use, and anti-patterns to avoid.
Anki 可以用于哪些方面?我在生活的各个领域都使用 Anki。在职业方面,我用它来学习论文和书籍中的知识;从演讲和会议中汲取信息;帮助回忆在对话中学到的有趣内容;并记录日常工作中的关键观察。在个人生活中,我用它来记住与家庭和社交生活相关的各种信息;关于城市和旅行的知识;以及我的兴趣爱好。在文章的后面,我将介绍一些有用的 Anki 使用模式,以及需要避免的反模式。

I've used Anki to create a little over 10,000 cards over about 2 and a half years of regular use. That includes a 7-month break when I made very few new cards. When I'm keeping up with my card review, it takes about 15 to 20 minutes per day. If it routinely rises to much more than 20 minutes it usually means I'm adding cards too rapidly, and need to slow down. Alternately, it sometimes means I'm behind on my card review (which I'll discuss later).
我使用 Anki 创建了大约 10,000 张卡片,大约用了两年半的常规使用时间。这其中包括我几乎没有制作新卡片的 7 个月休息期。当我跟上卡片复习时,每天大约需要 15 到 20 分钟。如果复习时间经常超过 20 分钟,通常意味着我添加卡片的速度太快,需要放慢速度。或者,有时这也意味着我在卡片复习上落后了(我稍后会详细讨论)。

At a practical level, I use the desktop Anki client for entering new cards, and the mobile client*
在实际操作中,我使用桌面版的 Anki 客户端来添加新卡片,并使用移动客户端*
* The desktop client is free, but the mobile client is, at the time of writing, 25 dollars. Many people balk at that as “too expensive”. Personally, I've found the value is several orders of magnitude beyond 25 dollars. Mobile Anki is certainly far more valuable to me than a single meal in a moderately priced restaurant.
桌面客户端是免费的,但移动客户端在撰写本文时售价为 25 美元。许多人觉得这个价格“太贵了”。但就我个人而言,我认为它的价值远远超过 25 美元。移动版的 Anki 对我来说,比一顿中等价位的餐厅餐更有价值。
for reviewing. I review my Anki cards while walking to get my morning coffee, while waiting in line, on transit, and so on. Provided my mind is reasonably relaxed to begin with, I find the review experience meditative. If, on the other hand, my mind is not relaxed, I find review more difficult, and Anki can cause my mind to jump around more.
为了复习,我会在走去买早咖啡的路上、排队时、在交通工具上等时候复习我的 Anki 卡片。如果我的心情一开始就比较放松,我会觉得复习过程很冥想。但如果我的心情不放松,复习就会变得困难,Anki 可能会让我的思绪更加跳跃。

I had trouble getting started with Anki. Several acquaintances highly recommended it (or similar systems), and over the years I made multiple attempts to use it, each time quickly giving up. In retrospect, there are substantial barriers to get over if you want to make it a habit.
我在刚开始使用 Anki 时遇到了不少困难。虽然几位朋友强烈推荐它(或类似的系统),但多年来我多次尝试使用,每次都很快放弃了。现在回想起来,如果想把它变成一种习惯,确实有很多障碍需要克服。

What made Anki finally “take” for me, turning it into a habit, was a project I took on as a joke. I'd been frustrated for years at never really learning the Unix command line. I'd only ever learned the most basic commands. Learning the command line is a superpower for people who program, so it seemed highly desirable to know well. So, for fun, I wondered if it might be possible to use Anki to essentially completely memorize a (short) book about the Unix command line.
是什么让 Anki 最终“抓住”了我,并把它变成了一种习惯,其实是我一时兴起的一个项目。多年来,我一直对从未真正掌握 Unix 命令行感到沮丧。我只学会了最基本的命令。对于编程的人来说,掌握命令行就像拥有一种超能力,因此深入了解它似乎非常有必要。于是,出于好玩,我想知道是否可以用 Anki 来完全记住一本关于 Unix 命令行的(短)书。

It was!   确实如此!

I chose O'Reilly Media's “Macintosh Terminal Pocket Guide”, by Daniel Barrett. I don't mean I literally memorized the entire text of the book*
我选择了 O'Reilly Media 出版的《Macintosh Terminal 袖珍指南》,作者是 Daniel Barrett。我并不是说我逐字逐句地记住了整本书的内容*
* I later did an experiment with Charles Dickens' “A Tale of Two Cities”, seeing if it might actually be possible to memorize the entire text. After a few weeks I concluded that it would be possible, but would not be worth the time. So I deleted all the cards. An interesting thing has occurred post-deletion: the first few sentences of the book have gradually decayed in my memory, and I now have no more than fragments. I occasionally wonder what the impact would be of memorizing a good book in its entirety; I wouldn't be surprised if it greatly influenced my own language and writing.
后来,我用查尔斯·狄更斯的《双城记》做了一个实验,想看看是否真的有可能记住整本书。几周后,我得出结论,虽然这是可能的,但并不值得花那么多时间。于是,我删除了所有的卡片。删除后发生了一件有趣的事情:书中的前几句话逐渐在我的记忆中淡去,现在我只有一些零星的片段。我偶尔会想,如果完整地记住一本好书会有什么影响;如果它极大地影响了我的语言和写作,我也不会感到惊讶。
. But I did memorize much of the conceptual knowledge in the book, as well as the names, syntax, and options for most of the commands in the book. The exceptions were things I had no frame of reference to imagine using. But I did memorize most things I could imagine using. In the end I covered perhaps 60 to 70 percent of the book, skipping or skimming pieces that didn't seem relevant to me. Still, my knowledge of the command line increased enormously.
不过,我确实记住了书中大部分的概念知识,以及大多数命令的名称、语法和选项。只有那些我无法想象使用的内容没有记住。对于我能想象使用的内容,我基本上都记住了。最终,我大概掌握了书中 60%到 70%的内容,跳过或略读了一些对我来说不相关的部分。尽管如此,我对命令行的理解还是有了极大的提升。

Choosing this rather ludicrous, albeit extremely useful, goal gave me a great deal of confidence in Anki. It was exciting, making it obvious that Anki would make it easy to learn things that would formerly have been quite tedious and difficult for me to learn. This confidence, in turn, made it much easier to build an Anki habit. At the same time, the project also helped me learn the Anki interface, and got me to experiment with different ways of posing questions. That is, it helped me build the skills necessary to use Anki well.
选择这个虽然有些荒谬但极其有用的目标让我对 Anki 充满了信心。这让我感到非常兴奋,因为很明显,Anki 会让学习那些以前对我来说既乏味又困难的事情变得轻松。这种信心反过来又让我更容易养成使用 Anki 的习惯。同时,这个项目也帮助我熟悉了 Anki 的界面,并让我尝试了不同的提问方式。也就是说,它帮助我掌握了使用 Anki 所需的技能。

Using Anki to thoroughly read a research paper in an unfamiliar field
使用 Anki 深入阅读陌生领域的研究论文

I find Anki a great help when reading research papers, particularly in fields outside my expertise. As an example of how this can work, I'll describe my experience reading a 2016 paper*
我发现 Anki 在阅读研究论文时非常有用,特别是在我不熟悉的领域。举个例子,我将分享我阅读 2016 年一篇论文的经历。
* David Silver, Aja Huang, Chris J. Maddison, Arthur Guez et al, Mastering the game of Go with deep neural networks and tree search, Nature (2016).
* 大卫·西尔弗、黄士杰、克里斯·J·麦迪逊、亚瑟·格兹等人,利用深度神经网络和树搜索技术掌握围棋游戏,《自然》杂志(2016 年)。
describing AlphaGo, the computer system from Google DeepMind that beat some of the world's strongest players of the game Go.
描述 AlphaGo,这是 Google DeepMind 开发的计算机系统,曾击败了世界上一些顶尖的围棋选手。

After the match where AlphaGo beat Lee Sedol, one of the strongest human Go players in history, I suggested to Quanta Magazine that I write an article about the system*
在 AlphaGo 击败历史上最强的人类围棋选手之一李世石后,我向《量子杂志》提议撰写一篇关于该系统的文章*
* Michael Nielsen, Is AlphaGo Really Such a Big Deal?, Quanta (2016).
* Michael Nielsen, AlphaGo 真的有那么重要吗?, Quanta (2016).
. AlphaGo was a hot media topic at the time, and the most common angle in stories was human interest, viewing AlphaGo as part of a long-standing human-versus-machine narrative, with a few technical details filled in, mostly as color.
当时,AlphaGo 是媒体热议的话题,报道中最常见的角度是从人类兴趣出发,将 AlphaGo 视为长久以来人机对抗故事的一部分,并加入了一些技术细节,主要是为了增添色彩。

I wanted to take a different angle. Through the 1990s and first decade of the 2000s, I believed human-or-better general artificial intelligence was far, far away. The reason was that over that time researchers made only slow progress building systems to do intuitive pattern matching, of the kind that underlies human sight and hearing, as well as in playing games such as Go. Despite enormous effort by AI researchers, many pattern-matching feats which humans find effortless remained impossible for machines.
我想从一个不同的角度来探讨。在 20 世纪 90 年代和 21 世纪的头十年里,我认为达到或超越人类水平的通用人工智能还非常遥远。原因是,在那段时间里,研究人员在构建能够进行直观模式匹配的系统方面进展缓慢,这种模式匹配是人类视觉和听觉的基础,也是下围棋等游戏的基础。尽管人工智能研究人员付出了巨大的努力,许多对人类来说轻而易举的模式匹配任务,对机器来说仍然难以实现。

While we made only very slow progress on this set of problems for a long time, around 2011 progress began to speed up, driven by advances in deep neural networks. For instance, machine vision systems rapidly went from being terrible to being comparable to human beings for certain limited tasks. By the time AlphaGo was released, it was no longer correct to say we had no idea how to build computer systems to do intuitive pattern matching. While we hadn't yet nailed the problem, we were making rapid progress. AlphaGo was a big part of that story, and I wanted my article to explore this notion of building computer systems to capture human intuition.
尽管我们在很长一段时间内在这组问题上进展缓慢,但大约在 2011 年,随着深度神经网络的进步,进展开始加速。例如,机器视觉系统在某些特定任务上迅速从表现糟糕提升到与人类相当的水平。到 AlphaGo 发布时,我们已经不能说不知道如何构建计算机系统来进行直观的模式匹配了。虽然我们尚未完全解决这个问题,但我们正在快速取得进展。AlphaGo 是这一进程中的重要里程碑,我希望通过我的文章探讨如何构建计算机系统来捕捉人类直觉。

While I was excited, writing such an article was going to be difficult. It was going to require a deeper understanding of the technical details of AlphaGo than a typical journalistic article. Fortunately, I knew a fair amount about neural networks – I'd written a book about them*
虽然我很兴奋,但撰写这样一篇文章并不容易。它需要对 AlphaGo 的技术细节有比一般新闻报道更深入的理解。幸运的是,我对神经网络相当了解——我还写过一本关于它们的书。
* Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press (2015).
* Michael A. Nielsen, "神经网络与深度学习", Determination Press (2015).
. But I knew nothing about the game of Go, or about many of the ideas used by AlphaGo, based on a field known as reinforcement learning. I was going to need to learn this material from scratch, and to write a good article I was going to need to really understand the underlying technical material.
然而,我对围棋一窍不通,也不熟悉 AlphaGo 所采用的许多基于强化学习领域的概念。我必须从零开始学习这些知识,并且为了写出一篇优质的文章,我需要深入理解其中的技术细节。

Here's how I went about it.
我是这样处理的。

I began with the AlphaGo paper itself. I began reading it quickly, almost skimming. I wasn't looking for a comprehensive understanding. Rather, I was doing two things. One, I was trying to simply identify the most important ideas in the paper. What were the names of the key techniques I'd need to learn about? Second, there was a kind of hoovering process, looking for basic facts that I could understand easily, and that would obviously benefit me. Things like basic terminology, the rules of Go, and so on.
我从 AlphaGo 的论文本身入手。我快速地阅读,几乎是浏览。我并不是为了全面理解,而是做了两件事。首先,我试图简单地找出论文中最重要的观点。我需要学习的关键技术的名称是什么?其次,我进行了一种“吸尘”式的过程,寻找那些我能轻松理解且显然对我有益的基本事实,比如基本术语、围棋规则等等。

Here's a few examples of the kind of question I entered into Anki at this stage: “What's the size of a Go board?”; “Who plays first in Go?”; “How many human game positions did AlphaGo learn from?”; “Where did AlphaGo get its training data?”; “What were the names of the two main types of neural network AlphaGo used?”
这里有几个我在这个阶段输入到 Anki 的问题示例:“围棋棋盘的大小是多少?”;“围棋中谁先下棋?”;“AlphaGo 从多少个人类棋局中学习?”;“AlphaGo 的训练数据来自哪里?”;“AlphaGo 使用的两种主要神经网络叫什么?”

As you can see, these are all elementary questions. They're the kind of thing that are very easily picked up during an initial pass over the paper, with occasional digressions to search Google and Wikipedia, and so on. Furthermore, while these facts were easy to pick up in isolation, they also seemed likely to be useful in building a deeper understanding of other material in the paper.
正如你所见,这些都是基础问题。初次阅读论文时,这些问题很容易掌握,偶尔会分心去搜索谷歌和维基百科等。此外,虽然这些事实在单独情况下很容易理解,但它们似乎也有助于更深入地理解论文中的其他内容。

I made several rapid passes over the paper in this way, each time getting deeper and deeper. At this stage I wasn't trying to obtain anything like a complete understanding of AlphaGo. Rather, I was trying to build up my background understanding. At all times, if something wasn't easy to understand, I didn't worry about it, I just keep going. But as I made repeat passes, the range of things that were easy to understand grew and grew. I found myself adding questions about the types of features used as inputs to AlphaGo's neural networks, basic facts about the structure of the networks, and so on.
我以这种方式快速浏览了几遍论文,每次都会深入一些。在这个阶段,我并不是试图完全理解 AlphaGo,而是努力建立背景知识。任何时候,如果遇到不容易理解的地方,我也不会纠结,继续往下看。随着我反复浏览,容易理解的内容越来越多。我发现自己开始提出关于 AlphaGo 神经网络输入特征类型的问题,以及网络结构的基本事实等等。

After five or six such passes over the paper, I went back and attempted a thorough read. This time the purpose was to understand AlphaGo in detail. By now I understood much of the background context, and it was relatively easy to do a thorough read, certainly far easier than coming into the paper cold. Don't get me wrong: it was still challenging. But it was far easier than it would have been otherwise.
在反复阅读五六次之后,我回过头来尝试了一次深入的阅读。这次的目标是详细了解 AlphaGo。此时,我已经理解了大部分背景信息,因此进行深入阅读相对容易,当然比一开始直接阅读论文要轻松得多。别误会:这仍然具有挑战性。但比不这样做要容易得多。

After doing one thorough pass over the AlphaGo paper, I made a second thorough pass, in a similar vein. Yet more fell into place. By this time, I understood the AlphaGo system reasonably well. Many of the questions I was putting into Anki were high level, sometimes on the verge of original research directions. I certainly understood AlphaGo well enough that I was confident I could write the sections of my article dealing with it. (In practice, my article ranged over several systems, not just AlphaGo, and I had to learn about those as well, using a similar process, though I didn't go as deep.) I continued to add questions as I wrote my article, ending up adding several hundred questions in total. But by this point the hardest work had been done.
在对 AlphaGo 论文进行了第一次全面阅读后,我又以类似的方式进行了第二次全面阅读。更多内容逐渐清晰起来。到这时,我对 AlphaGo 系统已经有了相当深入的理解。我放入 Anki 的许多问题都是高层次的,有时甚至接近原创研究方向。我对 AlphaGo 的理解已经足够深入,因此我有信心能够写出文章中涉及它的部分。(实际上,我的文章涵盖了多个系统,不仅仅是 AlphaGo,我还需要学习这些系统,使用类似的方法,尽管我没有深入研究。)在撰写文章的过程中,我继续添加问题,最终总共添加了几百个问题。但到这时,最困难的部分已经完成了。

Of course, instead of using Anki I could have taken conventional notes, using a similar process to build up an understanding of the paper. But using Anki gave me confidence I would retain much of the understanding over the long term. A year or so later DeepMind released papers describing followup systems, known as AlphaGo Zero and AlphaZero*
当然,我本可以使用传统的笔记方法,而不是 Anki,通过类似的过程来理解论文。但使用 Anki 让我有信心能够长期记住大部分内容。大约一年后,DeepMind 发布了描述后续系统的论文,分别是 AlphaGo Zero 和 AlphaZero*。
* For AlphaGo Zero, see: David Silver, Julian Schrittwieser, Karen Simonyan, Ioannis Antonoglou et al, Mastering the game of Go without human knowledge, Nature (2017). For AlphaZero, see: David Silver, Thomas Hubert, Julian Schrittwieser, Ioannis Antonoglou et al, Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm (2017).
* 关于 AlphaGo Zero,请参阅:David Silver、Julian Schrittwieser、Karen Simonyan、Ioannis Antonoglou 等人所著的《无需人类知识掌握围棋游戏》,发表于《自然》杂志(2017 年)。关于 AlphaZero,请参阅:David Silver、Thomas Hubert、Julian Schrittwieser、Ioannis Antonoglou 等人所著的《通过自我对弈和通用强化学习算法掌握国际象棋和将棋》(2017 年)。
. Despite the fact that I'd thought little about AlphaGo or reinforcement learning in the intervening time, I found I could read those followup papers with ease. While I didn't attempt to understand those papers as thoroughly as the initial AlphaGo paper, I found I could get a pretty good understanding of the papers in less than an hour. I'd retained much of my earlier understanding!
尽管这段时间我对 AlphaGo 或强化学习的思考不多,但我发现自己能够轻松阅读那些后续论文。虽然我没有像最初阅读 AlphaGo 论文那样深入理解这些论文,但我发现我可以在不到一个小时的时间内对它们有一个相当好的理解。我保留了之前的大部分理解!

By contrast, had I used conventional note-taking in my original reading of the AlphaGo paper, my understanding would have more rapidly evaporated, and it would have taken longer to read the later papers. And so using Anki in this way gives confidence you will retain understanding over the long term. This confidence, in turn, makes the initial act of understanding more pleasurable, since you believe you're learning something for the long haul, not something you'll forget in a day or a week.
相比之下,如果我在最初阅读 AlphaGo 论文时使用传统的笔记方法,我的理解会更快地消失,阅读后续论文也会花费更长时间。因此,以这种方式使用 Anki 可以让你有信心长期保持理解。这种信心反过来使最初的理解行为更加愉快,因为你会相信自己是在为长期学习,而不是在一天或一周内就会忘记的东西。

OK, but what does one do with it? … [N]ow that I have all this power – a mechanical golem that will never forget and never let me forget whatever I chose to – what do I choose to remember? – Gwern Branwen
好吧,但人们用它来做什么呢?…… [N]现在我拥有了所有这些力量——一个永远不会忘记的机械傀儡,也不会让我忘记我选择记住的任何事情——我该选择记住什么呢?——Gwern Branwen

This entire process took a few days of my time, spread over a few weeks. That's a lot of work. However, the payoff was that I got a pretty good basic grounding in modern deep reinforcement learning. This is an immensely important field, of great use in robotics, and many researchers believe it will play an important role in achieving general artificial intelligence. With a few days work I'd gone from knowing nothing about deep reinforcement learning to a durable understanding of a key paper in the field, a paper that made use of many techniques that were used across the entire field. Of course, I was still a long way from being an expert. There were many important details about AlphaGo I hadn't understood, and I would have had to do far more work to build my own system in the area. But this foundational kind of understanding is a good basis on which to build deeper expertise.
整个过程花了我几天的时间,分散在几周内。虽然工作量很大,但回报是我在现代深度强化学习方面打下了坚实的基础。这是一个非常重要的领域,尤其在机器人技术中有广泛应用,许多研究人员认为它将在实现通用人工智能方面发挥关键作用。通过几天的工作,我从对深度强化学习一无所知,到深入理解了该领域的一篇关键论文,这篇论文运用了许多在整个领域中广泛使用的技术。当然,我离成为专家还有很长的路要走。关于 AlphaGo 的许多重要细节我还没有完全理解,要在这个领域建立自己的系统,我还需要做更多的工作。 但这种基础性的理解是构建更深层次专业知识的良好基础。

It's notable that I was reading the AlphaGo paper in support of a creative project of my own, namely, writing an article for Quanta Magazine. This is important: I find Anki works much better when used in service to some personal creative project.
值得注意的是,我正在阅读 AlphaGo 的论文,以支持我自己的一个创意项目,即为《Quanta Magazine》撰写文章。这一点很重要:我发现 Anki 在为个人创意项目服务时效果更佳。

It's tempting instead to use Anki to stockpile knowledge against some future day, to think “Oh, I should learn about the geography of Africa, or learn about World War II, or […]”. These are goals which, for me, are intellectually appealing, but which I'm not emotionally invested in. I've tried this a bunch of times. It tends to generate cold and lifeless Anki questions, questions which I find hard to connect to upon later review, and where it's difficult to really, deeply internalize the answers. The problem is somehow in that initial idea I “should” learn about these things: intellectually, it seems like a good idea, but I've little emotional commitment.
相反,使用 Anki 来储备知识以备将来某一天使用是很诱人的,比如想“哦,我应该学习非洲的地理,或者学习第二次世界大战,或者[…]”。这些目标在智力上对我很有吸引力,但我在情感上并没有投入。我已经尝试过很多次了。这往往会产生冰冷而无生气的 Anki 问题,这些问题在之后的复习中很难让我产生共鸣,也很难真正深入地内化答案。问题在于最初的想法“我应该”学习这些东西:在智力上,这似乎是个好主意,但我在情感上几乎没有投入。

Study hard what interests you the most in the most undisciplined, irreverent and original manner possible. – Richard Feynman
以最自由、最不拘一格、最具原创性的方式,努力学习你最感兴趣的东西。——理查德·费曼

By contrast, when I'm reading in support of some creative project, I ask much better Anki questions. I find it easier to connect to the questions and answers emotionally. I simply care more about them, and that makes a difference. So while it's tempting to use Anki cards to study in preparation for some (possibly hypothetical) future use, it's better to find a way to use Anki as part of some creative project.
相比之下,当我在为某个创意项目阅读时,我会提出更好的 Anki 问题。我发现更容易在情感上与问题和答案建立联系。我只是更关心它们,这带来了不同的效果。因此,虽然使用 Anki 卡片来为某些(可能是假设的)未来用途做准备很诱人,但最好找到一种方法将 Anki 作为某个创意项目的一部分来使用。

Using Anki to do shallow reads of papers
使用 Anki 快速浏览论文

Most of my Anki-based reading is much shallower than my read of the AlphaGo paper. Rather than spending days on a paper, I'll typically spend 10 to 60 minutes, sometimes longer for very good papers. Here's a few notes on some patterns I've found useful in shallow reading.
我使用 Anki 进行的阅读大多比阅读 AlphaGo 论文要浅得多。通常,我不会花几天时间在一篇论文上,而是花 10 到 60 分钟,有时对于特别好的论文会花更长时间。以下是我在浅阅读中发现的一些有用模式的笔记。

As mentioned above, I'm usually doing such reading as part of the background research for some project. I will find a new article (or set of articles), and typically spend a few minutes assessing it. Does the article seem likely to contain substantial insight or provocation relevant to my project – new questions, new ideas, new methods, new results? If so, I'll have a read.
如上所述,我通常在进行某些项目的背景研究时进行此类阅读。我会找到一篇新文章(或一组文章),并花几分钟时间评估它。这篇文章是否可能包含与我的项目相关的重要见解或启发——比如新问题、新想法、新方法或新结果?如果有,我就会去阅读它。

This doesn't mean reading every word in the paper. Rather, I'll add to Anki questions about the core claims, core questions, and core ideas of the paper. It's particularly helpful to extract Anki questions from the abstract, introduction, conclusion, figures, and figure captions. Typically I will extract anywhere from 5 to 20 Anki questions from the paper. It's usually a bad idea to extract fewer than 5 questions – doing so tends to leave the paper as a kind of isolated orphan in my memory. Later I find it difficult to feel much connection to those questions. Put another way: if a paper is so uninteresting that it's not possible to add 5 good questions about it, it's usually better to add no questions at all.
这并不意味着要逐字阅读论文。相反,我会在 Anki 中添加关于论文核心主张、核心问题和核心思想的问题。从摘要、引言、结论、图表和图注中提取 Anki 问题特别有帮助。通常我会从论文中提取 5 到 20 个 Anki 问题。提取少于 5 个问题通常是个坏主意——这样做往往会使论文在我的记忆中变得孤立。后来我发现很难与这些问题产生联系。换句话说:如果一篇论文如此无趣,以至于无法添加 5 个关于它的好问题,通常最好根本不添加任何问题。

One failure mode of this process is if you Ankify*
该过程的一个故障模式是如果你进行 Ankify 操作*
* I.e., enter into Anki. Also useful are forms such as Ankification etc.
也就是说,可以将其添加到 Anki 中。像 Ankification 这样的形式也很有用。
misleading work. Many papers contain wrong or misleading statements, and if you commit such items to memory, you're actively making yourself stupider.
误导性的研究。许多论文中存在错误或误导性的陈述,如果你将这些内容牢记于心,实际上是在让自己变得更不聪明。

How to avoid Ankifying misleading work?
如何避免 Ankify 产生误导性内容?

As an example, let me describe how I Ankified a paper I recently read, by the economists Benjamin Jones and Bruce Weinberg*
举个例子,我来描述一下我如何将最近阅读的一篇由经济学家本杰明·琼斯和布鲁斯·温伯格撰写的论文进行 Ankified 处理。
* Benjamin F. Jones and Bruce A. Weinberg, Age Dynamics in Scientific Creativity, Proceedings of the National Academy of Sciences (2011).
本杰明·F·琼斯和布鲁斯·A·温伯格,《科学创造力的年龄动态》,美国国家科学院院刊(2011 年)。
. The paper studies the ages at which scientists make their greatest discoveries.
这篇论文探讨了科学家在哪个年龄段做出了最伟大的发现。

I should say at the outset: I have no reason to think this paper is misleading! But it's also worth being cautious. As an example of that caution, one of the questions I added to Anki was: “What does Jones 2011 claim is the average age at which physics Nobelists made their prizewinning discovery, over 1980-2011?” (Answer: 48). Another variant question was: “Which paper claimed that physics Nobelists made their prizewinning discovery at average age 48, over the period 1980-2011?” (Answer: Jones 2011). And so on.
我首先声明:我没有理由认为这篇论文是误导的!但保持谨慎是值得的。作为谨慎的一个例子,我添加到 Anki 的一个问题是:“Jones 2011 声称 1980-2011 年间物理学诺贝尔奖得主做出获奖发现的平均年龄是多少?”(答案:48 岁)。另一个变体问题是:“哪篇论文声称 1980-2011 年间物理学诺贝尔奖得主做出获奖发现的平均年龄是 48 岁?”(答案:Jones 2011)。诸如此类。

Such questions qualify the underlying claim: we now know it was a claim made in Jones 2011, and that we're relying on the quality of Jones and Weinberg's data analysis. In fact, I haven't examined that analysis carefully enough to regard it as a fact that the average age of those Nobelists is 48. But it is certainly a fact that their paper claimed it was 48. Those are different things, and the latter is better to Ankify.
这些问题限定了基础主张:我们现在知道这是 Jones 在 2011 年提出的主张,并且我们依赖于 Jones 和 Weinberg 的数据分析质量。事实上,我还没有仔细检查过他们的分析,因此无法将其视为诺贝尔奖得主平均年龄为 48 岁的事实。但他们的论文确实声称平均年龄为 48 岁。这是两件不同的事情,后者更适合 Ankify。

If I'm particularly concerned about the quality of the analysis, I may add one or more questions about what makes such work difficult, e.g.: “What's one challenge in determining the age of Nobel winners at the time of their discovery, as discussed in Jones 2011?” Good answers include: the difficulty of figuring out which paper contained the Nobel-winning work; the fact that publication of papers is sometimes delayed by years; that sometimes work is spread over multiple papers; and so on. Thinking about such challenges reminds me that if Jones and Weinberg were sloppy, or simply made an understandable mistake, their numbers might be off. Now, it so happens that for this particular paper, I'm not too worried about such issues. And so I didn't Ankify any such question. But it's worth being careful in framing questions so you're not misleading yourself.
如果我特别关注分析的质量,我可能会增加一些关于这类工作难点的提问,例如:“在确定诺贝尔奖获得者在发现时的年龄时,有哪些挑战,如 Jones 2011 年所讨论的?”好的回答可能包括:难以确定哪篇论文包含了诺贝尔奖获奖工作;论文的发表有时会延迟数年;有时工作分散在多篇论文中;等等。思考这些挑战让我意识到,如果 Jones 和 Weinberg 粗心大意,或者只是犯了一个可以理解的错误,他们的数据可能会有偏差。不过,对于这篇特定的论文,我并不太担心这些问题,因此我没有 Ankify 任何相关的问题。 但在设计问题时需要谨慎,以免误导自己。

Another useful pattern while reading papers is Ankifying figures. For instance, here's a graph from Jones 2011 showing the probability a physicist made their prizewinning discovery by age 40 (blue line) and by age 30 (black line):
阅读论文时,另一个有用的方法是将图表进行 Ankify 处理。例如,这是 Jones 2011 年的一张图表,展示了物理学家在 40 岁之前(蓝线)和 30 岁之前(黑线)做出获奖发现的概率:

I have an Anki question which simply says: “Visualize the graph Jones 2011 made of the probability curves for physicists making their prizewinning discoveries by age 30 and 40”. The answer is the image shown above, and I count myself as successful if my mental image is roughly along those lines. I could deepen my engagement with the graph by adding questions such as: “In Jones 2011's graph of physics prizewinning discoveries, what is the peak probability of great achievement by age 40 [i.e., the highest point in the blue line in the graph above]?” (Answer: about 0.8.) Indeed, one could easily add dozens of interesting questions about this graph. I haven't done that, because of the time commitment associated to such questions. But I do find the broad shape of the graph fascinating, and it's also useful to know the graph exists, and where to consult it if I want more details.
我有一个 Anki 问题,内容是:“请可视化 Jones 2011 制作的关于物理学家在 30 岁和 40 岁时获得重大发现的概率曲线图。”答案是上面显示的图像,如果我的心理图像大致符合这些线条,我就认为自己成功了。我可以通过添加问题来加深对图表的理解,例如:“在 Jones 2011 的物理学重大发现图表中,40 岁时取得重大成就的峰值概率是多少[即上图中蓝线的最高点]?”(答案:大约 0.8。)事实上,可以轻松地添加几十个关于这个图表的有趣问题。我还没有这样做,因为这些问题需要花费大量时间。 不过,我确实觉得图表的整体形状非常有趣,而且了解图表的存在以及如何查阅它以获取更多细节也非常有用。

I said above that I typically spend 10 to 60 minutes Ankifying a paper, with the duration depending on my judgment of the value I'm getting from the paper. However, if I'm learning a great deal, and finding it interesting, I keep reading and Ankifying. Really good resources are worth investing time in. But most papers don't fit this pattern, and you quickly saturate. If you feel you could easily find something more rewarding to read, switch over. It's worth deliberately practicing such switches, to avoid building a counter-productive habit of completionism in your reading. It's nearly always possible to read deeper into a paper, but that doesn't mean you can't easily be getting more value elsewhere. It's a failure mode to spend too long reading unimportant papers.
我之前提到过,我通常会用 10 到 60 分钟的时间来 Ankify 一篇论文,具体时间取决于我对论文价值的判断。不过,如果我在阅读过程中学到了很多,并且觉得内容非常有趣,我会继续阅读并 Ankify。真正有价值的资源是值得投入时间的。但大多数论文并不符合这种情况,你很快就会感到饱和。如果你觉得可以轻松找到更有价值的阅读材料,那就果断切换。有意识地练习这种切换是值得的,这样可以避免在阅读中养成一种适得其反的“完成主义”习惯。虽然几乎总是可以更深入地阅读一篇论文,但这并不意味着你不能在其他地方轻松获得更多价值。花太多时间阅读不重要的论文是一种失败的模式。

Syntopic reading using Anki
使用 Anki 进行主题阅读

I've talked about how to use Anki to do shallow reads of papers, and rather deeper reads of papers. There's also a sense in which it's possible to use Anki not just to read papers, but to “read” the entire research literature of some field or subfield. Here's how to do it.
我已经介绍过如何使用 Anki 进行论文的浅读和深度阅读。此外,还有一种方法,可以利用 Anki 不仅阅读单篇论文,还可以“阅读”某个领域或子领域的整个研究文献。下面是如何实现这一点的具体方法。

You might suppose the foundation would be a shallow read of a large number of papers. In fact, to really grok an unfamiliar field, you need to engage deeply with key papers – papers like the AlphaGo paper. What you get from deep engagement with important papers is more significant than any single fact or technique: you get a sense for what a powerful result in the field looks like. It helps you imbibe the healthiest norms and standards of the field. It helps you internalize how to ask good questions in the field, and how to put techniques together. You begin to understand what made something like AlphaGo a breakthrough – and also its limitations, and the sense in which it was really a natural evolution of the field. Such things aren't captured individually by any single Anki question. But they begin to be captured collectively by the questions one asks when engaged deeply enough with key papers.
你可能会认为基础是对大量论文的浅显阅读。然而,要真正理解一个陌生的领域,你需要深入研读关键论文——比如 AlphaGo 论文。通过深入研读重要论文,你获得的不仅仅是某个具体的事实或技术,更重要的是,你会对这个领域的重大成果有一个直观的感受。这有助于你吸收该领域最健康的规范和标准,并内化如何在该领域提出有价值的问题,以及如何将各种技术结合起来。你会逐渐理解是什么让像 AlphaGo 这样的成果成为突破——同时也能认识到它的局限性,以及它在某种意义上确实是该领域自然发展的产物。这些深层次的领悟,是任何单一的 Anki 问题都无法单独捕捉的。 但当一个人深入研读关键论文并提出问题时,他们便开始被这些问题所吸引。

So, to get a picture of an entire field, I usually begin with a truly important paper, ideally a paper establishing a result that got me interested in the field in the first place. I do a thorough read of that paper, along the lines of what I described for AlphaGo. Later, I do thorough reads of other key papers in the field – ideally, I read the best 5-10 papers in the field. But, interspersed, I also do shallower reads of a much larger number of less important (though still good) papers. In my experimentation so far that means tens of papers, though I expect in some fields I will eventually read hundreds or even thousands of papers in this way.
因此,为了全面了解一个领域,我通常会从一篇真正重要的论文开始,最好是那篇让我最初对该领域产生兴趣的论文。我会像之前描述的对 AlphaGo 那样,彻底阅读这篇论文。之后,我会深入阅读该领域的其他关键论文——理想情况下,我会阅读该领域最优秀的 5-10 篇论文。不过,在这期间,我也会快速浏览大量不那么重要(但仍然不错)的论文。到目前为止,在我的实验中,这意味着阅读了数十篇论文,尽管我预计在某些领域,我最终会以这种方式阅读数百甚至数千篇论文。

You may wonder why I don't just focus on only the most important papers. Part of the reason is mundane: it can be hard to tell what the most important papers are. Shallow reads of many papers can help you figure out what the key papers are, without spending too much time doing deeper reads of papers that turn out not to be so important. But there's also a culture that one imbibes reading the bread-and-butter papers of a field: a sense for what routine progress looks like, for the praxis of the field. That's valuable too, especially for building up an overall picture of where the field is at, and to stimulate questions on my own part. Indeed, while I don't recommend spending a large fraction of your time reading bad papers, it's certainly possible to have a good conversation with a bad paper. Stimulus is found in unexpected places.
你可能会好奇,为什么我不只专注于最重要的论文。部分原因很普通:很难判断哪些论文是最重要的。通过浅读大量论文,你可以找出关键论文,而不必花太多时间深入阅读那些最终并不那么重要的论文。此外,阅读一个领域的基础论文还能让你吸收一种文化:了解常规进展的样子,以及该领域的实践。这也是很有价值的,特别是为了全面了解该领域的现状,并激发我自己的思考。 确实,虽然我不建议花大量时间阅读质量不佳的论文,但与一篇糟糕的论文进行有意义的讨论也是有可能的。灵感往往来自意想不到的地方。

Over time, this is a form of what Mortimer Adler and Charles van Doren dubbed syntopic reading*
随着时间的推移,这是莫蒂默·阿德勒和查尔斯·范多伦所称的“综合阅读”的一种形式
* In their marvelous “How to Read a Book”: Mortimer J. Adler and Charles van Doren, “How to Read a Book: The Classic Guide to Intelligent Reading” (1972)
在他们精彩的《如何阅读一本书》中:莫蒂默·J·阿德勒和查尔斯·范多伦合著的《如何阅读一本书:智能阅读的经典指南》(1972 年)
. I build up an understanding of an entire literature: what's been done, what's not yet been done. Of course, it's not literally reading an entire literature. But functionally it's close. I start to identify open problems, questions that I'd personally like answered, but which don't yet seem to have been answered. I identify tricks, observations that seem pregnant with possibility, but whose import I don't yet know. And, sometimes, I identify what seem to me to be field-wide blind spots. I add questions about all these to Anki as well. In this way, Anki is a medium supporting my creative research. It has some shortcomings as such a medium, since it's not designed with supporting creative work in mind – it's not, for instance, equipped for lengthy, free-form exploration inside a scratch space. But even without being designed in such a way, it's helpful as a creative support.
我逐步建立起对整个文献的理解:哪些工作已经完成,哪些尚未完成。当然,这并不是字面上阅读所有文献,但在功能上非常接近。我开始发现一些开放性问题,那些我个人希望得到解答但尚未有答案的问题。我注意到一些技巧和观察,它们似乎蕴含着可能性,但我还不清楚它们的意义。有时,我还会发现一些我认为是整个领域的盲点。我将这些问题都添加到 Anki 中。通过这种方式,Anki 成为了支持我创造性研究的工具。 它作为这种媒介有一些不足之处,因为它并非为支持创意工作而设计——例如,它不具备在草稿空间内进行长时间自由探索的功能。但即便如此,它仍然可以作为创意支持工具发挥一定的作用。

I've been describing how I use Anki to learn fields which are largely new to me. By contrast, with a field I already know well, my curiosity and my model of the field are often already so strong that it's easy to integrate new facts. I still find Anki useful, but it's definitely most useful in new areas. The great English mathematician John Edensor Littlewood wrote*
我一直在描述如何使用 Anki 来学习对我来说全新的领域。相比之下,对于我已经非常熟悉的领域,我的好奇心和领域模型通常已经非常强大,能够轻松整合新的事实。我仍然认为 Anki 有用,但它在新领域无疑是最有用的。伟大的英国数学家约翰·埃登索·利特尔伍德曾写道*
* In “Littlewood's miscellany”, edited by Béla Bollobás (1986).
在《Littlewood 的杂记》中,由 Béla Bollobás 编辑(1986 年出版)。
:

I have tried to learn mathematics outside my fields of interest; after any interval I had to begin all over again.
我曾尝试学习自己兴趣领域之外的数学,但每次间隔一段时间后,都不得不从头再来。

This captures something of the immense emotional effort I used to find required to learn a new field. Without a lot of drive, it was extremely difficult to make a lot of material in a new field stick. Anki does much to solve that problem. In a sense, it's an emotional prosthetic, actually helping create the drive I need to achieve understanding. It doesn't do the entire job – as mentioned earlier, it's very helpful to have other commitments (like a creative project, or people depending on me) to help create that drive. Nonetheless, Anki helps give me confidence that I can simply decide I'm going to read deeply into a new field, and retain and make sense of much of what I learn. This has worked for all areas of conceptual understanding where I've tried it*
这反映了我过去在学习新领域时所付出的巨大情感努力。如果没有足够的动力,很难让新领域的知识牢牢记住。Anki 在很大程度上解决了这个问题。可以说,它是一种情感辅助工具,帮助我创造了实现理解所需的动力。当然,它并不能完成所有工作——正如前面提到的,拥有其他承诺(如一个创意项目,或依赖我的人)对创造这种动力非常有帮助。尽管如此,Anki 让我有信心,我可以决定深入阅读一个新领域,并保留和理解我学到的大部分内容。这在我尝试过的所有概念理解领域都有效。
* I'm curious how well it could be used for motor skills and problem solving, two areas where I haven't tried using Anki.
我很好奇它在运动技能和问题解决方面的应用效果如何,这两个领域我还没有尝试过使用 Anki。
.

One surprising consequence of reading in this way is how much more enjoyable it becomes. I've always enjoyed reading, but starting out in a challenging new field was sometimes a real slog, and I was often bedeviled by doubts that I would ever really get into the field. That doubt, in turn, made it less likely that I would succeed. Now I have confidence that I can go into a new field and quickly attain a good, relatively deep understanding, an understanding that will be durable. That confidence makes reading even more pleasurable*
以这种方式阅读的一个意想不到的后果是它变得更加有趣。我一直喜欢阅读,但刚开始进入一个具有挑战性的新领域时,常常感到非常吃力,并且经常怀疑自己是否真的能深入这个领域。这种怀疑反过来又降低了我的成功几率。现在我有信心能够进入一个新领域,并迅速获得一个良好且相对深入的理解,这种理解将是持久的。这种信心使阅读变得更加愉快。
* Many people have written accounts of how to read using personal memory systems. My thinking was particularly stimulated by: Piotr Wozniak, Incremental Reading.
许多人已经撰写了关于如何利用个人记忆系统进行阅读的文章。我的思考尤其受到了 Piotr Wozniak 的《增量阅读》的启发。
.

More patterns of Anki use
更多 Anki 的使用模式

Having looked at the use of Anki for reading technical papers, let's return to general patterns of use*
在了解了 Anki 用于阅读技术论文的使用后,让我们回到一般的使用模式*
* Another useful list of patterns is: Piotr Wozniak, Effective learning: Twenty rules of formulating knowledge.
另一个有用的模式列表是:Piotr Wozniak 的《有效学习:制定知识的二十条规则》。
. There's a lot in this section, and upon a first read you may wish to skim through and concentrate on those items which most catch your eye.
这一部分内容较多,初次阅读时你可以先快速浏览,重点关注那些最吸引你注意的部分。

Make most Anki questions and answers as atomic as possible: That is, both the question and answer express just one idea. As an example, when I was learning the Unix command line, I entered the question: “How to create a soft link from linkname to filename?” The answer was: “ln -s filename linkname”. Unfortunately, I routinely got this question wrong.
尽量使 Anki 的问题和答案简洁明了:即问题和答案都只表达一个核心概念。例如,当我学习 Unix 命令行时,我输入了问题:“如何从 linkname 创建软链接到 filename ?”答案是:“ ln -s filename linkname ”。但遗憾的是,我经常答错这个问题。

The solution was to refactor the question by breaking it into two pieces. One piece was: “What's the basic command and option to create a Unix soft link?” Answer: “ln -s …”. And the second piece was: “When creating a Unix soft link, in what order do linkname and filename go?” Answer: “filename linkname”.
解决方案是将问题拆分为两部分来重构。第一部分是:“创建 Unix 软链接的基本命令和选项是什么?” 答案:“ ln -s … ”。第二部分是:“在创建 Unix 软链接时, linknamefilename 的顺序是什么?” 答案:“ filename linkname ”。

Breaking this question into more atomic pieces turned a question I routinely got wrong into two questions I routinely got right*
将这个问题分解成更小的部分后,原本我经常答错的问题变成了两个我经常答对的问题*
* An even more atomic version would be to break the first question into “What's the Unix command to create a link?” and “What's the option to the ln command to create a soft link?” In practice, I've known for years that ln is the command to create a link, and so this wasn't necessary.
一个更细化的版本是将第一个问题拆分为“创建链接的 Unix 命令是什么?”和“创建软链接的 ln 命令的选项是什么?”实际上,我早就知道 ln 是创建链接的命令,因此这一步并不必要。
. Most of all: when I wanted to create a Unix soft link in practice, I knew how to do it.
最重要的是:当我想在实际操作中创建一个 Unix 软链接时,我知道如何操作。

I'm not sure what's responsible for this effect. I suspect it's partly about focus. When I made mistakes with the combined question, I was often a little fuzzy about where exactly my mistake was. That meant I didn't focus sharply enough on the mistake, and so didn't learn as much from my failure. When I fail with the atomic questions my mind knows exactly where to focus.
我不确定是什么导致了这种效果。我怀疑部分原因在于注意力。当我在综合问题上犯错时,我常常对自己的错误具体在哪里有些模糊。这意味着我没有足够集中注意力在错误上,因此没有从失败中学到太多。而当我在原子问题上失败时,我的大脑清楚地知道应该集中注意力在哪里。

In general, I find that you often get substantial benefit from breaking Anki questions down to be more atomic. It's a powerful pattern for question refactoring.
总的来说,我发现将 Anki 问题拆解得更细致通常会带来显著的好处。这是一种非常有效的问题重构方法。

Note that this doesn't mean you shouldn't also retain some version of the original question. I still want to know how to create a soft link in Unix, and so it's worth keeping the original question in Anki. But it becomes an integrative question, part of a hierarchy of questions building up from simple atomic facts to more complex ideas.
请注意,这并不意味着您不应该保留原始问题的某个版本。我仍然想知道如何在 Unix 中创建软链接,因此值得在 Anki 中保留原始问题。但它变成了一个综合性的问题,是从简单的原子事实到更复杂的思想构建的问题层次结构的一部分。

Incidentally, just because a question is atomic doesn't mean it can't involve quite complex, high-level concepts. Consider the following question, from the field of general relativity: “What is the dr2 term in the Robertson-Walker metric?” Answer: dr2/(1-kr^2). Now, unless you've studied general relativity that question probably seems quite opaque. It's a sophisticated, integrative question, assuming you know what the Robertson-Walker metric is, what dr2 means, what k means, and so on. But conditional on that background knowledge, it's quite an atomic question and answer.
顺便提一下,即使一个问题是一个原子问题,也不意味着它不能涉及相当复杂的高级概念。以广义相对论领域的一个问题为例:“Robertson-Walker 度量中的 dr 2 项是什么?” 答案是:dr 2 /(1-kr^2)。如果你没有学过广义相对论,这个问题可能会显得非常晦涩。这是一个复杂的、综合性的问题,前提是你已经了解 Robertson-Walker 度量的含义、dr 2 的含义、k 的含义等等。但在具备这些背景知识的情况下,这是一个相当原子化的问题和答案。

One benefit of using Anki in this way is that you begin to habitually break things down into atomic questions. This sharply crystallizes the distinct things you've learned. Personally, I find that crystallization satisfying, for reasons I (ironically) find difficult to articulate. But one real benefit is that later I often find those atomic ideas can be put together in ways I didn't initially anticipate. And that's well worth the trouble.
以这种方式使用 Anki 的一个好处是,你会习惯性地将事物分解为最小的问题单元。这让你所学到的知识清晰地呈现出来。就我个人而言,这种清晰的呈现让我感到满足,尽管我(讽刺地)发现很难用语言表达其中的原因。但一个真正的好处是,后来我经常发现这些最小的问题单元可以以我最初没有预料到的方式组合在一起。而这绝对值得付出努力。

Anki use is best thought of as a virtuoso skill, to be developed: Anki is an extremely simple program: it lets you enter text or other media, and then shows you that media on a schedule determined by your responses. Despite that simplicity, it's an incredibly powerful tool. And, like many tools, it requires skill to use well. It's worth thinking of Anki as a skill that can be developed to virtuoso levels, and attempting to continue to level up toward such virtuosity.
Anki 的使用最好被视为一种需要培养的高超技能:Anki 是一个非常简单的程序,它允许你输入文本或其他媒体,然后根据你的反馈显示这些内容。尽管它看似简单,但它是一个非常强大的工具。就像许多工具一样,要熟练使用它需要一定的技巧。值得将 Anki 视为一种可以不断提升到高超水平的技能,并努力继续精进以达到这种境界。

Anki isn't just a tool for memorizing simple facts. It's a tool for understanding almost anything. It's a common misconception that Anki is just for memorizing simple raw facts, things like vocabulary items and basic definitions. But as we've seen, it's possible to use Anki for much more advanced types of understanding. My questions about AlphaGo began with simple questions such as “How large is a Go board?”, and ended with high-level conceptual questions about the design of the AlphaGo systems – on subjects such as how AlphaGo avoided over-generalizing from training data, the limitations of convolutional neural networks, and so on.
Anki 不仅仅是一个用于记忆简单事实的工具,它还能帮助我们理解几乎任何事物。许多人误以为 Anki 只能用来记忆简单的原始事实,比如词汇和基本定义。但实际上,Anki 可以用于更高级的理解。我对 AlphaGo 的研究从简单的问题开始,比如“围棋棋盘有多大?”,逐渐深入到关于 AlphaGo 系统设计的高级概念性问题,例如 AlphaGo 如何避免从训练数据中过度泛化,以及卷积神经网络的局限性等。

Part of developing Anki as a virtuoso skill is cultivating the ability to use it for types of understanding beyond basic facts. Indeed, many of the observations I've made (and will make, below) about how to use Anki are really about what it means to understand something. Break things up into atomic facts. Build rich hierarchies of interconnections and integrative questions. Don't put in orphan questions. Patterns for how to engage with reading material. Patterns (and anti-patterns) for question types. Patterns for the kinds of things you'd like to memorize. Anki skills concretely instantiate your theory of how you understand; developing those skills will help you understand better. It's too strong to say that to be a virtuoso Anki user is to be a virtuoso in understanding. But there's some truth to it.
将 Anki 发展为一项精湛技能的一部分,是培养将其用于超越基本事实的理解类型的能力。事实上,我(以及下面将要)提出的关于如何使用 Anki 的许多观察,实际上是关于理解某事的含义。将事物分解为原子事实,建立丰富的相互联系和综合问题的层次结构,避免放入孤立的问题。探索与阅读材料互动的模式,问题类型的模式(和反模式),以及你想要记住的事物的模式。Anki 技能具体体现了你对如何理解的理论;发展这些技能将帮助你更好地理解。不过,说成为 Anki 的精湛用户就是成为理解的精湛用户,这种说法有些过于强烈。 但这其中确实有一些道理。

Use one big deck: Anki allows you to organize cards into decks and subdecks. Some people use this to create a complicated organizational structure. I used to do this, but I've gradually*
使用一个大牌组:Anki 允许你将卡片组织成牌组和子牌组。有些人利用这个功能创建复杂的组织结构。我曾经也这样做,但后来逐渐*
* It's gradual because questions sometimes need to be rewritten due to the changed context. For instance, both my Emacs and Unix command line decks had very similar questions, along the lines of: “How to delete a word?” Those questions need to be rewritten, e.g. as: “In Emacs, how to delete a word?” (This, by the way, may seem a strange question for a long-time Emacs user such as myself. In fact, I've used Anki to help me change the way I delete words in Emacs, which is why I have an Anki question on the subject. I have made many improvements to my Emacs workflow this way.)
这个过程是渐进的,因为有时问题的上下文发生变化,需要重新编写。例如,我的 Emacs 和 Unix 命令行卡片中都有类似的问题,比如:“如何删除一个单词?”这些问题需要重新表述,例如:“在 Emacs 中,如何删除一个单词?”(顺便说一下,对于像我这样的长期 Emacs 用户来说,这可能听起来很奇怪。实际上,我使用 Anki 来帮助我改变在 Emacs 中删除单词的方式,这就是为什么我会有一个关于这个主题的 Anki 问题。通过这种方式,我对我的 Emacs 工作流程进行了许多改进。)
merged my decks and subdecks into one big deck. The world isn't divided up into neatly separated components, and I believe it's good to collide very different types of questions. One moment Anki is asking me a question about the temperature chicken should be cooked to. The next: a question about the JavaScript API. Is this mixing doing me any real good? I'm not sure. I have not, as yet, found any reason to use JavaScript to control the cooking of a chicken. But I don't think this mixing does any harm, and hope it is creatively stimulating, and helps me apply my knowledge in unusual contexts.
我将我的牌组和子牌组合并成一个大牌组。世界并不是被整齐地划分为独立的模块,我认为将不同类型的问题混合在一起是有益的。有时 Anki 会问我关于鸡肉应该煮到多少度的问题,下一刻又问我关于 JavaScript API 的问题。这种混合对我有实际的好处吗?我不确定。到目前为止,我还没有找到任何理由用 JavaScript 来控制鸡肉的烹饪。但我认为这种混合没有任何害处,反而可能激发创造力,并帮助我在不同的情境中应用我的知识。

Avoid orphan questions: Suppose I'm reading online and stumble across a great article about the grooming habits of the Albanian giant mongoose, a subject I never previously knew I was interested in, but which turns out to be fascinating. Pretty soon I've Ankified 5 to 10 questions. That's great, but my experience suggests that in a few months I'll likely find those questions rather stale, and frequently get them wrong. I believe the reason is that those questions are too disconnected from my other interests, and I will have lost the context that made me interested.
避免孤立的问题:假设我在网上阅读时,偶然发现了一篇关于阿尔巴尼亚巨型猫鼬梳理习惯的精彩文章,这是一个我以前从未感兴趣的主题,但结果却非常吸引人。很快我就用 Anki 记录了 5 到 10 个问题。这很好,但根据我的经验,几个月后我可能会觉得这些问题变得陈旧,并且经常答错。我认为原因是这些问题与我的其他兴趣关联不大,我将失去当初让我感兴趣的背景。

I call these orphan questions, because they're not closely related to anything else in my memory. It's not bad to have a few orphan questions in Anki – it can be difficult to know what will turn out to be of only passing interest, and what will grow into a substantial interest, connected to my other interests. But if a substantial minority of your questions are orphans, that's a sign you should concentrate more on Ankifying questions related to your main creative projects, and cut down on Ankifying tangential material.
我把这些问题称为“孤儿问题”,因为它们与我的记忆中的其他内容没有紧密联系。在 Anki 中保留几个孤儿问题并无大碍——毕竟很难预测哪些问题只是短暂的兴趣,而哪些问题会逐渐发展成与我的其他兴趣相关的实质性内容。但如果你的问题中有相当一部分是孤儿问题,那就意味着你应该更多地专注于与主要创意项目相关的问题,并减少对无关材料的 Ankify。

It's particularly worth avoiding lonely orphans: single questions that are largely disconnected from everything else. Suppose, for instance, I'm reading an article on a new subject, and I learn an idea that seems particularly useful. I make it a rule to never put in one question. Rather, I try to put at least two questions in, preferably three or more. That's usually enough that it's at least the nucleus of a bit of useful knowledge. If it's a lonely orphan, inevitably I get the question wrong all the time, and it's a waste to have entered it at all.
特别值得避免孤立的问题:那些与其他内容基本无关的单个问题。例如,假设我正在阅读一篇关于新主题的文章,并学到了一个特别有用的想法。我制定了一个规则,从不只记录一个问题。相反,我尽量至少记录两个问题,最好是三个或更多。这通常足以形成一个有用的知识核心。如果它是一个孤立的问题,我不可避免地总是答错,而且记录它完全是浪费。

Don't share decks: I'm often asked whether I'd be willing to share my Anki decks. I'm not. Very early on I realized it would be very useful to put personal information in Anki. I don't mean anything terribly personal – I'd never put deep, dark secrets in there. Nor do I put anything requiring security, like passwords. But I do put some things I wouldn't sling about casually.
不要分享卡片组:我经常被问到是否愿意分享我的 Anki 卡片组。我不愿意。很早以前我就意识到在 Anki 中放入个人信息会非常有用。我并不是指非常私密的内容——我绝不会把深藏的秘密放在那里。我也不会放任何需要保密的东西,比如密码。但我确实放了一些我不会轻易分享的内容。

As an example, I've a (very short!) list of superficially charming and impressive colleagues who I would never work with, because I've consistently seen them treat other people badly. It's helpful to Ankify some details of that treatment, so I can clearly remember why that person should be avoided. This isn't the kind of information that is right to spread casually: I may have misinterpreted the other person's actions, or have misunderstood the context they were operating in. But it's personally useful for me to have in Anki.
举个例子,我有一个(非常简短的!)表面上看起来迷人且令人印象深刻的同事名单,但我永远不会与他们合作,因为我一直看到他们对待他人很差。将这些行为的细节记录在 Anki 中是有帮助的,这样我可以清楚地记住为什么应该避免与那个人合作。这类信息不适合随意传播:我可能误解了那个人的行为,或者误解了他们所处的背景。但对我来说,将这些信息保存在 Anki 中是很有用的。

Construct your own decks: The Anki site has many shared decks, but I've found only a little use for them. The most important reason is that making Anki cards is an act of understanding in itself. That is, figuring out good questions to ask, and good answers, is part of what it means to understand a new subject well. To use someone else's cards is to forgo much of that understanding.
构建你自己的牌组:Anki 网站上有许多共享牌组,但我发现它们的用处不大。最重要的原因是,制作 Anki 卡片本身就是一种理解的过程。也就是说,想出好的问题和好的答案,是深入理解一个新主题的一部分。使用别人的卡片,意味着你放弃了大部分这种理解的机会。

Indeed, I believe the act of constructing the cards actually helps with memory. Memory researchers have repeatedly found that the more elaborately you encode a memory, the stronger the memory will be. By elaborative encoding, they mean essentially the richness of the associations you form.
确实,我认为制作卡片的过程实际上有助于增强记忆。记忆研究人员多次发现,记忆的编码越精细,记忆就越牢固。所谓精细编码,基本上是指你形成的关联的丰富程度。

For instance, it's possible to try to remember as an isolated fact that 1962 was the year the first telecommunications satellite, Telstar, was put into orbit. But a better way of remembering it is to relate that fact to others. Relatively prosaically, you might observe that Telstar was launched just 5 years after the first Soviet satellite, Sputnik. It didn't take long to put space to use for telecommunications. Less prosaically – a richer elaboration – I personally find it fascinating that Telstar was put into orbit the year before the introduction of ASCII, arguably the first modern digital standard for communicating text. Humanity had a telecommunications satellite before we had a digital standard for communicating text! Finding that kind of connection is an example of an elaborative encoding.
例如,可以尝试记住 1962 年是第一颗通信卫星 Telstar 被送入轨道的年份这一孤立的事实。但更好的记忆方法是将这一事实与其他事实联系起来。相对平淡无奇地,你可能会注意到 Telstar 是在第一颗苏联卫星 Sputnik 发射后仅 5 年发射的。将太空用于通信并没有花太长时间。不那么平淡无奇地——更丰富的阐述——我个人觉得有趣的是,Telstar 是在 ASCII 引入前一年被送入轨道的,ASCII 可以说是第一个现代数字文本通信标准。人类在拥有数字文本通信标准之前就已经有了通信卫星! 找到那种联系是精细编码的一个典型例子。

The act of constructing an Anki card is itself nearly always a form of elaborative encoding. It forces you to think through alternate forms of the question, to consider the best possible answers, and so on. I believe this is true for even the most elementary cards. And it certainly becomes true if you construct more complex cards, cards relating the basic fact to be remembered to other ideas (like the Telstar-ASCII link), gradually building up a web of richly interrelated ideas.
制作 Anki 卡片的过程本身几乎总是一种精细编码的形式。它促使你思考问题的不同表达方式,寻找最佳答案等。我相信即使是最基础的卡片也是如此。如果你制作更复杂的卡片,将需要记忆的基本事实与其他概念(如 Telstar-ASCII 链接)联系起来,逐渐构建一个丰富且相互关联的概念网络,这一点就更加明显了。

With that said, there are some valuable deck-sharing practices. For instance, there are communities of medical students who find value in sharing and sometimes collaboratively constructing decks*
尽管如此,仍有一些值得推荐的卡片共享实践。例如,一些医学生社区发现共享甚至有时协作构建卡片非常有价值。
* See the MedicalSchoolAnki subreddit, which contains frequent discussion of the best decks, how to use them, as well as an ever-changing canon of best decks to use for different purposes. See also the paper: Michael Hart-Matyas et al, Twelve tips for medical students to establish a collaborative flashcard project, Medical Teacher (2018).
* 请访问 MedicalSchoolAnki 子版块,这里经常讨论最佳卡组、如何使用它们,以及针对不同用途的最佳卡组推荐。此外,还可参考 Michael Hart-Matyas 等人撰写的论文《医学生建立协作闪卡项目的十二个技巧》,发表于《医学教师》(2018 年)。
. I've also found value in shared decks containing very elementary questions, such as art decks which ask questions such as who painted a particular painting. But for deeper kinds of understanding, I've not yet found good ways of using shared decks.
我也发现了一些包含非常基础问题的共享牌组,比如艺术牌组,它们会问诸如某幅画的作者是谁这样的问题。但对于更深层次的理解,我还没有找到使用共享牌组的好方法。

Cultivate strategies for elaborative encoding / forming rich associations: This is really a meta-strategy, i.e., a strategy for forming strategies. One simple example strategy is to use multiple variants of the “same” question. For instance, I mentioned earlier my two questions: “What does Jones 2011 claim is the average age at which physics Nobelists made their prizewinning discovery, over 1980-2011?” And: “Which paper claimed that physics Nobelists made their prizewinning discovery at average age 48, over the period 1980-2011?” Logically, these two questions are obviously closely related. But in terms of how memory works, they are different, causing associations on very different triggers.
培养精细编码策略/形成丰富的关联:这实际上是一个元策略,即用于形成策略的策略。一个简单的策略示例是使用“相同”问题的多个变体。例如,我之前提到的两个问题:“Jones 2011 声称 1980-2011 年间物理学诺贝尔奖获得者做出获奖发现的平均年龄是多少?”以及:“哪篇论文声称 1980-2011 年间物理学诺贝尔奖获得者做出获奖发现的平均年龄为 48 岁?”从逻辑上讲,这两个问题显然是密切相关的。但就记忆的工作原理而言,它们是不同的,会引发非常不同的触发关联。

What about memory palaces and similar techniques? There is a well-known set of memory techniques based around ideas such as memory palaces, the method of loci, and others*
那么记忆宫殿和类似的技巧呢?有一系列著名的记忆技巧,比如记忆宫殿、位置法等等*
* An entertaining and informative overview is: Joshua Foer, “Moonwalking with Einstein” (2011).
一本有趣且信息丰富的概述书籍是:约书亚·福尔的《与爱因斯坦一起月球漫步》(2011 年)。
. This is an extreme form of elaborative encoding, making rich visual and spatial associations to the material you want to remember. Here's Joshua Foer recounting a conversation where mnemonist Ed Cooke describes one basic technique:
这是一种极端的精细编码形式,通过丰富的视觉和空间联想来记忆你想要记住的内容。以下是约书亚·福尔回忆的一次对话,记忆大师埃德·库克在其中描述了一种基本技巧:

Ed then explained to me his procedure for making a name memorable, which he had used in the competition to memorize the first and last names associated with ninety-nine different photographic head shots in the names-and-faces event. It was a technique he promised I could use to remember people's names at parties and meetings. “The trick is actually deceptively simple,” he said. “It is always to associate the sound of a person's name with something you can clearly imagine. It's all about creating a vivid image in your mind that anchors your visual memory of the person's face to a visual memory connected to the person's name. When you need to reach back and remember the person's name at some later date, the image you created will simply pop back into your mind… So, hmm, you said your name was Josh Foer, eh?” He raised an eyebrow and gave his chin a melodramatic stroke. “Well, I'd imagine you joshing me where we first met, outside the competition hall, and I'd imagine myself breaking into four pieces in response. Four/Foer, get it? That little image is more entertaining—to me, at least—than your mere name, and should stick nicely in the mind.”
接着,Ed 向我解释了他用来让名字变得难忘的方法,他在比赛中用这种方法记住了与九十九张不同的照片头像相关联的名字和姓氏。他向我保证,我可以在聚会和会议上使用这种技巧来记住人们的名字。“这个技巧其实非常简单,”他说。“关键是将一个人名字的发音与你能够清晰想象的事物联系起来。这一切都是为了在你的脑海中创造一个生动的图像,将你对这个人面孔的视觉记忆与与这个人名字相关的视觉记忆联系起来。” 当你日后需要回想并记住这个人的名字时,你创造的图像会自然而然地浮现在脑海中……所以,嗯,你说你的名字是 Josh Foer,是吗?”他扬起眉毛,戏剧性地摸了摸下巴。“好吧,我会想象我们在比赛大厅外第一次见面时你跟我开玩笑,我会想象自己因此裂成四块。四/Foer,明白吗?这个小图像比你的名字更有趣——至少对我来说是这样——而且应该很容易记住。”

I've experimented with these techniques, and while they're fun, they seem most useful for memorizing trivia – sequences of playing cards, strings of digits, and so on. They seem less well developed for more abstract concepts, and such abstractions are often where the deepest understanding lies. In that sense, they may even distract from understanding. That said, it's possible I simply need to figure out better ways of using these ideas, much as I needed to figure out Anki. In particular, it may be worth further investigating some of the techniques used by practitioners to form rich associations. As Foer says, quoting a memory expert, there is great value in learning to “think in more memorable ways”.
我尝试过这些技巧,虽然它们很有趣,但它们似乎最适用于记忆一些琐碎的信息——比如扑克牌的顺序、数字串等。对于更抽象的概念,这些技巧似乎不太成熟,而这些抽象概念往往是深刻理解的关键。从这个角度来看,它们甚至可能分散对理解力的注意力。不过,可能我只需要找到更好的方法来运用这些技巧,就像我当初需要摸索 Anki 一样。特别是,进一步研究一些从业者用来形成丰富联想的技术可能很有价值。正如福尔引用一位记忆专家的话所说,学会“以更易记的方式思考”具有巨大的价值。

95% of Anki's value comes from 5% of the features: Anki has ways of auto-generating cards, of tagging cards, a plugin ecosystem, and much else. In practice, I rarely use any of these features. My cards are always one of two types: the majority are simple question and answer; a substantial minority are what's called a cloze: a kind of fill-in-the-blanks test. For instance, I'll use clozes to test myself on favorite quotes:
Anki 的 95%的价值来自于其 5%的功能:Anki 具备自动生成卡片、标记卡片、插件生态系统等功能。然而,在实际使用中,我很少用到这些功能。我的卡片通常只有两种类型:大多数是简单的问题和答案;还有一部分是所谓的填空测试。例如,我会用填空来测试自己喜欢的名言:

“if the personal computer is truly a __ then the use of it would actually change the __ of an __", __, __” (Answer: new medium, thought patterns, entire civilization, Alan Kay, 1989).
“如果个人电脑真正是一种新媒介,那么它的使用实际上会改变整个文明的思维模式”,艾伦·凯,1989 年。

Clozes can also be used to pose questions not involving quotes:
填空题也可以用于提出不涉及引用的问题:

The Adelson illusion is also known as the ___ illusion. (Answer: checker-shadow)
阿德尔森错觉也被称为棋盘阴影错觉。(答案:棋盘阴影)

Why not use more of Anki's features? Part of the reason is that I get an enormous benefit from just the core features. Furthermore, learning to use this tiny set of features well has required a lot of work. A basketball and hoop are simple pieces of equipment, but you can spend a lifetime learning to use them well. Similarly, basic Anki practice can be developed enormously. And so I've concentrated on learning to use those basic features well.
为什么不使用更多的 Anki 功能?部分原因是我从核心功能中获得了巨大的好处。此外,学习如何熟练使用这一小部分功能需要大量的努力。篮球和篮筐虽然是简单的设备,但你可以花一辈子的时间来精通它们。同样,基本的 Anki 练习也可以有很大的提升空间。因此,我专注于学习如何熟练使用这些基本功能。

I know many people who try Anki out, and then go down a rabbit hole learning as many features as possible so they can use it “efficiently”. Usually, they're chasing 1% improvements. Often, those people ultimately give up Anki as “too difficult”, which is often a synonym for “I got nervous I wasn't using it perfectly”. This is a pity. As discussed earlier, Anki offers something like a 20-fold improvement over (say) ordinary flashcards. And so they're giving up a 2,000% improvement because they were worried they were missing a few final 5%, 1% and (in many cases) 0.1% improvements. This kind of rabbit hole seems to be especially attractive to programmers.
我知道很多人尝试使用 Anki,然后陷入了一个无底洞,学习尽可能多的功能,以便能够“高效”地使用它。通常,他们追求的是 1%的改进。然而,这些人最终往往会放弃 Anki,认为它“太难了”,这实际上往往是“我担心自己没有完美地使用它”的另一种说法。这很可惜。正如前面提到的,Anki 相比普通抽认卡大约有 20 倍的改进。因此,他们因为担心错过了最后几个 5%、1%甚至 0.1%的改进,而放弃了 2000%的巨大提升。这种无底洞似乎对程序员特别有吸引力。

For this reason, when someone is getting started I advise not using any advanced features, and not installing any plugins. Don't, in short, come down with a bad case of programmer's efficiency disease. Learn how to use Anki for basic question and answer, and concentrate on exploring new patterns within that paradigm. That'll serve you far better than any number of hours spent fiddling around with the features. Then, if you build a regular habit of high-quality Anki use, you can experiment with more advanced features.
因此,当有人刚开始使用 Anki 时,我建议不要使用任何高级功能,也不要安装任何插件。简而言之,不要陷入程序员效率病的误区。先学习如何使用 Anki 进行基本的问答,并专注于在该框架下探索新的模式。这将比花大量时间摆弄功能对你更有帮助。之后,如果你养成了高质量使用 Anki 的习惯,可以再尝试更高级的功能。

The challenges of using Anki to store facts about friends and family: I've experimented with using Anki to store (non-sensitive!) questions about friends and family. It works well for things like “Is [my friend] a vegan?” But my use has run somewhat aground on thornier questions. For instance, suppose I talk with a new friend about their kids, but have never met those kids. I could put in questions like “What is the name of [my friend's] eldest child?” Or, if we'd chatted about music, I might put in: “What is a musician [my friend] likes?”
使用 Anki 存储关于朋友和家庭信息的挑战:我曾尝试用 Anki 来记录(非敏感的!)关于朋友和家庭的问题。对于像“[我的朋友]是素食主义者吗?”这样的问题,它效果不错。但在处理更复杂的问题时,我遇到了一些困难。比如,假设我和一个新朋友聊到他们的孩子,但我从未见过这些孩子。我可以输入诸如“[我的朋友]的长子叫什么名字?”之类的问题。或者,如果我们聊过音乐,我可能会输入:“[我的朋友]喜欢哪位音乐家?”

This kind of experiment is well intentioned. But posing such questions often leaves me feeling uncomfortable. It seems too much like faking interest in my friends. There's a pretty strong social norm that if you remember your friends' taste in music or their kids' names, it's because you're interested in that friend. Using a memory aid feels somehow ungenuine, at least to me.
这种实验的初衷是好的。但提出这样的问题常常让我感到不适。这似乎太像是在假装对朋友感兴趣了。社会上有一种很强的规范,如果你记得朋友的音乐品味或他们孩子的名字,那是因为你对那个朋友真正感兴趣。使用记忆辅助工具感觉有些不真诚,至少对我来说是这样。

I've talked with several friends about this. Most have told me the same thing: they appreciate me going to so much trouble in the first place, and find it charming that I'd worry so much about whether it was ungenuine. So perhaps it's a mistake to worry. Nonetheless, I still have trouble with it. I have adopted Anki for less personal stuff – things like people's food preferences. And maybe over time I'll use it for storing more personal facts. But for now I'm taking it slow.
我已经和几位朋友讨论过这件事。大多数人都告诉我同样的话:他们很感激我一开始就费了这么多心思,并且觉得我如此担心这是否真诚很可爱。所以也许担心是多余的。尽管如此,我仍然对此感到困扰。我已经将 Anki 用于一些不太个人化的事情,比如人们的饮食偏好。也许随着时间的推移,我会用它来存储更多个人化的事实。但现在我还在慢慢适应。

Procedural versus declarative memory: There's a big difference between remembering a fact and mastering a process. For instance, while you might remember a Unix command when cued by an Anki question, that doesn't mean you'll recognize an opportunity to use the command in the context of the command line, and be comfortable typing it out. And it's still another thing to find novel, creative ways of combining the commands you know, in order to solve challenging problems.
程序性记忆与陈述性记忆:记住一个事实和掌握一个过程之间有很大的区别。比如,你可能在 Anki 问题的提示下记住了一个 Unix 命令,但这并不代表你会在命令行环境中识别出使用该命令的机会,并且能够熟练地输入它。更进一步,找到新颖、创造性的方法来组合你所知道的命令,以解决复杂的问题,则是另一回事。

Put another way: to really internalize a process, it's not enough just to review Anki cards. You need to carry out the process, in context. And you need to solve real problems with it.
换句话说,要真正掌握一个过程,仅仅复习 Anki 卡片是不够的。你需要在具体情境中实践这个过程,并用它来解决实际问题。

With that said, I've found the transfer process relatively easy. In the case of the command line, I use it often enough that I have plenty of opportunities to make real use of my Ankified knowledge of the command line. Over time, that declarative knowledge is becoming procedural knowledge I routinely use in context. That said, it'd be good to better understand when the transfer works and when it doesn't. Even better would be a memory system that integrates into my actual working environment. For instance, it could query me on Unix commands, while placing me at an actual command line. Or perhaps it would ask me to solve higher-level problems, while at the command line.
尽管如此,我发现迁移过程相对简单。就命令行而言,我经常使用它,因此有很多机会真正应用我对命令行的 Ankified 知识。随着时间的推移,这些陈述性知识逐渐转化为我在实际环境中经常使用的程序性知识。不过,更好地理解迁移何时有效、何时无效会更有帮助。更理想的是一个能够集成到我实际工作环境中的记忆系统。例如,它可以在我实际使用命令行时测试我对 Unix 命令的掌握情况。或者,它可能会要求我在命令行中解决更高级别的问题。

I've tried one experiment in this vein: miming the action of typing commands while I review my Anki cards. But my subjective impression was that it doesn't work so well, and it was also quite annoying to do. So I stopped.
我尝试了一个类似的实验:在复习 Anki 卡片时模拟输入命令的动作。但我觉得效果不太好,而且做起来也很烦人,所以我就停止了。

Getting past “names don't matter”: I'm a theoretical physicist by training. There is a famous story in physics, told by Richard Feynman, dismissing the value of knowing the names of things. As a child, Feynman was out playing in a field with a know-it-all kid. Here's what happened, in Feynman's telling*
超越“名字不重要”:我是一名受过训练的理论物理学家。物理学中有一个著名的故事,由理查德·费曼讲述,他认为知道事物的名称并不重要。费曼小时候曾和一个自以为无所不知的孩子在田野里玩耍。以下是费曼讲述的故事*
* Richard P. Feynman, “What Do You Care What Other People Think? Further Adventures of a Curious Character” (1989).
* 理查德·P·费曼,《你管别人怎么想?一个好奇角色的进一步冒险》(1989 年)。
:

One kid says to me, “See that bird? What kind of bird is that?”
一个孩子问我:“看到那只鸟了吗?那是什么鸟?”


I said, “I haven't the slightest idea what kind of a bird it is.”
我说:“我完全不知道这是什么鸟。”


He says, “It'a brown-throated thrush. Your father doesn't teach you anything!”
他说:“这是一只褐喉鸫。你父亲什么都没教你!”


But it was the opposite. He [Feynman's father] had already taught me: “See that bird?” he says. “It's a Spencer's warbler.” (I knew he didn't know the real name.) “Well, in Italian, it's a Chutto Lapittida. In Portuguese, it's a Bom da Peida… You can know the name of that bird in all the languages of the world, but when you're finished, you'll know absolutely nothing whatever about the bird! You'll only know about humans in different places, and what they call the bird. So let's look at the bird and see what it's doing — that's what counts.” (I learned very early the difference between knowing the name of something and knowing something.)
但事实恰恰相反。他[费曼的父亲]已经教过我:“看到那只鸟了吗?”他说。“那是一只斯宾塞莺。”(我知道他不知道真正的名字。)“好吧,在意大利语中,它叫 Chutto Lapittida。在葡萄牙语中,它叫 Bom da Peida……你可以知道那只鸟在世界上所有语言中的名字,但当你完成后,你对那只鸟还是一无所知!你只会知道不同地方的人,以及他们怎么称呼那只鸟。所以让我们看看那只鸟在做什么——这才是最重要的。”(我很早就明白了知道某物的名字和真正了解某物之间的区别。)

Feynman (or his father) goes on to a thoughtful discussion of real knowledge: observing behavior, understanding the reasons for it, and so on.
费曼(或他的父亲)进一步深入探讨了真正的知识:观察行为,理解其背后的原因,等等。

It's a good story. But it goes too far: names do matter. Maybe not as much as the know-it-all kid thought, and they're not usually a deep kind of knowledge. But they're the foundation that allows you to build up a network of knowledge.
这是一个不错的故事,但它有些过头了:名字确实很重要。虽然可能没有那个自以为是的孩子想的那么重要,而且它们通常也不是深层次的知识。但它们是构建知识网络的基础。

This trope that names don't matter was repeatedly drilled into me during my scientific training. When I began using Anki, at first I felt somewhat silly putting questions about names for things into the system. But now I do it enthusiastically, knowing that it's an early step along the way to understanding.
这种认为名字不重要的观念在我的科学训练中被反复强调。刚开始使用 Anki 时,我觉得把关于事物名称的问题输入系统有点傻。但现在我热情地这样做,因为我知道这是理解过程中的第一步。

Anki is useful for names of all kinds of things, but I find it particularly helpful for non-verbal things. For instance, I put in questions about artworks, like: “What does the artist Emily Hare's painting Howl look like?” Answer:
Anki 对各种事物的名称都很有用,但我发现它对非语言类的内容特别有帮助。例如,我会输入一些关于艺术品的问题,比如:“艺术家 Emily Hare 的画作《Howl》是什么样子的?” 答案:

I put that question in for two reasons. The main reason is that I like to remember the experience of the painting from time to time. And the other is to put a name to the painting*
我提出这个问题有两个原因。主要原因是我想时不时地回忆这幅画的体验,另一个原因是为这幅画命名。
* Actually, a better question for that is to be shown the painting and asked what its name is.
实际上,更好的做法是展示这幅画,然后问它的名字是什么。
. If I wanted to think more analytically about the painting – say, about the clever use of color gradients – I could add more detailed questions. But I'm pretty happy just committing the experience of the image to memory.
如果我想更深入地分析这幅画——比如,关于颜色渐变的巧妙运用——我可以提出更详细的问题。但我很满足于将这幅画的体验铭记于心。

What do you do when you get behind? Anki becomes challenging when you get behind with cards. If you skip a day or two – or fifty – the cards begin to back up. It's intimidating to come back to find you have 500 cards to review in a day. Even worse, if you fall out of the Anki habit, you can get a very long way behind. I largely stopped using Anki for a 7-month period, and came back to thousands of backlogged cards.
当你落后时该怎么办?当你落后于卡片复习时,Anki 会变得很有挑战性。如果你跳过一两天,甚至五十天,卡片就会开始积压。回来发现一天要复习 500 张卡片,这让人感到压力山大。更糟糕的是,如果你中断了使用 Anki 的习惯,可能会落后很多。我曾经有 7 个月几乎没使用 Anki,回来时发现积压了数千张卡片。

Fortunately, it wasn't that hard to catch up. I set myself gradually increasing quotas (100, 150, 200, 250, and eventually 300) of cards per day, and worked through those quotas each day for several weeks until I'd caught up.
幸运的是,赶上进度并不太难。我给自己设定了逐渐增加的每日卡片目标(100、150、200、250,最终达到 300 张),并在几周内每天坚持完成这些目标,直到我赶上了进度。

While this wasn't too difficult, it was somewhat demoralizing and discouraging. It'd be better if Anki had a “catch up” feature that would spread the excess cards over the next few weeks in your schedule. But it doesn't. In any case, this is a gotcha, but it's not too difficult to address.
虽然这并不算太难,但确实有些让人感到沮丧和泄气。如果 Anki 能有一个“追赶”功能,将多余的卡片分散到接下来几周的学习计划中,那就更好了。可惜它没有。不过,这个问题虽然需要注意,但解决起来并不困难。

Using Anki for APIs, books, videos, seminars, conversations, the web, events, and places: Nearly everything I said earlier about Ankifying papers applies also to other resources. Here's a few tips. I've separated out the discussion for APIs into an appendix, which you can read below, if interested.
使用 Anki 来处理 API、书籍、视频、研讨会、对话、网页、事件和地点:我之前关于 Ankifying 论文的大部分内容同样适用于其他资源。这里有一些建议。关于 API 的讨论,我单独放在了一个附录中,如果你感兴趣,可以在下面阅读。

For seminars and conversations with colleagues I find it surprisingly helpful to set Anki quotas. For instance, for seminars I try to find at least three high-quality questions to Ankify. For extended conversations, at least one high-quality question to Ankify. I've found that setting quotas helps me pay more attention, especially during seminars. (I find it much easier a priori to pay attention in one-on-one conversation.)
在参加研讨会和与同事交流时,我发现设定 Anki 配额非常有用。比如,在研讨会上,我会尽量找出至少三个高质量的问题来制作 Anki 卡片。而在长时间的对话中,至少会找到一个高质量的问题来制作 Anki 卡片。我发现设定配额能让我更加专注,尤其是在研讨会上。(相比之下,在一对一的对话中,我更容易集中注意力。)

I'm more haphazard about videos, events, and places. It'd be good to, say, systematically Ankify 3-5 questions after going on an outing or to a new restaurant, to help me remember the experience. I do this sometimes. But I haven't been that systematic.
我对视频、活动和地点比较随意。比如,在出去游玩或去新餐厅后,系统地记录 3-5 个问题,以帮助我记住这次经历。我有时会这样做,但还不够系统化。

I tend to Ankify in real time as I read papers and books. For seminars, conversations, and so on I prefer to immerse myself in the experience. Instead of getting out Anki, I will quickly make a mental (or paper) note of what I want to Ankify. I then enter it into Anki later. This requires some discipline; it's one reason I prefer to set a small quota, so that I merely have to enter a few questions later, rather than dozens.
我习惯在阅读论文和书籍时实时进行 Ankify。而对于研讨会、对话等活动,我更喜欢全身心投入其中。我不会立即拿出 Anki,而是会快速记下想要 Ankify 的内容(在脑海中或纸上),稍后再将其输入 Anki。这需要一定的自律性;这也是我倾向于设定一个小配额的原因之一,这样我稍后只需要输入几个问题,而不是几十个。

One caution is with books: reading an entire book is a big commitment, and adding Anki questions regularly can slow you down a lot. It's worth keeping this in mind when deciding how much to Ankify. Sometimes a book is so dense with great material that it's worth taking the time to add lots of questions. But unmindfully Ankifying everything in sight is a bad habit, one I've occasionally fallen into.
关于书籍的一个注意事项是:阅读整本书是一个很大的投入,定期添加 Anki 问题可能会大大拖慢你的进度。在决定要 Ankify 多少内容时,这一点值得牢记。有时一本书的内容非常丰富,值得花时间添加大量问题。但盲目地 Ankify 所有看到的内容是一个坏习惯,我有时也会陷入这种习惯。

What you Ankify is not a trivial choice: Ankify things that serve your long-term goals. In some measure we become what we remember, so we must be careful what we remember*
你选择 Ankify 的内容并非随意决定:Ankify 那些有助于实现你长期目标的内容。在某种程度上,我们会成为我们所记住的东西,因此我们必须谨慎选择我们记住的内容。
* With apologies to Kurt Vonnegut, who wrote: “We are what we pretend to be, so we must be careful about what we pretend to be.”.
向库尔特·冯内古特致歉,他曾写道:“我们就是我们假装成为的样子,因此我们必须谨慎选择我们想要假装成为什么。”
. This is always true, but Anki makes it especially true.
这总是正确的,但 Anki 让它更加明显。

With all that said, one fun pattern is to go back to my old, pre-Anki notes on books, and to Ankify them. This can often be done quickly, and gives me a greater return on the time I've invested in now mostly-forgotten books*
综上所述,一个有趣的做法是回顾我之前未使用 Anki 时的书籍笔记,并将它们转化为 Anki 卡片。这通常可以快速完成,并让我在那些几乎已经遗忘的书籍上获得更大的时间回报*
* Friends sometimes complain that many books are over-padded essays. Perhaps a benefit of such padding is that it enforces an Anki-like spaced repetition, since readers take weeks to read the book. This may be an inefficient way to memorize the main points, but is better than having no memory of the book at all.
朋友们有时会抱怨许多书内容过于冗长。或许这种冗长的一个好处是它强制了类似 Anki 的间隔重复,因为读者需要几周时间才能读完这本书。虽然这种方式记忆要点可能效率不高,但总比完全记不住书的内容要好。
.

Something I haven't yet figured out is how to integrate Anki with note taking for my creative projects. I can't replace note taking with Anki – it's too slow, and for many things a poor use of my long-term memory. On the other hand, there are many benefits to using Anki for important items – fluid access to memory is at the foundation of so much creative thought.
我还没有弄清楚的是如何将 Anki 与我的创意项目的笔记结合起来。我不能用 Anki 完全替代笔记——它太慢了,而且对于很多事情来说,这对我的长期记忆来说并不合适。不过,使用 Anki 来记忆重要项目有很多好处——流畅的记忆访问是许多创造性思维的基础。
Speed of associative thought is, I believe, important in creative work. – John Littlewood
我认为,联想思维的速度在创造性工作中非常重要。——约翰·利特尔伍德
In practice, I find myself instinctively and unsystematically doing some things as notes, others as Anki questions, and still other things as both. Overall, it works okay, but my sense is that it could be a lot better if I applied more systematic thought and experimentation. Part of the problem is that I don't have a very good system for note taking, period! If I worked more on that, I suspect the whole thing would get a lot better. Still, it works okay.
在实践中,我发现自己会本能地、无系统地将一些内容记作笔记,另一些则作为 Anki 问题,还有一些两者兼顾。总的来说,效果还算可以,但我觉得如果能进行更系统的思考和实验,效果会好得多。部分问题在于我缺乏一个完善的笔记系统。如果我能在这方面多下功夫,我相信整体效果会大幅提升。不过,目前的效果还算可以。

Avoid the yes/no pattern: One bad habit I sometimes slide into is having lots of Anki questions with yes/no answers. For instance, here's a not-very-good question I added when learning about graphical models in machine learning:
避免使用是/否模式:我有时会养成一个坏习惯,就是设置很多带有是/否答案的 Anki 问题。比如,这是我在学习机器学习中的图形模型时添加的一个不太理想的问题:

Is computing the partition function intractable for most graphical models?
对于大多数图形模型来说,计算分区函数是否是不可行的?

The answer is “yes”. That's fine, as far as it goes. But it'd help my understanding to elaborate the ideas in the question. Can I add a question about for which graphical models the partition function is tractable? Can I give an example of a graphical model for which the partition function is intractable? What does it mean for computing the partition function to be intractable anyway? Yes/no questions should, at the least, be considered as good candidates for question refactoring*
答案是“是的”。就目前而言,这样很好。但为了帮助我更好地理解,我需要详细阐述问题中的想法。我可以添加一个关于哪些图形模型的配分函数是可计算的问题吗?我可以给出一个配分函数不可计算的图形模型的例子吗?计算配分函数不可计算到底是什么意思?至少,是/否问题应该被视为问题重构的良好候选者。
* By analogy with code smells, we can speak of “question smells”, as suggesting a possible need for refactoring. A yes/no construction is an example of a question smell.
类似于代码中的“代码异味”,我们可以提出“问题异味”的概念,这暗示可能需要进行重构。例如,是/否结构就是一种问题异味。

Aren't external memory aids enough? One common criticism of systems such as Anki is that external memory devices – systems such as Google, wikis, and notebooks – really ought to be enough. Used well, such systems are, of course, extremely useful as a complement to Anki. But for creative work and for problem-solving there is something special about having an internalized understanding. It enables speed in associative thought, an ability to rapidly try out many combinations of ideas, and to intuit patterns, in ways not possible if you need to keep laboriously looking up information.
外部记忆辅助工具还不够吗?对 Anki 等系统的一个常见批评是,外部记忆设备——如谷歌、维基和笔记本等系统——应该已经足够了。当然,如果使用得当,这些系统作为 Anki 的补充非常有用。但对于创造性工作和问题解决,内化的理解有其独特之处。它能够加快联想思维的速度,快速尝试多种想法的组合,并直觉地感知模式,而这些是如果你需要费力地查找信息所无法实现的。

Fluency matters in thinking. Alan Kay and Adele Goldberg have proposed*
思维的流畅性很重要。艾伦·凯和阿黛尔·戈德堡提出了*
* Alan Kay and Adele Goldberg, Personal Dynamic Media (1977).
* 艾伦·凯和阿黛尔·戈德堡,《个人动态媒体》(1977 年)。
the thought experiment of a flute in which there is “a one-second delay between blowing a note and hearing it!” As they observe, this is “absurd”. In a similar way, certain types of thoughts are much easier to have when all the relevant kinds of understanding are held in mind. And for that, Anki is invaluable.
笛子的思想实验中,“吹奏一个音符和听到它之间有一秒的延迟!”正如他们所观察到的,这确实“荒谬”。同样地,当所有相关的理解都牢记在心时,某些类型的想法更容易产生。而在这方面,Anki 是无价之宝。

If personal memory systems are so great, why aren't they more widely used? This question is analogous to the old joke about two economists who are walking along when one of them spots a $20 bill. They say: “Look! There's $20 on the ground!” The other replies: “Impossible! If it were really there, someone would have picked it up already.”
如果个人记忆系统如此优秀,为什么它们没有被更广泛地使用呢?这个问题类似于一个关于两位经济学家的老笑话:他们正在走路时,其中一位发现了一张 20 美元的钞票。他说:“看!地上有 20 美元!”另一位却回答:“不可能!如果它真的在那里,早就有人捡起来了。”

The analogy is only partial. In fact, Anki seems like a continual supply of $20 bills lying on the ground. And it's reasonable to ask why it's not more widely used. One of the most cited papers in the relevant research literature*
这个类比并不完全准确。实际上,Anki 就像地上不断出现的 20 美元钞票。而且,询问为什么它没有被更广泛地使用是合理的。相关研究文献中引用最多的论文之一*
* Frank N. Dempster, The Spacing Effect: A Case Study in the Failure to Apply the Results of Psychological Research (1988).
* Frank N. Dempster, 间隔效应:心理学研究结果应用失败的案例研究 (1988).
is a discussion of why these ideas aren't more widely used in education. Although written in 1988, many of the observations in the paper remain true today.
讨论了为什么这些想法在教育中没有得到更广泛的应用。尽管该论文写于 1988 年,但其中的许多观点至今仍然适用。

My own personal suspicion is that there are three main factors:
我个人认为主要有三个因素:

It is interesting to consider developing systems which may overcome some or all of these issues.
开发能够解决部分或全部这些问题的系统是一个值得思考的方向。

Part II: Personal Memory Systems More Broadly
第二部分:广义的个人记忆系统

In the first part of this essay we looked at a particular personal memory system, Anki, through the lens of my personal experience. In the second, briefer, part of this essay we'll consider two broader questions about personal memory systems: how important is memory as a cognitive skill; and what is the role of cognitive science in building personal memory systems?
在本文的第一部分中,我们通过我的个人经历探讨了一个特定的个人记忆系统——Anki。在第二部分,我们将简要讨论关于个人记忆系统的两个更广泛的问题:记忆作为一种认知技能的重要性;以及认知科学在构建个人记忆系统中的作用。

How important is long-term memory, anyway?
长期记忆究竟有多重要?

Long-term memory is sometimes disparaged. It's common for people to denigrate “rote memory”, especially in the classroom. I've heard from many people that they dropped some class – organic chemistry is common – because it was “just a bunch of facts, and I wanted something involving more understanding”.
长期记忆有时会被轻视。人们常常贬低“机械记忆”,尤其是在课堂上。我听很多人说他们放弃了某些课程——比如有机化学——因为它“只是一堆事实,而我想要一些需要更多理解的内容”。

I won't defend bad classroom teaching, or the way organic chemistry is often taught. But it's a mistake to underestimate the importance of memory. I used to believe such tropes about the low importance of memory. But I now believe memory is at the foundation of our cognition.
我不会为糟糕的课堂教学或有机化学的常见教学方式辩护。但低估记忆的重要性是错误的。我曾经相信那些关于记忆不重要的陈词滥调。但现在我认为记忆是我们认知的基础。

There are two main reasons for this change, one a personal experience, the other based on evidence from cognitive science.
这种变化有两个主要原因,一个是个人经历,另一个是基于认知科学的证据。

Let me begin with the personal experience.
让我从个人经历说起。

Over the years, I've often helped people learn technical subjects such as quantum mechanics. Over time you come to see patterns in how people get stuck. One common pattern is that people think they're getting stuck on esoteric, complex issues. But when you dig down it turns out they're having a hard time with basic notation and terminology. It's difficult to understand quantum mechanics when you're unclear about every third word or piece of notation! Every sentence is a struggle.
多年来,我经常帮助人们学习量子力学等技术学科。随着时间的推移,你会发现人们陷入困境的模式。一个常见的现象是,人们往往认为自己被深奥、复杂的问题困住了。但当你深入分析时,会发现他们其实是在基本的符号和术语上遇到了困难。如果每三个词或符号都不清楚,理解量子力学就会变得非常困难!每一句话都像是一场挣扎。

It's like they're trying to compose a beautiful sonnet in French, but only know 200 words of French. They're frustrated, and think the trouble is the difficulty of finding a good theme, striking sentiments and images, and so on. But really the issue is that they have only 200 words with which to compose.
这就像他们试图用法语写一首优美的十四行诗,却只掌握了 200 个法语单词。他们感到沮丧,认为问题在于难以找到一个好的主题、打动人心的情感和意象等。但实际上,真正的问题在于他们只有 200 个单词可供创作。

My somewhat pious belief was that if people focused more on remembering the basics, and worried less about the “difficult” high-level issues, they'd find the high-level issues took care of themselves.
我有些虔诚地认为,如果人们更多地关注基础知识,而不是过分担心那些“困难”的高层次问题,他们会发现高层次问题自然会迎刃而解。

But while I held this as a strong conviction about other people, I never realized it also applied to me. And I had no idea at all how strongly it applied to me. Using Anki to read papers in new fields disabused me of this illusion. I found it almost unsettling how much easier Anki made learning such subjects. I now believe memory of the basics is often the single largest barrier to understanding. If you have a system such as Anki for overcoming that barrier, then you will find it much, much easier to read into new fields.
然而,尽管我对他人持有这种坚定的信念,却从未意识到它同样适用于我自己。我完全没意识到它对我影响如此之大。通过使用 Anki 阅读新领域的论文,我摆脱了这一错觉。我发现 Anki 让学习这些学科变得异常轻松,甚至让我感到有些不安。如今,我相信对基础知识的记忆往往是理解的最大障碍。如果你有一个像 Anki 这样的系统来克服这一障碍,那么你会发现进入新领域会变得容易得多。

This experience of how much easier Anki made learning a new technical field greatly increased my visceral appreciation for the importance of memory.
这次体验让我深刻感受到 Anki 如何使学习新技术领域变得更加轻松,这让我更加直观地认识到记忆的重要性。

There are also many results from cognitive science on the key role memory plays in cognition.
认知科学的研究也表明,记忆在认知过程中起着关键作用。

One striking line of work was done (separately) by the researchers Adriaan de Groot and Herbert Simon, studying how people acquire expertise, focusing particularly on chess*
一项引人注目的研究是由 Adriaan de Groot 和 Herbert Simon 分别进行的,他们研究了人们如何获得专业知识,尤其聚焦于国际象棋*
* See, for instance, Herbert A. Simon, How Big is a Chunk?, Science (1974), and Adriaan de Groot, Thought and Choice in Chess, Amsterdam University Press (2008, reprinted from 1965).
参见,例如,赫伯特·A·西蒙的《一个块有多大?》(《科学》杂志,1974 年),以及阿德里安·德·格鲁特的《国际象棋中的思维与选择》(阿姆斯特丹大学出版社,2008 年,1965 年重印版)。
. They found that world-class chess experts saw the board differently to beginners. A beginner would see “a pawn here, a rook there”, and so on, a series of individual pieces. Masters, by contrast, saw much more elaborate “chunks”: combinations of pieces that they recognized as a unit, and were able to reason about at a higher level of abstraction than the individual pieces.
他们发现,世界级的国际象棋专家与初学者在观察棋盘时有所不同。初学者会看到“这里有一个兵,那里有一个车”等单独的棋子。而大师们则能看到更为复杂的“组合”:他们将棋子的组合视为一个整体,并能够在比单个棋子更高的抽象层次上进行推理。

Simon estimated chess masters learn between 25,000 and 100,000 of these chunks during their training, and that learning the chunks was a key element in becoming a first-rate chess player. Such players really see chess positions very differently from beginners.
西蒙估计,国际象棋大师在训练过程中会学习 25,000 到 100,000 个这样的组块,而掌握这些组块是成为一流棋手的关键。这些棋手看待棋局的方式与初学者截然不同。

Why does learning to recognize and reason about such chunks help so much in developing expertise? Here's a speculative, informal model – as far as I know, it hasn't been validated by cognitive scientists, so don't take it too seriously. I'll describe it in the context of mathematics, instead of chess, since mathematics is an area where I have experience talking with people at all ranges of ability, from beginners to accomplished professional mathematicians.
为什么学习识别和推理这些知识块在培养专业知识方面如此重要?这里有一个推测性的、非正式模型——据我所知,它尚未得到认知科学家的验证,所以不必过于认真。我将在数学的背景下进行描述,而不是国际象棋,因为数学是我有经验与各种能力水平的人交流的领域,从初学者到有成就的专业数学家。

Many people's model of accomplished mathematicians is that they are astoundingly bright, with very high IQs, and the ability to deal with very complex ideas in their mind. A common perception is that their smartness gives them the ability to deal with very complex ideas. Basically, they have a higher horsepower engine.
许多人认为成功的数学家非常聪明,拥有极高的智商,并且能够在脑海中处理极其复杂的概念。普遍的看法是,他们的聪明才智使他们能够应对非常复杂的问题。简单来说,他们拥有更强大的“引擎”。

It's true that top mathematicians are usually very bright. But here's a different explanation of what's going on. It's that, per Simon, many top mathematicians have, through hard work, internalized many more complex mathematical chunks than ordinary humans. And what this means is that mathematical situations which seem very complex to the rest of us seem very simple to them. So it's not that they have a higher horsepower mind, in the sense of being able to deal with more complexity. Rather, their prior learning has given them better chunking abilities, and so situations most people would see as complex they see as simple, and they find it much easier to reason about.
确实,顶级数学家通常非常聪明。但这里有一个不同的解释。根据西蒙的说法,许多顶级数学家通过努力学习,内化了比普通人更多的复杂数学模块。这意味着对我们来说非常复杂的数学问题,在他们看来却非常简单。这并不是因为他们的大脑有更高的处理能力,能够应对更多的复杂性。相反,他们之前的学习使他们具备了更好的分块能力,因此大多数人认为复杂的情况,他们却觉得简单,并且更容易进行推理。

Now, the concept of chunks used by Simon in his study of chess players actually came from a famous 1956 paper by George Miller, “The Magical Number Seven, Plus or Minus Two”*
如今,西蒙在研究棋手时所使用的“块”概念,实际上源自乔治·米勒 1956 年发表的一篇著名论文《神奇的数字七,加减二》*
* George A. Miller, The Magical Number Seven, Plus or Minus Two: Some Limits on our Capacity for Processing Information (1956).
* 乔治·A·米勒,《神奇的数字七,加减二:我们处理信息能力的一些限制》(1956 年)。
. Miller argued that the capacity of working memory is roughly seven chunks. In fact, it turns out that there is variation in that number from person to person, and a substantial correlation between the capacity of an individual's working memory and their general intellectual ability (IQ)*
米勒提出,工作记忆的容量大约为七个组块。实际上,这个数字因人而异,并且个体的工作记忆容量与其整体智力水平(IQ)之间存在显著的相关性。
* A review of the correlation may be found in Phillip L. Ackerman, Margaret E. Beier, and Mary O. Boyle, Working Memory and Intelligence: The Same or Different Constructs? Psychological Bulletin (2006).
关于相关性的综述可参考 Phillip L. Ackerman、Margaret E. Beier 和 Mary O. Boyle 的论文《工作记忆与智力:相同还是不同的建构?》,该论文发表于《心理学公报》(2006 年)。
. Typically, the better your working memory, the higher your IQ, and vice versa.
一般来说,工作记忆越好,智商就越高,反之亦然。

Exactly what Miller meant by chunks he left somewhat vague, writing:
米勒对“块”的具体含义留下了一些模糊的描述,他写道:

The contrast of the terms bit and chunk also serves to highlight the fact that we are not very definite about what constitutes a chunk of information. For example, the memory span of five words that Hayes obtained… might just as appropriately have been called a memory span of 15 phonemes, since each word had about three phonemes in it. Intuitively, it is clear that the subjects were recalling five words, not 15 phonemes, but the logical distinction is not immediately apparent. We are dealing here with a process of organizing or grouping the input into familiar units or chunks, and a great deal of learning has gone into the formation of these familiar units.
术语“bit”和“chunk”的对比也突显了我们对信息块的定义并不十分明确。例如,Hayes 获得的五个单词的记忆跨度……同样可以被称为 15 个音素的记忆跨度,因为每个单词大约包含三个音素。直观上,受试者显然是在回忆五个单词,而不是 15 个音素,但逻辑上的区别并不明显。我们在这里讨论的是将输入组织或分组为熟悉的单位或块的过程,而这些熟悉单位的形成已经经历了许多学习。

Put another way, in Miller's account the chunk was effectively the basic unit of working memory. And so Simon and his collaborators were studying the basic units used in the working memory of chess players. If those chunks were more complex, then that meant a player's working memory had a higher effective capacity. In particular, someone with a lower IQ but able to call on more complex chunks would be able to reason about more complex situations than someone with a higher IQ but less complex internalized chunks.
换句话说,根据米勒的理论,块实际上是工作记忆的基本单位。因此,西蒙及其合作者研究的是国际象棋棋手工作记忆中使用的基本单位。如果这些块更为复杂,那就意味着棋手的工作记忆具有更高的有效容量。具体来说,一个智商较低但能够调用更复杂块的人,将能够比智商较高但内部化块较不复杂的人推理出更复杂的情况。

In other words, having more chunks memorized in some domain is somewhat like an effective boost to a person's IQ in that domain.
换句话说,在某个领域中记住更多的信息块,就像是对一个人在该领域智商的提升。

Okay, that's a speculative informal model. Regardless of whether it's correct, it does seem that internalizing high-level chunks is a crucial part of acquiring expertise. However, that doesn't then necessarily imply that the use of systems such as Anki will speed up acquisition of such chunks. It's merely an argument that long-term memory plays a crucial role in the acquisition of some types of expertise. Still, it seems plausible that regular use of systems such as Anki may speed up the acquisition of the high-level chunks used by experts*
好吧,这是一个推测性的非正式模型。无论它是否正确,内化高层次的组块似乎是获得专业知识的关键部分。然而,这并不一定意味着使用像 Anki 这样的系统会加快这些组块的获取。这只是一个论点,即长期记忆在获取某些类型的专业知识中起着关键作用。尽管如此,定期使用像 Anki 这样的系统可能会加快专家使用的高层次组块的获取速度。
* To determine this it would help to understand exactly how these chunks arise. That still seems to be poorly understood. I wouldn't be surprised if it involved considerable analysis and problem-solving, in addition to long-term memory.
要确定这一点,了解这些块是如何产生的将有所帮助。目前对此似乎仍不太清楚。如果它涉及大量的分析和问题解决,以及长期记忆,我也不会感到惊讶。
. And that those chunks are then at the heart of effective cognition, including our ability to understand, to problem solve, and to create.
这些信息块是有效认知的核心,涵盖了我们的理解能力、解决问题的能力以及创造力。

Distributed practice  分散练习

Why does Anki work? In this section we briefly look at one of the key underlying ideas from cognitive science, known as distributed practice.
为什么 Anki 有效?在本节中,我们将简要介绍认知科学中的一个关键概念——分布式练习。

Suppose you're introduced to someone at a party, and they tell you their name. If you're paying attention, and their name isn't too unusual, you'll almost certainly remember their name 20 seconds later. But you're more likely to have forgotten their name in an hour, and more likely still to have forgotten their name in a month.
假设你在聚会上被介绍给某人,他们告诉你他们的名字。如果你当时认真听了,而且他们的名字不算太生僻,你几乎肯定能在 20 秒后记住。但一小时后,你更可能会忘记这个名字,而一个月后,忘记的可能性就更大了。

That is, memories decay. This isn't news! But the great German psychologist Hermann Ebbinghaus had the good idea of studying memory decay systematically and quantitatively*
也就是说,记忆会逐渐衰退。这并不是什么新鲜事!但伟大的德国心理学家赫尔曼·艾宾浩斯提出了一个好主意,即系统地、定量地研究记忆衰退。
* Hermann Ebbinghaus, Memory: A Contribution to Experimental Psychology (1885). A recent replication of Ebbinghaus's results may be found in: Jaap M. J. Murre and Joeri Dros, Replication and Analysis of Ebbinghaus' Forgetting Curve (2015).
* 赫尔曼·艾宾浩斯,《记忆:实验心理学的贡献》(1885 年)。艾宾浩斯的研究结果在近期得到了复制,相关文献为:Jaap M. J. Murre 和 Joeri Dros,《艾宾浩斯遗忘曲线的复制与分析》(2015 年)。
. In particular, he was interested in how quickly memories decay, and what causes the decay. To study this, Ebbinghaus memorized strings of nonsense syllables – things like “fim“ and “pes” – and later tested himself, recording how well he retained those syllables after different time intervals.
特别是,他对记忆衰退的速度及其原因非常感兴趣。为了研究这一点,艾宾浩斯记住了一些无意义的音节串,例如“fim”和“pes”,并在不同时间间隔后测试自己,记录他保留这些音节的程度。

Ebbinghaus found that the probability of correctly recalling an item declined (roughly) exponentially with time. Today, this is called the Ebbinghaus forgetting curve:
艾宾浩斯发现,正确回忆一个项目的概率随时间(大致)呈指数下降。如今,这一现象被称为艾宾浩斯遗忘曲线:

What determines the steepness of the curve, i.e., how quickly memories decay? In fact, the steepness depends on many things. For instance, it may be steeper for more complex or less familiar concepts. You may find it easier to remember a name that sounds similar to names you've heard before: say, Richard Hamilton, rather than Suzuki Harunobu. So they'd have a shallower curve. Similarly, you may find it easier to remember something visual than verbal. Or something verbal rather than a motor skill. And if you use more elaborate ways of remembering – mnemonics, for instance, or just taking care to connect an idea to other things you already know – you may be able to flatten the curve out*
什么决定了曲线的陡峭程度,即记忆衰退的速度?实际上,曲线的陡峭程度取决于许多因素。例如,对于更复杂或不太熟悉的概念,曲线可能会更陡峭。你可能会发现记住一个与你以前听过的名字相似的名字更容易:比如,理查德·汉密尔顿,而不是铃木春信。因此,它们的曲线会更平缓。同样,你可能会发现记住视觉信息比语言信息更容易,或者记住语言信息比运动技能更容易。如果你使用更复杂的记忆方法——例如,记忆术,或者只是注意将一个想法与你已经知道的其他事物联系起来——你可能能够使曲线变得更平缓。
* Although this expansion is much studied, there is surprisingly little work building detailed predictive models of the expansion. An exception is: Burr Settles and Brendan Meeder, A Trainable Spaced Repetition Model for Language Learning (2016). This paper builds a regression model to predict the decay rate of student memory on Duolingo, the online language learning platform. The result was not only better prediction of decay rates, but also improved Duolingo student engagement.
尽管这种扩展已被广泛研究,但令人惊讶的是,很少有研究致力于建立详细的扩展预测模型。一个例外是 Burr Settles 和 Brendan Meeder 在 2016 年发表的《A Trainable Spaced Repetition Model for Language Learning》。该论文构建了一个回归模型,用于预测在线语言学习平台 Duolingo 上学生记忆的衰减率。研究结果不仅更好地预测了衰减率,还提高了 Duolingo 学生的参与度。
.

Suppose you're introduced to a person at a party, and then don't think about their name for 20 minutes. But then you need to introduce them to someone else, and so need to bring it to mind. Immediately after that, your probability of recall will again be very high. Ebbinghaus's research suggested that the probability will decay exponentially after the re-test, but the rate of decay will be slower than it was initially. In fact, subsequent re-tests will slow the decay still more, a gradually flattening out of the decay curve as the memory is consolidated through multiple recall events:
假设你在一个聚会上被介绍给一个人,然后在接下来的 20 分钟内没有想起他们的名字。但之后你需要把他们介绍给其他人,因此需要回想起这个名字。在那之后,你的回忆概率会再次变得非常高。艾宾浩斯的研究表明,重新测试后,回忆概率会呈指数衰减,但衰减速度会比最初慢。事实上,随后的重新测试会进一步减缓衰减速度,随着记忆通过多次回忆事件得到巩固,衰减曲线会逐渐趋于平缓。

This gradual increase in decay time underlies the design of Anki and similar memory systems. It's why Anki gradually expands the time periods between testing.
这种逐渐增加的遗忘时间是 Anki 及类似记忆系统设计的基础。因此,Anki 会逐渐延长测试之间的时间间隔。

These phenomena are part of a broader set of ideas which have been extensively studied by scientists. There are several related terms used for this set of phenomena, but we'll use the phrase “distributed practice”, meaning practice which is distributed in time, ideally in a way designed to maximally promote retention. This is in contrast to cramming, often known as massed practice, where people try to fit all their study into just one session, relying on repetition.
这些现象是科学家们广泛研究的一系列思想的一部分。有几种相关的术语用于描述这一系列现象,但我们将使用“分散练习”这个短语,指的是在时间上分散进行的练习,理想情况下是以一种旨在最大程度促进记忆的方式进行的。这与“填鸭式学习”形成对比,后者通常称为集中练习,即人们试图将所有学习内容压缩到一个会话中,依赖重复。

On the role of cognitive science in the design of systems to augment cognition
认知科学在增强认知系统设计中的作用

Since Ebbinghaus, there's been thousands of studies of different variations of distributed practice. These studies have taught us a great deal about the behavior of long-term memory. Most of all, they show emphatically that distributed practice outperforms massed practice*
自艾宾浩斯以来,已有成千上万的研究探讨了分布式练习的各种变体。这些研究让我们对长期记忆的行为有了深入的了解。最重要的是,它们明确表明,分布式练习的效果优于集中练习。
* Many experiments also try to assess participants' perception of the effectiveness of massed practice versus distributed practice. Remarkably, they often believe that massed practice is more effective, despite the fact that it is reliably outperformed by distributed practice.
许多实验还试图评估参与者对集中练习与分散练习效果的看法。有趣的是,尽管分散练习的效果更为稳定,但参与者通常认为集中练习更为有效。
. It's tempting to jump into that literature, and to use it as a guide to the design of memory systems*
很容易被吸引去阅读那些文献,并将其作为内存系统设计的参考*
* Rather than do such a review, let me point to several reviews which serve as useful entry points. Benedict Carey's book “How We Learn” (2015) is a good introduction at a popular level. Useful reviews of the distributed practice literature include: Cepeda et al, Distributed Practice in Verbal Recall Tasks: A Review and Quantitative Synthesis (2006); and: Gwern Branwen, Spaced-Repetition.
与其进行这样的回顾,不如让我推荐几篇作为入门参考的评论。Benedict Carey 的《我们如何学习》(2015 年)是一本通俗易懂的入门书籍。关于分布式练习的文献综述中,Cepeda 等人的《分布式练习在言语回忆任务中的应用:回顾与定量综合》(2006 年)以及 Gwern Branwen 的《间隔重复》都是非常有用的参考资料。
. But it's also worth thinking about the limitations of that literature as a guide to the development of systems.
但也值得思考这些文献作为系统开发指南的局限性。

While scientists have done a tremendous number of studies of distributed practice, many fundamental questions about distributed practice remain poorly understood.
尽管科学家们对分布式实践进行了大量研究,但关于分布式实践的许多基本问题仍然没有得到很好的理解。

We don't understand in detail why exponential decay of memory occurs, or when that model breaks down. We don't have good models of what determines the rate of decay, and why it varies for different types of memories. We don't understand why the decay takes longer after subsequent recalls. And we have little understanding of the best way of expanding the inter-study intervals.
我们并不完全理解记忆为何会呈指数衰减,也不清楚这种模型在什么情况下会失效。我们缺乏有效的模型来解释衰减速率的变化,以及为何不同类型的记忆衰减速度不同。我们也不明白为何在多次回忆后,记忆衰减所需的时间会更长。此外,对于如何最佳地延长学习间隔,我们的了解也非常有限。

Of course, there are many partial theories to answer these and other fundamental questions. But there's no single, quantitatively predictive, broadly accepted general theory. And so in that sense, we know little about distributed practice, and are probably decades (if not more) away from a reasonably full understanding.
当然,有许多部分理论可以解答这些及其他基本问题。但目前还没有一个单一的、可定量预测的、广泛接受的通用理论。因此,从这个角度来看,我们对分布式实践的了解还非常有限,可能还需要几十年(甚至更长时间)才能获得一个相对全面的理解。

To illustrate this point concretely, let me mention just one example: there are times when our memories don't decay, but get better over time, even when we're not aware of explicit acts of recall. Informally, you may have noticed this in your own life. The psychologist William James made the tongue-in-cheek observation, which he attributed to an unnamed German author, that*
为了具体说明这一点,让我举一个例子:有时候我们的记忆不仅不会衰退,反而会随着时间的推移变得更加清晰,即使我们没有刻意去回忆。你可能在日常生活中也注意到了这一点。心理学家威廉·詹姆斯曾幽默地提到,他将其归功于一位未具名的德国作家,说*
* William James, “The Principles of Psychology” (1890).
* 威廉·詹姆斯,《心理学原理》(1890 年)。

we learn to swim during the winter and to skate during the summer.
我们冬天学游泳,夏天学滑冰。

In fact, exactly such an effect was experimentally verified in an 1895 study of Axel Oehrn*
事实上,1895 年 Axel Oehrn*的一项研究实验证实了这种效果
* Axel Oehrn, Experimentelle Studien zur Individualpsychologie (1895).
* Axel Oehrn, 个体心理学实验研究 (1895).
. While subsequent experiments have confirmed this result, it depends sensitively on the type of material being memorized, on the exact time intervals, and many other variables. Now, in some sense this contradicts the Ebbinghaus exponential forgetting curve. In practice, a pretty good heuristic is that the Ebbinghaus curve holds approximately, but there are exceptions, usually over limited times, and for very specific types of materials.
尽管后续实验已经验证了这一结果,但它对记忆材料的类型、具体的时间间隔以及许多其他变量非常敏感。从某种意义上说,这与艾宾浩斯的指数遗忘曲线相矛盾。实际上,一个较为实用的经验法则是,艾宾浩斯曲线大致成立,但也存在例外,通常是在较短的时间内,并且针对某些特定类型的材料。

I don't mention this to undermine your belief in the Ebbinghaus model. But rather as a caution: memory is complicated, we don't understand many of the big picture questions well, and we should be careful before we put too much faith in any given model.
我提到这一点并不是为了否定你对艾宾浩斯模型的信任,而是作为一个提醒:记忆是复杂的,我们对许多关键问题的理解还不够深入,因此在过于依赖某个特定模型之前,我们应该保持谨慎。

With all that said: the basic effects underlying distributed practice and the Ebbinghaus forgetting curve are real, large, and have been confirmed by many experiments. Effects like that discovered by Oehrn are less important by comparison.
综上所述:分布式练习和艾宾浩斯遗忘曲线的基本效果是真实且显著的,并且已经通过大量实验得到验证。相比之下,像 Oehrn 发现的效果则显得不那么重要。

This places us in a curious situation: we have enough understanding of memory to conclude that a system like Anki should help a lot. But many of the choices needed in the design of such a system must be made in an ad hoc way, guided by intuition and unconfirmed hypotheses. The experiments in the scientific literature do not yet justify those design choices. The reason is that those experiments are mostly not intended to address those questions. They'll focus on specific types of information to memorize. Or they'll focus on relatively short periods of time – memorization over a day or a week, not for years. Such work helps us build a better theory of memory, but it's not necessarily answering the questions designers need to build systems.
这让我们陷入了一个有趣的情境:我们对记忆有足够的了解,可以断定像 Anki 这样的系统应该会非常有用。然而,在设计这类系统时,许多必要的选择只能凭直觉和未经证实的假设临时决定。科学文献中的实验尚未为这些设计选择提供充分的依据。原因是这些实验大多并非针对这些问题而设计。它们通常专注于特定类型的信息记忆,或者关注较短的时间范围——比如一天或一周的记忆,而不是多年。这些研究帮助我们构建更好的记忆理论,但并不一定能解答设计师在构建系统时所需的问题。

As a consequence, system designers must look elsewhere, to informal experiments and theories. Anki, for example, uses a spacing algorithm developed by Piotr Wozniak on the basis of personal experimentation*
因此,系统设计者必须转向其他途径,如非正式实验和理论。例如,Anki 采用了 Piotr Wozniak 基于个人实验开发的间隔算法。
* See: Piotr Wozniak, Repetition spacing algorithm used in SuperMemo 2002 through SuperMemo 2006. Anki uses algorithm SM-2.
* 参见:Piotr Wozniak,SuperMemo 2002 至 SuperMemo 2006 中使用的重复间隔算法。Anki 采用的是 SM-2 算法。
. Although Wozniak has published a number of papers, they are informal reports, and don't abide by the norms of the conventional cognitive science literature.
虽然沃兹尼亚克发表了不少论文,但这些论文属于非正式报告,并未遵循传统认知科学文献的规范。

In some sense, this is not satisfactory: we don't have a very good understanding of what spacing schedule to use. But a system has to use some schedule, and so designers do the best they can. This seems likely to work much better than naive approaches, but over the long run it'd be good to have an approach based on a detailed theory of human memory.
从某种意义上说,这并不令人满意:我们对于应该使用什么样的间隔计划并不十分清楚。然而,系统必须采用某种计划,因此设计者们只能尽力而为。这种方法似乎比简单粗暴的方式要好得多,但从长远来看,基于详细的人类记忆理论的方法会更为理想。

Now, one response to this is to say that you should design scientifically, and have good experimental evidence for all design choices. I've heard this used as a criticism of the designers of systems such as Anki, that they make too many ad hoc guesses, not backed by a systematic scientific understanding.
现在,对此的一种回应是认为设计应该基于科学,并为所有设计选择提供充分的实验证据。我听说这被用来批评 Anki 等系统的设计师,认为他们做了太多临时性的猜测,缺乏系统性的科学依据。

But what are they supposed to do? Wait 50 or 100 years, until those answers are in? Give up design, and become memory scientists for the next 30 years, so they can give properly “scientific” answers to all the questions they need answered in the design of their systems?
但他们应该怎么做呢?等待 50 年或 100 年,直到那些答案出现?放弃设计,转而成为记忆科学家 30 年,以便他们能够对他们系统设计中需要回答的所有问题给出适当的“科学”答案?

This isn't the way design works, nor the way it should work.
这不是设计的运作方式,也不应该是它的运作方式。

If designers waited until all the evidence was in, no-one would ever design anything. In practice, what you want is bold, imaginative design, exploring many ideas, but inspired and informed (and not too constrained) by what is known scientifically. Ideally, alongside this there would be a much slower feedback loop, whereby design choices would suggest questions about memory, which would lead to new scientific experiments, and thence to an improved understanding of memory, which would in turn suggest new avenues for design.
如果设计师等到所有证据都齐备了,那就没有人会设计任何东西了。实际上,我们需要的是一种大胆且富有想象力的设计,能够探索多种想法,同时受到科学知识的启发和指导(但不过于受限)。理想情况下,这应该伴随着一个更慢的反馈循环,设计选择会引发关于记忆的问题,进而推动新的科学实验,从而加深对记忆的理解,最终为设计开辟新的方向。

Such a balance is not easy to achieve. The human-computer interaction (HCI) community has tried to achieve it in the systems they build, not just for memory, but for augmenting human cognition in general. But I don't think it's worked so well. It seems to me that they've given up a lot of boldness and imagination and aspiration in their design*
这种平衡并不容易实现。人机交互(HCI)社区曾试图在他们构建的系统中实现这一目标,不仅是为了增强记忆,更是为了全面提升人类的认知能力。但我觉得效果并不理想。在我看来,他们在设计过程中放弃了许多大胆的尝试、丰富的想象力和远大的抱负。
* As an outsider, I'm aware this comment won't make me any friends within the HCI community. On the other hand, I don't think it does any good to be silent, either. When I look at major events within the community, such as the CHI conference, the overwhelming majority of papers seem timid when compared to early work on augmentation. It's telling that publishing conventional static papers (pdf, not even interactive JavaScript and HTML) is still so central to the field.
作为一个局外人,我明白这个评论不会让我在 HCI 社区中赢得任何朋友。但另一方面,我认为保持沉默也并无益处。当我观察社区内的重大事件,比如 CHI 会议时,与早期的增强研究相比,绝大多数论文似乎都显得过于保守。这反映出,发表传统的静态论文(pdf,甚至不是交互式的 JavaScript 和 HTML)仍然是该领域的核心。
. At the same time, they're not doing full-fledged cognitive science either – they're not developing a detailed understanding of the mind. Finding the right relationship between imaginative design and cognitive science is a core problem for work on augmentation, and it's not trivial.
与此同时,他们也没有进行全面的认知科学研究——他们并未深入理解心智的运作机制。在增强领域的工作中,如何平衡想象设计与认知科学之间的关系是一个核心问题,且并非易事。

In a similar vein, it's tempting to imagine cognitive scientists starting to build systems. While this may sometimes work, I think it's unlikely to yield good results in most cases. Building effective systems, even prototypes, is difficult. Cognitive scientists for the most part lack the skills and the design imagination to do it well.
同样地,人们很容易想象认知科学家开始构建系统。虽然这有时可能奏效,但我认为在大多数情况下不太可能产生好的结果。构建有效的系统,即使是原型,也是相当困难的。大多数认知科学家缺乏做好这件事所需的技能和设计想象力。

This suggests to me the need for a separate field of human augmentation. That field will take input from cognitive science. But it will fundamentally be a design science, oriented toward bold, imaginative design, and building systems from prototype to large-scale deployment.
这让我意识到需要一个独立的人类增强领域。该领域将从认知科学中汲取灵感,但其本质上将是一门设计科学,致力于大胆且富有想象力的设计,并从原型开发到大规模部署构建系统。

Acknowledgments  致谢

I initially became intrigued by Anki in part due to the writing of Gwern Branwen, Sasha Laundy, and Derek Sivers. Thanks to Andy Matuschak, Kevin Simler, Mason Hartman, and Robert Ochshorn for many stimulating conversations about this essay. I'm particularly grateful to Andy Matuschak for many thoughtful and enjoyable conversations, and especially for pointing out how unusual is the view that Anki can be a virtuoso skill for understanding, not just a means of remembering facts. Finally, thanks to everyone who commented on my Twitter thread about Anki.
我最初对 Anki 产生兴趣,部分原因是受到 Gwern Branwen、Sasha Laundy 和 Derek Sivers 的文章启发。感谢 Andy Matuschak、Kevin Simler、Mason Hartman 和 Robert Ochshorn 就这篇文章进行了许多富有启发性的讨论。我特别感谢 Andy Matuschak,他与我进行了许多深思熟虑且愉快的对话,尤其是他提出 Anki 不仅是一种记忆工具,更可以成为理解的高超技能,这种观点非常独特。最后,感谢所有在我关于 Anki 的 Twitter 帖子上留言的人。

Appendix 1: analysis of Anki study time
附录 1:Anki 学习时间分析

Here's a ballpark analysis of the effort required to study an Anki card for recall over 20 years – what we might reasonably consider lifetime recall. Note that the analysis is sensitive to the detailed assumptions made, so the time estimates shouldn't be taken too seriously. Nonetheless, it's useful to get a sense of the times involved.
这里是对学习一张 Anki 卡片以在 20 年内回忆所需努力的大致分析——我们可以合理地将其视为终身记忆。请注意,该分析对所做的详细假设非常敏感,因此时间估计不应过于认真。尽管如此,了解所涉及的时间是有帮助的。

When a card is initially entered, Anki requires reviews after just 1 minute and then 10 minutes. After those reviews the interval between reviews rises substantially, to 1 day. The interval expansion rate after that may vary a little*
当一张卡片首次输入时,Anki 会在 1 分钟后和 10 分钟后要求复习。完成这些复习后,复习间隔会显著延长至 1 天。之后的间隔扩展率可能会稍有不同*
* The reason is that Anki allows you to specify that you found a card “easy” or “hard” when you review it, in addition to the generic “good” (meaning you got it right) or “again” (meaning you got it wrong). Those additional options vary the exact rate of interval expansion. In practice, I nearly always choose “good”, or tell Anki that I got the card wrong.
原因是 Anki 允许你在复习卡片时选择“容易”或“困难”,而不仅仅是通用的“好”(表示答对了)或“再次”(表示答错了)。这些额外的选项会影响间隔扩展的具体速率。实际上,我几乎总是选择“好”,或者告诉 Anki 我答错了卡片。
, but for my cards the typical expansion rate is by a factor of about 2.4 for each successful review. That means that successful reviews will raise the interval to 2.4 days, then to 2.4 * 2.4 = 6.76 days, and so on. On average, I get about 1 in 12 cards wrong, so by the 12th card we're up to about 2.49 = 2,642 days between reviews. Note that we raise to the 9th power rather than the 12th power, because it's not until the third repetition of a card that the interval reaches 1 day.
但对于我的卡片来说,每次成功复习的间隔通常会扩大约 2.4 倍。这意味着成功的复习会将间隔从 2.4 天延长到 2.4 * 2.4 = 6.76 天,以此类推。平均而言,我大约每 12 张卡片中会错 1 张,所以到第 12 张卡片时,复习间隔大约为 2.4 的 9 次方,即 2,642 天。需要注意的是,我们提高到 9 次方而不是 12 次方,因为直到卡片的第三次重复时,间隔才会达到 1 天。

If you sum those intervals all up, it suggests the typical time between failed reviews is about 12 years. Note, however, that I haven't been using Anki for nearly that long, and this estimate may be over-optimistic. We can get a lower bound on the time between failures by observing that my mean interval between card reviews is already 1.2 years. To achieve an interval of 1.2 years requires about 0.9 years of successful prior reviews, so on average my cards involve at least 2.1 years between failures. However, the real number may be much higher, since there's no reason to assume my next review on most of those cards is going to fail. So let's say that a conservative estimate is a mean time between failures of between 4 and 7 years.
如果你把这些间隔时间加起来,可以得出典型的失败复习之间的时间大约是 12 年。但需要注意的是,我使用 Anki 的时间还没有那么长,这个估计可能过于乐观。我们可以通过观察我的卡片复习之间的平均间隔时间已经是 1.2 年来获得失败之间的时间下限。要达到 1.2 年的间隔时间,大约需要 0.9 年的成功复习,因此平均来说,我的卡片在失败之间至少涉及 2.1 年。然而,实际数字可能要高得多,因为没有理由假设我对大多数卡片的下一次复习会失败。因此,保守估计失败之间的平均时间在 4 到 7 年之间。

If we assume the mean time between failures is 4 years, then over 20 years that means 5 failures, and reviewing 5 failures * 10 reviews per period = 50 times, for a total of 50 * 8 seconds = 400 seconds, or about 7 minutes.
如果我们假设平均故障间隔时间为 4 年,那么在 20 年内将发生 5 次故障。每次故障需要进行 10 次审查,总共需要审查 50 次,每次审查耗时 8 秒,总计 400 秒,大约 7 分钟。

If instead we assume the mean time between failures is 7 years, then over 20 years that means roughly 3 failures, and reviewing 3 failures * 11 reviews per period = 33 times, for a total of 33 * 8 seconds ≈ 260 seconds, or about 4 minutes.
如果我们假设平均故障间隔时间为 7 年,那么在 20 年内大约会发生 3 次故障。每次故障需要进行 11 次审查,总共需要审查 33 次(3 次故障 * 11 次审查)。每次审查耗时 8 秒,因此总共需要约 260 秒,即大约 4 分钟。

Note that in Anki's model a failure resets the review interval back to 10 minutes, then to 1 day, 2.4 days, and so on. In practice, that seems much too conservative. After one or two failures with a card I usually catch on, and it would be better if Anki wasn't so draconian in resetting the review schedule. A better review schedule would reduce the total study time, and I wouldn't be surprised if a typical commitment of ˜2 minutes was possible.
需要注意的是,在 Anki 的模型中,如果复习失败,复习间隔会被重置为 10 分钟,然后是 1 天、2.4 天,依此类推。实际上,这种做法似乎过于保守。通常在一两次失败后,我就能掌握卡片内容,如果 Anki 在重置复习计划时不那么严格会更好。一个更合理的复习计划可以减少总学习时间,如果每次复习只需约 2 分钟,我也不会感到惊讶。

Appendix 2: Using Anki to learn APIs
附录 2:使用 Anki 学习 API

A good use for Anki is to assist in learning APIs. Here's some patterns which work for me, and a few warnings about anti-patterns.
Anki 的一个好用途是辅助学习 API。以下是一些对我有效的模式,以及一些关于反模式的注意事项。

It begins with me deciding there's some API I'd like to learn to use in a project. Some of the time, I just want to use the API a little – say, for 50-100 lines of code, or even just some 1-10 line code snippets. In that case I'm best off winging it, adapting snippets from elsewhere, and consulting the docs as needed.
这始于我决定在项目中学习使用某个 API。有时候,我只想稍微用一下这个 API——比如,写 50-100 行代码,甚至只是一些 1-10 行的代码片段。在这种情况下,我最好即兴发挥,从其他地方借鉴代码片段,并在需要时查阅文档。

But suppose I know I will use the API more seriously in a project. For instance, for my essay Thought as a Technology I wanted to build some prototypes using 3d graphics, and decided to learn the basics of the three.js Javascript library.
但假设我知道我会在一个项目中更深入地使用这个 API。比如,在我的论文《思想作为一种技术》中,我打算用 3D 图形构建一些原型,并决定学习 three.js JavaScript 库的基础知识。

One tempting failure mode is to think “Oh, I should master the API first”, and then to dive into tutorials or the documentation. Apart from a quick skim of a tutorial or the documentation, that's a mistake. A better approach is to find a small, functioning piece of code that does something related to the core functionality of my project. It doesn't need to be similar to the whole project, but ideally implements one or two similar features, and is a few tens or hundreds of lines of code long. I get that code running, then start making small tweaks, adding bits of functionality I need, taking out bits that I don't, and trying to understand and improve the code.
一个常见的误区是认为“我应该先掌握 API”,然后一头扎进教程或文档中。除了快速浏览教程或文档外,这种做法并不明智。更好的方法是找到一个与项目核心功能相关的小型、可运行的代码片段。它不需要与整个项目完全相似,但最好能实现一两个类似的功能,并且代码长度在几十到几百行之间。先让这段代码运行起来,然后逐步进行小的调整,添加所需的功能,去掉不需要的部分,并尝试理解和改进代码。

I probably err on the side of just making things happen… I get so much of a thrill bringing things to life… as soon as it comes to life it starts telling you what it is. - Dan Ingalls
我可能更倾向于直接让事情发生……我从中获得了极大的兴奋感,让事物变得鲜活……一旦它变得鲜活,它就会开始告诉你它的本质。- 丹·英格尔斯

The great thing about this is that I need only change 1 to 5 lines of code at a time, and I see meaningful progress toward my goals. That's exciting. To use a metaphor from machine learning, it's like doing gradient descent in the space of meaningful projects.
这样做的好处在于,我每次只需修改 1 到 5 行代码,就能看到朝着目标迈进的实质性进展。这非常令人兴奋。用机器学习的比喻来说,这就像在有意义的项目空间中进行梯度下降。

Of course, while doing this, I'll constantly be looking up things in the docs, on StackOverflow, and so on. I'll also be reading and understanding pieces of the code I started from. It's tempting to Ankify all this, but it's a mistake: it takes too much time, and you Ankify too much that later turns out to be little use. However, when something is clearly a central concept, or I know I'll reuse it often, it's worth adding to Anki. In this way, I gradually build up a knowledge base of things I can use in real, live projects. And, slowly, I get better and better.
当然,在这个过程中,我会不断地查阅文档、StackOverflow 等资源。同时,我也会仔细阅读并理解我参考的代码片段。虽然很想把这些都记入 Anki,但这样做并不明智:它太耗时,而且很多内容后来证明用处不大。不过,如果某个概念明显是核心内容,或者我知道我会经常用到它,那就值得添加到 Anki 中。通过这种方式,我逐渐积累了一个可以在实际项目中应用的知识库。慢慢地,我的能力也会不断提升。

Once I'm making real progress on my project, and confident I've made a good choice of API, then it makes sense to work through a tutorial. I usually dip quickly into several such tutorials, and identify the one I believe I can learn most quickly from. And then I work through it. I do Ankify at this stage, but keep it relatively light. It's tempting to Ankify everything, but I end up memorizing lots of useless information, at great time cost. It's much better to only Ankify material I know I'll need repeatedly. Usually that means I can already see I need it right now, at the current stage of my project. On the first pass, I'm conservative, Ankifying less material. Then, once I've gone through a tutorial once, I go back over it, this time Ankifying everything I'm likely to need later. This second pass is usually quite rapid – often faster than the first pass – but on the second pass I have more context, and my judgment about what to Ankify is better.
当我在项目中取得实质性进展,并且确信选择了一个合适的 API 时,通过教程学习就变得有意义了。我通常会快速浏览几个教程,找出我认为能最快掌握的一个,然后深入学习。在这个阶段,我会使用 Ankify,但保持适度。虽然很容易想把所有内容都 Ankify,但这样会记住大量无用的信息,耗费大量时间。最好只 Ankify 那些我知道会反复用到的内容。通常这意味着我已经在当前项目阶段明确需要这些内容。在第一次学习时,我会保守一些,Ankify 较少的内容。然后,当我完成一次教程后,我会回过头来,这次 Ankify 所有我以后可能需要的内容。 第二遍通常非常快——甚至比第一遍更快——但在第二遍中,我有更多的背景信息,因此对需要 Ankify 的内容的判断也更加准确。

I continue doing this, bouncing back and forth between working on my project and working on Anki as I make my way through tutorials and documentation, as well as material that comes up while reading code – code from others, and even code I've written myself. I find it surprisingly helpful to Ankify the APIs for code I've personally written, if they're likely to be useful in the future. Just because I wrote something doesn't mean I'll remember it in future!
我继续这样做,一边完成教程和文档,一边在我的项目和 Anki 之间来回切换。在阅读代码时,我也会遇到一些材料——无论是别人的代码,还是我自己写的代码。我发现,如果我自己写的代码的 API 将来可能有用,将它们 Ankify 化是非常有帮助的。毕竟,仅仅因为我写了某些东西,并不意味着我将来会记住它!

So: don't jump into Ankifying tutorials and documentation straight away. Wait, and do it in tandem with serious work on your project. I must admit, part of the reason I advise this is because I find the advice hard to take myself. I nearly always regret not following it. I start a new project, think “Oh, I need such-and-such an API”, and then dive into a tutorial, spending hours on it. But I struggle and struggle and make very slow progress. Until I remember to find some working code to start from, and immediately find things are going much better. I then swear to never use the tutorial-first approach again. Unfortunately, in practice, I find it seductive.
所以:不要一上来就急着去看 Ankifying 的教程和文档。先等等,等到你在项目中真正需要时再去做。我得承认,我之所以这么建议,部分原因是因为我自己也很难做到这一点。我几乎每次都会后悔没有遵循这个建议。每当我开始一个新项目时,总会想“哦,我需要某个 API”,然后一头扎进教程里,花上好几个小时。结果却总是挣扎不已,进展缓慢。直到我记起要找一些现成的代码作为起点,事情才会立刻变得顺利起来。于是我就发誓再也不采用“教程优先”的方法了。但遗憾的是,实际操作中,我还是常常被这种方法所吸引。

The overall process is much like the common learning-by-doing approach to a new API, where you gradually learn the API through repetition, while working on a project. The main difference is that the occasional interspersed use of Anki considerably speeds up the rate at which you agglomerate new knowledge.
整个过程类似于通过实践学习新 API 的常见方法,即在项目中进行重复学习。主要区别在于,偶尔使用 Anki 可以显著加快您积累新知识的速度。

A potential failure mode is to think “Oh, I might want to learn such-and-such an API one day, so I should start adding cards, even though I don't currently have a project where I'm using the API.”
一个潜在的失败模式是想着“哦,我可能有一天会想学习某个 API,所以即使目前没有使用该 API 的项目,我也应该开始添加卡片。”

I've tried this a couple of times, and my advice is: don't do it.
我已经试过几次了,我的建议是:别这么做。

It's a form of a problem I described in the main body of the essay: the temptation to stockpile knowledge against some day when you'll use it. You will learn far more quickly if you're simultaneously using the API seriously in a project. Using the API to create something new helps you identify what is important to remember from the API. And it also – this is speculation – sends a signal to your brain saying “this really matters”, and that helps your memory quite a bit. So if you're tempted to do speculative Ankification, please don't. And if you find yourself starting, stop.
这是我在文章主体中提到的一种问题:囤积知识的诱惑,以备将来某天使用。如果你同时在一个项目中认真使用 API,你会学得更快。通过使用 API 来创造新东西,你可以更好地识别 API 中需要记住的重要内容。而且——这只是推测——它还会向你的大脑发出一个信号,告诉你“这真的很重要”,这对你的记忆有很大帮助。所以,如果你有冲动去做推测性的 Ankification,请不要这样做。如果你发现自己开始了,就停下来。

A more challenging partial failure mode is Ankifying what turn into orphan APIs. That is, I'll use a new API for a project, and Ankify some material from the API. Then the project finishes, and I don't immediately have another project using the same API. I then find my mind won't engage so well with the cards – there's a half-conscious thought of “why am I learning this useless stuff?” I just no longer find the cards as interesting as when I was actively using the API.
一个更具挑战性的部分失败模式是将那些变成“孤儿”API 的内容进行 Ankify 化。具体来说,我会为一个项目使用一个新的 API,并从 API 中提取一些材料进行 Ankify。然而,当项目结束后,我没有立即接手另一个使用相同 API 的项目。这时,我发现自己在复习这些卡片时难以集中注意力——脑海中会不自觉地冒出“为什么要学这些没用的东西?”的想法。于是,我不再像当初积极使用 API 时那样对这些卡片感兴趣了。

This is a difficult situation. I use the rule of thumb that if it seems likely I'm not going to use the API again, I delete the cards when they come up. But if it seems likely I'll use the API in the next year or so, I keep them in the deck. It's not a perfect solution, since I really do slightly disconnect from the cards. But it's the best compromise I've found.
这是一个棘手的情况。我采用的经验法则是,如果我觉得不太可能再次使用这个 API,我会在卡片出现时删除它们。但如果我觉得在接下来的一年左右可能会用到这个 API,我会把它们留在牌组中。这并不是一个完美的解决方案,因为我确实有点与卡片脱节。但这是我目前找到的最佳折衷方案。