Archive for the ‘未分类’ Category

合理的肮脏

2016/05/11

2016-05-10-AutoBodyShop

上班时因为没及时换 lane,所以选了另一条路,经过一个整形喷漆的修车场。场外停满等待修理的车,每辆身上都有些变形和漆面擦落。整个环境充斥着萧条的气氛。

当然,在商业环境讲求效率的标准下,我们被教导了要「学会用正确的方式看待『整洁』」。

It took me a couple of months … before I realized what they meant. In the bakery, clean meant no dough on the machines. Clean meant no fermenting dough in the trash. Clean meant no dough on the floors.

Clean did not mean the paint on the ovens was nice and white. Painting the ovens was something you did every decade, not every day. Clean did not mean no grease. In fact there were a lot of machines that needed to be greased or oiled regularly and a thin layer of clean oil was usually a sign of a machine that had just been cleaned.

类似的视角并不限于商业。例如,我们都希望住进有专门车库的房子。不仅仅为了存放车辆,更是希望一些爱好的副产品远离起居室。在明亮的起居室欣赏飞机模型的时候,车库里存放着一张不必每天收拾的工作台,上面散布喷漆的污渍。

如果这种「合理的肮脏」均分在每个人的生活中,不仅是应该的,甚至是完美的点缀。可是在从微观到宏观的层面上,最优效率的组织方式都是类似的 —— 这是上面 Joel 的 blog 里毫不费力的用面包房来为后文的代码组织做类比的合理性所在。在某个层面上,合理的肮脏所跨越的范围必然覆盖到某些人群绝大部分生活空间。像上面的修车场附近的居民区,对他们来说,打开窗户就能看到,走出房门就会接触到的修车场并不像一个享受爱好之后就可以离开的车库。我写这篇 blog 的原因正是联想到类似的情形在地区和国家的层次上,对于在「车库」里的人来说,生活并不是那么愉快。

最近的收获

2013/02/18

最近工作非常忙碌。开发中的产品经历了重要的 milestone,又逢公司的 Tech Summit,在总部和其它地区的同事面前完成了自己的首次英语 presentation。工作之余则主要是「汲取」—— 读的东西比较多,总结的东西比较少。学完 Lua 之后再看 SICP,眼界开阔了不少。在 Amazon 上买了不少闲书,包括没有 Kindle 版的 GEB,今天终于到货了;物质方面也收获不少,去东海岸休闲了一番,顺道买了台 MacBook Pro with Retina Display。

Amazon Kindle

2012/07/25

这个周末得到了 Amazon Kindle。值得高兴的是终于可以用 e-ink 来体验待读的几十本 Kindle 书和 Readability.com 的内容。应该说这是一台优雅的设备。不过它的问题也体现在「过于」优雅。

沉浸在徐徐翻动的小说中,你会觉得 e-ink 相当完美。但是,当到了一个新的环境需要 setup WiFi,或者阅读需要前后参照和查阅 Wikipedia 的书籍,e-ink 的低刷新速度和著名的残影现象会让早已习惯液晶屏界面的人很不习惯。传统 PC 和触摸屏上的电子阅读和 Wikipedia 第一次能让人比较轻松地涉猎一些不熟悉领域的研究立论性质的书籍。e-ink 虽然把电子设备的轻便性和传统纸张的观感结合起来,但是在电子阅读真正延展阅读能力方面也退回了传统媒体的层次。用 Kindle 阅读的时候,需要借助笔记本电脑的几率要大大高于使用 iPad 甚至 iPhone。Kindle 只是在重量方面体现了高技术的价值。

当然,看待 e-ink 所展现的优雅和缺陷有不同角度。比如说,在我的观察中 30 岁上下的中国人和西方人的行为上有一个巨大反差,至少我从未见过中国人像西方人那样有一个明显的放松状态 —— 戴上墨镜,静静地坐在一个地方看书,或者边听音乐边眼望远方(或者只是东张西望,反正他们的头不动,无法透过墨镜看到眼珠)。也许电子产品的设计自有这些差异的体现。Kindle 像一部平稳行驶时非常舒适,而加速刹车时非常蹩脚的交通工具。不过也许是我们的生活太颠簸而已。

近期功课

2012/01/18

