呐喊读书笔记:《程序员的呐喊》读书笔记

madating 坐标: 87215 目录:婚姻家庭

同样自由派的观点常常和年轻、理想主义、天真无邪联系在一起。在企业里,创业公司往往是典型的自由派,一部分原因是他们本来就是为了(在一定程度上)改变世界而存在的(而自由主义原本就意味着变化),另一部分则是他们必须全力以赴完成投资人设定的目标,所以放弃一点软件安全也就变得合理(不得已)了。

me:保守派,尽量修复所有 bug,回避错误,学不会新语法,通过编译器安全检查,数据必须遵循事先定义好的格式,公共接口必须严格建模,生产系统里绝不允许存在危险过有风险的后门,安全性有疑虑就不能上线,快比慢好,注重性能。自由派则相反。

2、各大语言的分派:(作者自己使用语言的经验,仅供参考)

难以言喻的自由:汇编语言

极端自由:Perl、Ruby、PHP、脚本

非常自由:Jascript、VB、Lua

自由:Python、Common Lisp、Smalltalk/Sqeak

温和自由:C、Object-C、Schema

温和保守:C++、Ja、C#、D、Go

保守:Clojure、Erlang、Pascal

非常保守:Scala、Ada、Ocaml、Eiffel

极端保守:Haskell、SML

3、(1)Facebook 是极端自由的。他们主要用的是 C++ 和 PHP,他们的数据都放在 memcached 里:只有键值对,没有数据库结构。他们把数据导出来放到一个后台 H ⅳ e 数据仓库里,然后用 Hadoop 来进行离线数据分析。每两个星期左右他们仍然会举办通宵黑客马拉松,反正他们的程序员大多都是单身男青年(至少我上次去参观的时候还是如此),股票的估值也还很高(我上次查价格的时候好像已经没那么好了)。作为一家公司,Facebook 是非常紧密的,具有很强的执行力,十分注重程序员在网站上发布新功能的单兵能力,没有什么官僚主义。这对一家规模这么大、用户那么多多的公司来讲是难能可贵的。保守派毫无疑问会厌恶蔑视他们。但是 Facebook 证明了不管具有什么世界观的程序员,只要联合起来,就能解决很多问题。

(2)Amazon 是自由的。

(3)Google 是保守的。开始是有点自由的 ,然后就变得越来越保守了。只有在刚刚开始的时候才是软件自由的,那时候的搜索引擎是用 Python 写的。随着公司不断壮大,他们很快就转向了软件保守主义,而这完全是由工程师自己主导的。他们写了很多宣言警告太多语言所带来的危险,而仅有的几门语言里,也里,也有严格的风格指南,限制使用那些端保守,险 " 或者 " 难以阅读 " 的语言特性。

(4)微软是难以言喻的保守。

专题栏目
最新