少年天才 Aaron Swartz 的思维方式

Tara 开智学堂

img

他是少年编程天才,14 岁时便参与制定 RSS 1.0 的标准;他是 Reddit 的联合创始人,用生命捍卫互联网的开放与自由,却被美国政府以 13 项重罪起诉;最终他在 26 岁结束自己的生命。他的名字叫 Aaron Swartz 。在下文,开智校友 Tara 将带你了解这位天才,快速学习他的思维方式,一起来看~

作者丨Tara

本文转载自微信公众号「Tarasayhi」已获原作者授权

开智学堂(http://www.OpenMindClub.com)

img

少年编程天才 Aaron Swartz 是一个高效高产的人,他身兼数职。在 2012 年的时候,他是线上组织」求进会「的联合创始人,是哈佛大学的研究员,给 The Baffler 杂志供稿(文章还入选最佳技术文章),还在咨询公司 ThoughtWorks 带项目。他还每年阅读近 100 本书。

他是怎么做到如此高效的呢?他的学习、思维方式是怎样的?他自己也写过不少心得文章,我们来看看。

如何学习?

在纪录片《互联网之子》中,Swartz 的弟弟就说他很小的时候就知道怎么学习了。在纪录片中我们也看到,小小的他从学校学到东西就迫不及待地教给弟弟们。

教给别人更有助于知识的掌握,而他从小就有这样的习惯。

在中学时的博客中,他提到自己的学习习惯是:

当有人教我什么时,我不会把所教的内容当成事实接受。我会需要了解来龙去脉( the whole picture )。这么做强迫我自己批判地看待教给我的东西,而有时我发现老师教的是错的。

在其他同学还在忙着完成老师布置的任务,他就已经自己摸索出各个学科的学习方法。他看到学校教学的种种弊端,和校长讨论教育改革,并在无法最终实施后辍学。

我找遍了他的博客,没有发现如何学习的方法介绍,倒是有一篇讲他如何面试程序员、如何判断他们是否聪明的文章,挺有意思。

在这篇《我如何雇佣程序员》(How I Hire Programmers)的文章中,他指出了传统面试方法的弊端:

传统面试程序包括:

  • 看简历
  • 电话面试,问些难题
  • 面试,给一些编程问题

我觉得这个方式很可怕。从简历上你了解的很少。面试时问一些难题,对方会很紧张。编程不是一个典型的需要在压力下完成的工作。因此观察人们在压力下的表现是没用的。而经典的面试题通常很残酷。我自认为是个优秀的程序员,但我从没有通过过那类面试。

他在面试的时候,会关注 3 个问题:

1)对方聪明吗?

2)对方能把事情搞定吗?

3)和对方工作上合得来吗?

关于如何判断一个人聪明,他会看 3 个方面:

▶ 第一,他们了解事情吗?

问他们最近在想什么然后深入提问。他们了解细节吗?他们能清楚解释吗?(清晰的解释是理解的标志。)他们是否了解你不清楚的主题?

▶ 第二,他们有好奇心吗?

他们会问你问题吗?他们是真的感兴趣还是出于礼貌?针对你说的东西,他们会继续追问吗?他们的问题会令你思考吗?

▶ 第三,他们会学习吗?

在你们对话的时候,你可能会解释些东西给他们听。他们真的能懂吗,还是只是点头微笑呢?有些人了解一些小的领域但对其他东西不好奇。有些人有好奇心但不会学习,他们问一堆问题但并没真的在听。

这几个方面可以检验自己在学习的时候是否真正掌握了议题。另外也确实可以在面试的时候判断对方是否聪明。

我自己在面试的时候也会关注对方是不是有学习能力。但我通常是问他们一个擅长的领域然后问是怎么学习的。

但是这个方法不总能奏效。要么我很难判断所说的领域他们是否真正了解,要么他们自己真正掌握了但没有想过描述这个学习的过程。而 Swartz 这几个问题提供了一个挺好的评估方式。

img图片来源 Unsplash

如何阅读更多?

Swartz 每年都会在博客上做个阅读总结,推荐他一年中看过的好书(后面可能的话会把他的书单翻译下~)。基本每年近 100 本。

在这么忙的情况下,怎么做到读那么多书呢?

他写过一篇《如何阅读更多的书》( HOWTO: Read more books ),有 4 条建议:

▶ 第一:封锁你最爱的博客网站。

