我的期望与痛:SICP

几天前,袁英杰在微信中推荐《计算机程序的构造和解释》(Structure and Interpretation of Computer Programs,SICP)。

他的推荐词说:

SICP是一本无论如何都应该去仔细阅读的书。读完它,如果你不是变成了fp的狂热爱好者,而是除了理解fp之外,也更加深刻的理解了OO,logical programming,以及认识到用任何一种方法描述世界都有其局限性,从而放弃对单种范式的狂热(但过程式是个例外,你需要从这个泥潭中越早跳出来越好),那么你才没有白读这本书。

其实,在2013年,我还在ThoughtWorks时,就曾经和同事一起整理了一份ThoughtWorks读书雷达,在编码实践象限中推荐了SICP。推荐词如下:

在Coding Practice象限中,我们唯一推荐了一本似乎与工程实践无直接关联的书籍,即Harold Abelson与Gerald Jay Sussman的著作Structure and Interpretation of Computer Programs《计算机程序的构造和解释》(即SICP)。 作为MIT(曾经的)计算机系第一门编程课的教材,这本书没有像诸多基于C或者Java的编程入门教材那样纠结于语法和库——LISP的语法确实也没什么可以纠结的。 本书讲的是一些最基本的问题,比如什么是计算、什么是抽象、什么是模块化、乃至什么是时间和什么是自然数。一个以软件开发为业的程序员,或早或晚终归要想透这些问题,然后才能看破各种琳琅满目的编程语言所提供的五花八门的语法糖,以不变应万变地坦然面对一切不涉及并发的程序设计问题。把这本书当做第一本编程教材或许有些激进(MIT也已经不再这样做),但你早晚会遇到它。 有人不无夸张但相当在理地说:自SICP以降,无并发的编程没有任何新鲜问题;如果你觉得自己有了新发现,要么是SICP已经写过只是你不知道,要么是你想错了。

这一段是熊节的推荐。

应该在2014年,ThoughtWorks成都Office的杨阳在Office开展了SICP的系列Workshop,选用了clojure语言来尝试阐释书中理论和思想。可惜当时我出差在外,没有机会参与这个有趣的活动。至今想来抱憾。

:clojure是我一直想学却一直未学的一门语言,而SICP是我一直想读却一直未读的一本书。

Anyway,得听本书的大名并且许下要阅读此书的宏愿,比这还要早得更早。可以称得上是我内心隐藏的期望了,如今倒成了一种痛。我像一个倒吃甘蔗的吝啬鬼,舍不得把最好的那段留到最前面。我总是说我要读它,因为它实在太好,反而不舍得去阅读了。

借口!

其实是心中怀抱一种恐惧吧。我害怕我有点读不懂它,就像是高高在上的女神,我有点自惭形秽不敢去追求。——于是,我买了中文版的SICP,却从来没有翻开它;我在GitBook下载了LFE(Lisp Flavored Erlang)版本的SICP,却从来不曾点开它。我将它藏起来了,貌似珍藏,实则逃避。说是拖延症吗?其实未必呢。

隐隐地,我总觉得阅读此书是重要的,却并非紧急的;于是无意识中让许多紧急却并不重要的事情抢到了前面,阅读的优先级一退再退。若按小刀的说法,则认为阅读此书与解决自己的痛点不符。大约也有道理,因为阅读本书可能看不到直截了当的短期效果。短平快的收益,是学习一门语言,学习一件工具,学习一个平台。有多少会熟练编写C++、Java、C#、Scala、JavaScript、Ruby、Python语言的人,又读过SICP呢?读了它,未必能成道;不读它,也足以成为高手;得道的可能万中存一,于是就放弃了。

剖析我的心路,大抵如此。

既然给英杰说要逼逼自己,就不要拖延到明天了。明日复明日,也许真要拖到老了。虽然英杰说读此书是It's never too late。不过早总比晚好,要不,今天就开始阅读。从第一章Building Abstractions with Functions开始。

原文发布于微信公众号 - 逸言(YiYan_OneWord)

原文发表时间:2016-01-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程坑太多

讲几个关于程序员笑话!

832
来自专栏肖洒的博客

西电睿思年度非官方关键字榜单

首先要说的是真的特别喜欢睿思,也特别喜欢它的宗旨!“永远不去谋求任何商业利益,只为西电人有一个高速下载的地方,有一个开心聊天交朋友的地方而努力”。睿思背后的技术...

461
来自专栏CSDN技术头条

那些“笑死人不偿命”的数据段子:把前女友推荐给老婆

1. “我是搞数据分析的,学会了如何从DW中用SQL对数据ETL并建立了Cube。然后算啊算啊算,得出结论:今年2月份营业收入远远小于其它月份。我试图用spss...

1908
来自专栏斑斓

或许是领域建模的真相?

我们一提及领域建模,就好像回到了石器时代。然而这个谜题至今还未解决,就好像穴居人的生存方式,我们只能猜测、推测以及演绎,却不能真实复现。 Martin Fow...

2865
来自专栏java一日一条

一个五年 Android 开发者百度、阿里、聚美、映客的面试心经

先简单说说我最近的面试经历吧。面试的公司很多,其中有让我心血沸腾的经历,也有让我感到失望到无助的经历,我将这些体会都记录下来,细想之后很值得,面了这么多公司,要...

361
来自专栏大数据文摘

人之将死其言也善?30年来死囚遗言分析

22016
来自专栏pythonlove

马哥教育学习

很有幸能够参加到马帮,因为这天还要工作,所以就没有到教室去,只是当天晚上看了开课的视频。马老师(我习惯于这么叫他,因为他的确是我的大学老师)风采依旧,而且还是那...

1145
来自专栏大数据文摘

IT男也是艺术家:城市数据之美

1133
来自专栏机器人网

无人机助阵高考监考 防得了作弊吗?

今年的高考将于本周末正式拉开大幕,看似风平浪静的考场内外却暗藏作弊与反作|弊手段的较量。在考生众多的河南省,今年又有多项考试纪律出台,其中就包括不准考生携带除身...

2575
来自专栏互联网杂技

一个程序员的爱情故事

小伟毕业后顺利的进了一家软件公司,他天生就是干这行的料。不爱说话,不善于言谈,热衷于解决程序中的难题,程序员的这些标签都贴在了他的身上。 每次解...

3245

扫描关注云+社区