最近逛书店(Amazon.com,China-pub.com 还有西单图书大厦)收获不少。想买的和没想到要买的都有了:

  • 《罗马帝国衰亡史》,商务印书馆的经典版式。适合完全没有网络和电脑的时候看。不过有些功课还得通过 Wikipedia 补上。
  • 《The Design and Implementation of the FreeBSD Operating System》,想看看 kernel 的东西,不过没有当年 dig Linux kernel source 那股劲头了。浮光掠影的看看这个 OS X 的近亲吧。
  • 《DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X, and FreeBSD》,对工作最有用的一本。有网络和地方摆电脑的时候认真看。
  • 重读经典的《人月神话》还差五章,没有照到这张里。

Retreat Corner

2011/12/03

办公桌的 retreat corner。

一个人是否能改变世界

2011/11/16

1975 年 6 月 29 日,一个人在键盘上敲了几个键,他面前的「显示器」显示了对应的几个字母。在他之前,没有电脑能做到这点。在他之后,所有人都以为电脑从来就是如此。尽管是 Steve Jobs 为这台电脑推向大众做了关键的一步,但是站在这个历史转折一刻的,是 Wozniak 一个人。

如果不是时时重温这段历史,很容易以为 Unix kernel 是在类似 vi 的编辑器上写就的。很少有人能一力创造如此改变世界的转折。就连 Ken Thompson 创造的杰作也没能扫除世界上 90% 计算机上的 VMS 遗留物。

阅读

2011/10/30

《 Steve Jobs 》,啤酒,电子辞典和 Wikipedia 。

乔布斯安息

2011/10/06

No one wants to die. Even people who want to go to heaven don’t want to die to get there. And yet death is the destination we all share. No one has ever escaped it. And that is as it should be, because Death is very likely the single best invention of Life. It is Life’s change agent. It clears out the old to make way for the new. Right now the new is you, but someday not too long from now, you will gradually become the old and be cleared away. Sorry to be so dramatic, but it is quite true.

Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma — which is living with the results of other people’s thinking. Don’t let the noise of others’ opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.

Premature Optimization

2011/07/26

昨天在知乎上看到有人问某领域的基础学习是否可以有所侧重裁剪的问题,第一反应是:学习基础得不能再基础的东西还裁剪什么?由此不由得想到了简化字。从有草书和行书开始,简化字的存在其实也有几百甚至上千年了。建国后的汉字简化过程,其实只不过是正字废除过程而已。丢弃的知识不说,语言本身在某些方面反而被复杂化了,有些本来可以通过单字明了的意思,比如船只的「隻」和只有的「祇」,现在必须通过上下文分辨。

软件开发领域之外无数草率的裁剪,和软件开发的「 premature optimization 」本质上属于同一种行为,拥有共同特征。第一是基于假设的而非真正的 hotspot 。软件开发的 premature optimization 不经过 profiling ,所以经常发现辛苦优化的代码在使用中很少被调用,优化所得的效率提高完全被边缘化。简化字号称能加快汉字认读,其实以汉字认读为主的学习阶段只有两年左右(还是在兼学其它科目的情况下),而现代中国人以学习为主的过程持续九年到三十年以上。简化汉字牺牲文字带来的收益其实得不偿失。

最成功的软件系统是那些最终用途超乎设计者想像的系统,像 UNIX 操作系统及其各种工具,C 语言,Photoshop 等等。Premature optimization 大大降低了这种可能性,让系统能顺利经受预料之外情形的能力低下。至少,在外界情况发生变化时,premature optimization 所允诺的优势的往往烟消云散。今天学简化字成长起来的这一代人,认读正体字毫无困难。这是当年行书和草书的设计者们在长年积累中对认读心理的直观认识的结晶。这说明在认读方面正体简体并无区别。那么正体废除运动的优势似乎就只有书写一路了,偏偏今天的汉字书写又计算机化了。人类永远不知道自己预言未来的能力有多差,而勇于否认这点的莫过于 premature optimization 的施行者。

好在当年汉字拉丁化这个终极优化方案被否定了。这里不是要悲叹正体字在神奇大陆的消失,而是要借此说明 premature optimization 的本质邪恶。优化是我们可以清谈的东西,是可以做理论研究的东西,是可以边边角角尝试的东西,但绝不是指导下一大步的方针。

机械打字机

2011/06/04

纸质笔记本和机械打字机