当我思考阻滞的时候,我会去开一个最爱的博客网页。这个行为完全是自动的。结果是,我花了很多很多的时间从一篇博文看到另一篇。

我想说,这算坏习惯吗?现在的人其实连读长文的耐心都没有了……

为了改掉这个习惯,他的方法是:

我把我最喜欢的博客网址都重定向到一个虚假 IP。现在我一键入这些网址,都会出现报错信息。对于 Hulu 和一些视频网站我也这么做了。

真是一个狠人啊。

▶ 第二:从图书馆一次性借大量的书。

首先他有一段精辟的论述:

大多数人认为阅读更多的书就是花更多时间去读它。但我发现,这其实是个结果而不是原因,就和锻炼一样。

当我发现一本好书的时候我才会去读。如果不是本好书,我就不怎么想读,或者读一会就放下了。但当我发现一本好书时,我会特地抽出时间去读。

然后他表示你很难事先知道哪本书好,最好的方法就是读读看。所以他会每次从图书馆借一大堆书,有好的就读,不行就退掉。

他还表示,有截止时间以及看着书堆成山会给你额外的动力阅读。

后面两条建议我个人觉得意义不大。

▶ 第三:远离亲近的人。

他表示和别人互动太花时间了。以及如果你有其他兴趣爱好,能戒掉的话也是极好的。因为他本人除了阅读没有任何其他爱好。

▶ 第四:保持低的室温。

为了对抗在阅读的时候睡过去,他保持室温偏低,因为他发现自己在低温时不容易睡着。

真是一个狠人啊,没有预言家要查验一下的吗?

就连他自己也在结尾时说,我怀疑没什么人能采取所有的建议,但希望对你有用哦。

img图片来源 Unsplash

如何面对压力

2012 年,Swartz 的官司一边进行的时候,他写了一个系列文章,总结了一些人生和成长的经验。

其中有一些在当时应该挺不错的,但现在看大家都比较熟悉了,例如「成长型心智」。另外一些个人觉得比较鸡汤,例如珍视错误、客观认识自己等等。

但是这篇《靠近痛苦》(Lean into the pain)觉得挺不错的,可以当作如何应对压力的方法。

他先以健身举例:

当你第一次开始健身的时候,它总是痛苦的。不是像触摸滚烫炉子的那种很强烈的痛苦,但足以让你退缩,如果你一点苦也不想吃的话。但当你坚持健身,…. 那么你会更痛苦。

虽然痛苦但你会坚持,因为你知道它让你更强壮。

然后他表示,心理上的痛苦也是一样的:

大多数人把心理上的痛苦当作是滚烫的炉子 —— 一想起一些令他们害怕的或是有压力的事情,他们会停止去想,转移到其他事情。

那怎么办呢?他以令人头秃的合并代码为例:

想象下 Jane 和 Joan 是一个项目的两个工程师…… Jane 在让报错提示更友好些而 Joan 在加新功能。他们各自码代码码了好几天。现在面临一个问题:他们要把代码合起来。

也许你有过类似的麻烦,可能是代码也可能是文档:例如你把一份报告寄给两个朋友,每人都提出了一些修改,而你需要把每人改过的整合到一个文件上。这很烦,而编程就更烦了。所以人们开始拖延。

Jane 想着」我再把感谢的提示做得更友好点吧。「 Joan 想着」我再加点新功能吧。「 他们把合代码的事情一拖再拖。而合代码的工程就变得更大和更痛苦。

然后他提出了敏捷项目的解决方式:

敏捷的方式,正好相反:合并代码很痛苦,因此我们就要更频繁做。不是每隔几周或每隔几个月合一次,而是每天、每隔几个小时合一次。

……

拖延、推迟直到你别无选择的时候,你用手去摸一个滚烫的炉子,摸 1 个小时你会很痛。而如果你每次都碰一下,累计到 1 个小时,就没那么糟糕了。

健身和烫炉的例子都很形象。健身的痛苦我们可以忍耐,但是心理上的痛苦和压力来临时,要不是受住了,要不是逃开,总是很难有」锻炼「的意识。而抗压能力,其实也可以小步频繁迭代呢。

参考资料:

  • 纪录片《互联网之子》.

  • Aaron Swartz.

  • https://web.archive.org/web/20030419055927/

    http://www.aaronsw.com/school/2000/09/24/

  • Aaron Swartz’s blog.How I Hire Programmers

  • Aaron Swartz’s blog.HOWTO: Read more books

  • Aaron Swartz’s blog.Lean into the pain