为什么要创办计算机科学读书俱乐部

Ada的计算机阅览室。 图片由辛迪苹果

去年的每个第三个星期二,我在西雅图的Ada技术书籍中都主办了一个计算机科学图书俱乐部。 艾达(Ada)就是它的理想之选-咖啡,长木桌,被整本书装满的整个房间所包围。

令人惊讶的是,尽管有大量的聚会,社交活动以及针对程序员和技术行业人士的黑客马拉松,以及对技术的广泛热情,但对于计算机科学文献却没有太多的赞赏。

这里没有指向或暗示嘲笑的令人不安的趋势。 大多数程序员通常都会散布经典著作-一到两卷Knuth , 设计模式, 算法 -并且通常,书呆子的程序员享有书呆子的美誉,所以观众就在那里。 我们只需要几个俱乐部。

异议

我不编程

将计算机科学读书会集中在编程上是一个坏主意。 第一,这样可以减少您的小组人数。 第二,不同的技能组将导致与本书的互动方式明显不同,这意味着有些人会表现出色,而另一些人可能会感到尴尬; 第三,即使您是摇滚明星程序员,另一本书似乎也很奏效或没有挑战性。

CS书干燥而有启发性

不对。 就是说,如果您读过的唯一一本书是24小时内学习X ,那么是的,这很有意义。

但是在计算机科学中有一个万神殿需要讨论的话题,包括激动人心的历史( 《密码本》,《世界末日》,《密码学》,《阿达算法》 ),对人类未来的猜测( 《主算法》,《超级智能》, [ 在此处插入库兹韦尔标题 ])以及每个人风格的说明,不仅仅包括操作方法( 代码,改变未来的9种算法, 麻省理工学院的基本知识丛书 )。

您甚至可以把Neil Stephenson或Cory Doctorow扔到足够近的地方。

有什么要讨论的?

这是我上手时最紧迫的想法。 与标准的读书俱乐部不同,计算机科学在解释领域的参与并不多。 这就是发生的事情或它的工作方式。 做完了

但是,有两个主要起点:

我为什么喜欢或不喜欢这本书?
似乎很明显,但是令人惊讶的是,人们围绕干燥的主题而产生的各种意见。 拿起三本有关学习Go的不同书籍,人们将对谁是更好的老师以及为什么要提出强烈的意见。

这与我和我的经历有什么关系?
从计算机俱乐部汲取灵感,并不是所有事物都需要有一个客观目标。 有时,人们只是喜欢修补并分享想到的想法。 我最近在《带注释的图灵》上的读书俱乐部在10分钟内从Lambda微积分转到Commodore老板Jack Tramiel 。 最终,这本书是一个起点。

为什么

进入更大的世界

显然,阅读越多越好。 特别是在科学史上,阅读有助于弄清为什么我们到达了现在的位置,这可能非常微妙。 艾萨克森(Isaacson)的史蒂夫·乔布斯 ( Steve Jobs)间接解释了为什么苹果公司在Xcode中使用NS前缀类型声明。 任何Apple开发人员每天都会看到数百封信,其中有两封信都有一段完整的历史。

由于程序员和IT人员倾向于迅速将技术视为愚蠢或过度设计,因此了解笔记本电脑的背景,包括参与其设计的人员,芯片的工程设计以及针对其语言和操作系统进行了优化的对象,至少使这些声明的频率降低一些,或者可能变得更加严厉。

发现新英雄

如今,当今计算机科学的圣人常常是拥有最多金钱的人。 诸如《 加密货币》,《巫师熬夜的地方》,《图灵大教堂》,《准将:边缘公司》等书籍揭示了那些致力于创造新可能性的人,而不论其经济利益如何。

以惠特菲尔德·迪菲(Whitfield Diffie)为例,他花了数十年的时间试图解决允许进行加密Web交易的公钥交换问题; JCR Licklidler在撰写了“ 星际计算机网络 ”之后为互联网铺平了道路。 当史蒂夫·乔布斯(Steve Jobs)专注于圆角时,Commodore的Chuck Peddle致力于数码相机的开发,并设计出具有成本效益的处理器。 当然,这些家伙中的大多数仍在一定程度上获得了经济利益。

技术人员之所以专注于创建下一个Google,是因为它规模庞大,而且通常不是因为它帮助解决了问题。 即使您是为了钱而花钱(没有判断力),分析问题解决者而不是天使投资人也可能会让您更快地解决问题。

你不知道的仓库

要让程序员说“我不知道”真是太难了。 这有两个原因:技术是一项以人力资本为中心的业务,无知可被视为个人缺陷; 科技领域有很多自我 最终对于大多数事情,您都可以在StackOverflow上查找它。

经常发生的事情是,尽管技术人员会接触到过多的主题,并且通常了解手头的主题是什么,但他们无法精确地定义它。

考虑图灵的“停顿”问题 (他没有使用的一个术语):

  • 您可以概括地描述一下吗?
  • 你能描述一个示范吗?
  • 您能形容图灵如何证明它吗?

如前所述,刚完成作者Charles Charles Petzold在Turing论文中握住我的手的Annotated Turing之后 ,如果您给我几分钟的时间,我仍然无法回答第三个,几乎可以描述第二个。

称其为谦卑派,或者更积极地说,能够引用主要来源,无论从哪个角度来看,对意识的冲动都可以像正确一样令人满意。

忠告

保持轻便

当您到达那里时,您发现无话可说,没有后顾之忧。 有些书是不好的,而另一些却很简单,你说“懂”然后继续。 无需深入了解。

选择现实的书

虽然最终与一群人一起完成《计算机程序的结构和解释》或Godel,Escher,Bach的工作听起来似乎是一个好主意,但每个人都不可能在一个月内浏览这些书本,并且假设如果将阅读范围扩大,那本书可能不会引起所有人的兴趣(六次)。

直播

阅读老式计算机吗? 也许从车库里抽出来一些。 了解逻辑门? 买一些晶体管 ,看看可以连接什么。 在研究黑客? 设置一个伪造的服务器,您的小组可以尝试闯入。

准备?

您已经听取了我的意见,但是,当然,阅读的内容如此广泛,您可以专门研究您的小组(可能是Atari历史,游戏编程,AI),或者看看是否真的有人可以完成整个学习过程。 计算机编程艺术 。

在下面,我将列出过去一年中所做的选择。 如果您有自己的建议,请发表评论。 如果您在西雅图,并且有兴趣加入Ada的小组,请查看我们的Facebook小组 。 祝好运!

以前的阅读清单:

  • 竞速
  • 代码:计算机硬件和软件的隐藏语言
  • 改变未来的9种算法
  • 超级智能
  • 新机器的灵魂
  • 算法的来临
  • 主算法
  • 艾达算法
  • 密码本
  • 电线中的幽灵
  • 带注释的图灵

秋天即将来临 :

  • Flash:构建交互式Web
  • 最人类的人
  • 小计划者
  • 如何使用电子游戏做事
  • !#(Shebang)
  • 只是为了好玩:一个偶然的革命者的故事