Archive for the ‘随笔’ Category

兴趣?

Friday, July 16th, 2010

我时常听到类似这样的说法:

“小时候我很喜欢音乐的,唱歌很好,老师经常夸我。我自己也很喜欢唱歌。可是后来上大学的时候家里人不让我报考音乐学院……”

结果呢,我看到的是基本被搁置一边的天赋,和大量的时间用来看花边新闻八卦杂志研究时尚美容等等等等。

“其实我是个写代码的。我不应该在这里,应该在一个角落里快乐的编写着代码。”

结果呢,我看到的是在真正需要写代码的时候,表现出来的迟钝和生疏。

我也看到很多很多时常将兴趣挂在嘴边,行动上却吝惜投入的人。相信你也看到。或者你就是。

兴趣是一种信仰。

当你真的觉得某些事情是你真正热爱的方向的时候,就应当真正的花时间去追求。原地期待不会有任何结果,朝三暮四更不会。朝九晚五然后说没有时间不是借口,全力投入的一两个小时的产出将远远超出你的想象。

我曾经劝说过很多人,放弃平凡的工作去追求自己真正热爱的人和事。然而真正接受建议的人很少。四平八稳往往是大多数人的选择。很多时候激情、冲动、莽撞之间划上约等号,弄的人搞不清楚这股情绪到底是什么。年长者考虑太多,出于善意,他们往往会说,

“年轻人,别冲动。”

可是,不冲动,是年轻人么?!

兴趣是一种信仰。而信仰要体现力量,需要长时间的近乎虔诚的朝拜和练习。整天挂在嘴边的兴趣不是兴趣。天天练习,以此为生活准则和行为习惯,并且得到广泛认可的小有所成,那才是真正的兴趣。

Disconnection(连接中断)

Friday, May 21st, 2010

连接中断这件事情其实不仅仅是物理现象。

《阿凡达》里面,氧气舱里Jack的连接线被拔除意味着他无法在潘多拉星球上与那些纳美人无法再交流。此时纳美人看见的Jack似乎是一个毫无生气的尸体,而氧气舱内的Jack则对发生在纳美人群体内的事情一无所知。还记得面对即将碾压而来的巨型机器,公主疯狂的拖拽着毫无知觉的Jack。而已经断线的Jack则像一个橡皮偶一般,毫无知觉。而一旦连接线被接上,Jack瞬间可以对现状作出反应。

《水云间》中,梅若鸿的十年前的结发妻子为了成全他而投湖自尽,大受刺激的梅若鸿近乎成为植物人,似乎他与整个世界已经断线。无数的好友、亲人都没办法叫醒他。最终是杜芊芊胸前的红玫瑰纹身,唤醒了他,使他与这个世界重新相连。


在我注意到的沟通不畅的现象中,很多情况是,参与沟通的个体与与整个沟通场景之间连接中断。如果只是一个人产生中断,那么沟通过程对于这个人而言会是比较痛苦的;但如果这个人非常重要,比如是领导或者其他话语权比较强烈的,那么其他人会比较痛苦。他们的痛苦,与上面描述的两个案例是没有太多不同的——花费了大量的气力,其实不是为了最终解决什么问题,而是为了与场景产生连接。简单的表现就是:花费大量的时间去描述问题本身,而非去谈论解决方案。

前一篇文章中,我发现我所花费的大量的时间所营造的,只是让每个参与沟通的个体与场景之间产生连接。在绝大多数情况下,一旦连接建立,问题就已经解决了一大半——剩下的事情就是依赖每个人的创造力去将问题解决。沟通最大的问题,是你以为它发生了,其实它没有。在《世界咖啡——创造集体智慧的汇谈方法》这本书里面,我看到大多数费尽心思的氛围营造——包括4-6人小圆桌,无处不在的摄像头,大屏幕,可以书写的餐桌布,等等,都是为了将连接建立的成本降到最低,让连接迅速建立,从而让沟通的效率更为集中的体现在价值创造上,而非问题澄清上。

这个说法也可以解释为什么我们需要可视的状态墙进行任务管理,为什么需要将应用程序的原型图贴到到处都是,为什么需要尽可能多的保持结对更换、尽可能多的进行面对面沟通,一切都是为了保证连接是常在的,否则连接一旦中断,你期待着谁会在胸前纹上鲜艳的红梅花去让谁清醒呢。

成长的分量

Thursday, March 25th, 2010

作为咨询顾问,近大半年以来我都很少在工作时间触碰键盘。思考得太多,然后迅速的在工作场合释放,思考的过程很难传到指尖行之成文出来。

今天进入一个新的团队。一个物理位置四分五裂的团队。开始搭建项目管理工具。花了大约20分钟之后,在繁杂的页面流转中,终于开了个头。想到还有很长的配置工作没有做,客户长舒一口气之后,问到:为什么这么复杂的工具,我们自己公司还要推行呢???

我也奇怪的问。这些违背直觉的行为背后的原因是我一直想探讨的。得到的答案是这样的:

“当初也就有一个人找到了。看到公司有人帮你把流程配置好了,帮你把服务器弄好了,你只需要用就好了,那就用呗”

“那么。。。这么复杂,难道不觉得难用吗?”

“难用啊,后来就不用了呗。我以为只有我不会用……这么复杂的功能,感觉挺专业的……”

我无语的看着他们。

我想他们只是没有意识到,工具本身远远不知自己看到和用到的。工具背后所支撑的方法学和理念,是无法被给予的。逃避学习的痛苦,逃避选择的痛苦,最后逃避指出真相的痛苦莫非是从小孩到成年人的通病。在完全没有了解真相的前提下,去接受他人的选择,这些原本不属于自己的信息,如果不去思考,永远无法与自己的大脑产生反应成为自己的知识。

什么忙碌啊,都只是让自己大脑放弃成长的借口。

体制化

Sunday, February 7th, 2010

These walls are kind of funny like that. First you hate them, then you get used to them. Enough time passed, get so you depend on them. That’s institutionalizing

来自《肖申克的救赎》。

越来越觉得,所有的咨询工作,最终的目的,是唤醒被体制化的人,唤醒他们原本的认知,唤醒他们原本为之追求的希望,唤醒那些原本属于他们现在却不得不依赖于指令规则的直觉。

杂记:这乱乱的秋季

Wednesday, November 4th, 2009

1. 用上ubuntu 9.10了。感谢小罗,在我的刻录机坏了的情况下帮我下载好,然后把把ubuntu.iso文件直接刻进了光盘中,于是乎光盘中只有一个文件:ubuntu.iso. 我纳闷了好久,为什么光盘启动不来呢…

2. 说到换操作系统这个事情,我原来也以为会惊天地泣鬼神一把将所有文件该刻盘的刻盘,该保存的保存,结果发现什么都不需要。大多数的稍微有点价值的东西都在公司的svn里;在dropbox中,在Google Doc中,在slideshare里,在DreamHost的虚拟主机的Mercurial里,于是乎,毫不犹豫的Format整个磁盘重装。Ubuntu 9.10比起以前配置简单太多了,配上cn99的源,安装上无线和显卡驱动,半小时搞定……散热问题:遥想6.04的时候,写两个小时代码左手中指小指无名指就该烫熟了。ibus比SCIM输入那个舒服啊。以后PC笔记本就Ubuntu了。。。

3. IDEA开源了。终于可以堂而皇之的干掉eclipse这个不思进取的东西了。我仍然记得三年前Shane说,Eclipse的快捷键命名比IDEA容易记忆,例如绝大多数的重构都是Alt+Shift+XXX, 而IDEA则F5, F6, Alt-Shift全上。然而为什么这个不规则的快捷键没有成为IDEA的阻碍呢?也许,也许只是在“好用”与“合理”之间,“好用”带来的非理性稍占上风。

4. 到了11月天气迅速冷了下来。记起很久以前穿着破了两个大洞的牛仔裤,凉风肆无忌惮的灌进来,凉飕飕的感觉

5. 最近在阅读《第五项修炼》,建议咨询工作者都读一下,特别是OT相关的。对我而言,几乎是字字珠玑;书也挺厚,晚上在床上敲键盘垫上,避免烫到大腿。

6. 儿子明天满两个月,好动,很不老实,话多,真是集他爹妈之大成。

7. 新闻版署要终止网易《魔兽世界》审批,并酌情处罚。不说什么了,”互联网数据中心主任胡延平表示,这是网络游戏管理乃至整个互联网治理历程中极为荒唐的一个事件。本来国务院已经明确了管辖权和管辖范围问题,文化部主导网游管理,但是新闻出版署在十一前后的一些举措以及针对网易的惩罚动作,使得局面又一次陷入混乱。惩治网易,杀鸡给猴看、明示管辖权的意思远远大于个案本身。” 丢人。丢人。丢人。

8. 这个年代,破坏权威的东西一般来说是好的。

我们所不知道的Code Review

Tuesday, September 29th, 2009

也许是待得太久,就像被一桶草莓酱从头浇到脚,尝哪里都是甜味一样,当初次看到Code Review成为一个如此重型并且低效的活动的时候,我才知道,草莓酱的外面,是空气,裹着大地的气息,大部分无味,又或者是烟草味,或者汽车的尾气。

先看一看我们看到的一个代码审查过程:

  • 开发人员领到任务。
  • 一周之后,代码写完了。他觉得没底,需要找业务专家技术专家来评审一下。这个时候他代码还没有提交。于是他把本地所有没有提交的、修改过后的文件,放到一起,压缩成rar包。找到他认为的技术高手业务高手(们),定会议室,发邮件通知。2小时过去了。
  • 技术专家业务专家收到了邮件,由于缺乏上下文理解,以及长达数千行的源代码,这类邮件一般不看——因为看了也是白看。
  • 终于到了Code Review的那一天。七七八八的来了几个人。一般来不全。因为高手之所以是高手,表现之一就是超级忙。
  • 于是代码的作者开始,一行一行的将代码讲下去。前几十分钟高手们也没办法理解——毕竟是一个星期的工作沉淀,哪有那么快理解的。大约30分钟之后,专家开始提出建议意见。这些意见一般涵盖了语法、编码规范、可能的业务错误、模块间关系等。专家们毕竟是专家。2个小时之后,专家们离去。
  • 开发人员虚心的把这些意见、建议写到小本子上。
  • 开发人员可能根据专家的建议进行相应的代码修改并且提交,也可能不;可能改对了,也可能不。评审过后,后续的实施成为黑洞……
  • 没了。

先思考一下,这个过程中的问题。


首先必须承认Code Review的价值。经验丰富的专家们在做代码审查的时候,能够根据以往经验,规避重大缺陷的发生,对开发人员给予有价值的指导。然而,这个过程,太冗长,太低效。

Code Review必须基于事实。这里的事实,就是,源代码库。SVN Repository, 或者HG/Git Repository. 在多人协作环境中,对于一份不在源代码库代码是基本不可信的 —— 你无法预知,他是否将会成为最终可工作软件的一部分。

积攒下来众多的代码修改,使得产生重型、低效的沟通方式成为必然。这类众型的沟通方式往往成本惊人 – 需要占用最好的人很长时间。

过分夸大专家的作用。根据以往经验,许多最终发现问题,回溯上来,其实是一些简单的逻辑问题。这些问题如果分散在平时结对或者更频繁的过程中,则更容易发现。很多情况下,是开发人员对常见的bad smell了解和修炼不足,而这些bad smell常常是导致问题的地方。例如在一个已经有3重循环的方法中加入了新的判断而没有测试;修改了函数的返回值而没有任何说明;if 判断中包含了多达4-5个变量的比较判断而没有抽象为一个更具业务含义的方法,等等。

Review手段的原始落后。Review必须基于变化。会看报表的人都知道,看报表只需要看两个东西:趋势和拐点。Code Review也一样,只需要看变化。SVN/Hg/Git这类现代化的工具给我们提供了丰富的,基于changeset的compare工具。查看一天,整个团队的check in情况,顶多只需要10分钟-15分钟。

在敏捷过程中,Code Review几乎是一个被忽视的环节——不是不做,而是时时在做。结对时,我们会对结对伙伴的编码习惯、新写的类、变量表示质疑;提交之后,有代码静态检查工具、单元测试工具、覆盖率工具帮助我们检查有没有犯简单愚蠢的错误、有没有破坏既有功能;持续集成服务器则中立、不知疲倦的在每次我们提交之后运行所有的过程。

Code Review不是一个审查环节。不是一个考核环节。它是交流和反馈环节。

文化的风化与侵蚀

Sunday, September 20th, 2009

常常听说,一个团队的文化就是团队负责人的文化; 一个公司的文化就是公司领导人的文化。究其原因,就是因为领导人的喜好和评判标准极大的影响着团队成员的荣誉感与价值观。这些观念和标准是在长期的工作和合作工程中不断碰撞不断沉淀下来最终得到的一个利益博弈的结果,表现出来的形式就是形式各异的企业文化,或者公司文化。

企业文化具备强大的同化能力。它是超越规章制度之外的一个做事方式、价值观的基本指导。许多公司的新员工培训采取的各种各样的方式,无不是想尽快让新员工适应这个公司这个大团体,与其他成员一起,向同一个方向使力。在《额尔古纳河右岸》中,年迈老人采用眩晕、饥饿、清洗肠胃等方法来训练原本桀骜不驯的老鹰称为帮手的过程,与这种文化上的趋同手段并无本质不同。

当在一个环境中已经具备一些文化认同的人,到了另外一个环境,有哪些行为会使得原本坚信的东西觉得恍惚?哪些事情会导致原本坚定的信仰开始动摇?哪些则会干脆彻底的重建原有的行事方式?

首先是寂寞。在东西方的神话中这类的例子屡试不爽。比如西游记里面各式各样的妖怪,大多是寂寞的发疯,逐渐忘记了规矩,成精之后下凡找点乐子。甚至是魔兽世界中众神的代表,泰坦萨格拉斯,在长达数万年的孤身与恶魔斗争中的,逐渐丧失了对正义的信仰,结果导向了恶魔的一方,称为整个世界的敌人。电影《无间道》中的卧底,长时间在正义与邪恶之间游走,最终也恍惚的分不清正义与邪恶。将一个人或者一个团队扔到孤立的地步是使其受到侵蚀的最简单的方式。有些人意志坚定,能撑较长的时间,有些人意志薄弱或者干脆正处于文化成型期,此时的寂寞很有可能直接导致文化上的风化、孤立与重塑。

随之而来的是诱惑。西方的哲学体系里面,人是有原罪的——例如贪婪、背叛。当有足够多的诱惑来临的时候,诱惑带来的好处、守护带来的艰辛,使得人的原罪发挥作用,原本坚信的东西开始逐渐动摇。

在实际的工作中,这些首先能看到的好处就是荣耀的来源。例如,在公司里面,人人崇尚敏捷,尊重事实,注重实效。做到这些能够得到同事、领导的赞赏。而当进行长期咨询工作的时候,发现客户对面面俱到的计划、华丽的图表等表面的东西更加赞赏。长期下去,工作的中心出现偏移,获得认可与赞赏的诱惑使得行事方式发生变化,长期下去,当这些行事方式成为思维习惯,带来的文化的变迁使得返回到原来的工作岗位时觉得陌生。

与荣耀相对的是惩罚。我们都是在正确与错误的事情中不断获得反馈和成长。一旦得到某些惩罚,很有可能对心灵造成很长时间的创伤,并且在长时间内处于敏感戒备状态,无论是新的环境还是旧的环境,都处于不信任状态。例如,派一个来公司不久的人,接受了公司文化培训,去处理客户现场问题,结果被客户大骂一顿。这位新员工可能在很长时间内萎靡不振,并且对公司和客户处于非常不信任的心理状态。

趋同心理则是最后一个效果最缓慢的因素,它的表现最快但是影响最慢。每当我们到一个新环境我们总想表现的跟当地的人一样,以获得最大程度的认同——起码从外表上——那些妖精都知道变成人形呢——如果客户西装领带,我们也不好短袖T恤;如果客户习惯在每个周五举办酒会,我们也乐于参与,等等。这些都是外观上的,但长时间的趋同很容易让人从外观上和内心上逐渐妥协并转换——就像中药,虽然见效慢,但终究是见效的,而且有可能是最能根治的。

< 请谨慎理解这篇文章——我没有在这片文章中给出任何防御性或者建设性的建议,甚至你都有可能无法看出我的立场。文化的变迁很大程度上是主观的,根据原因不同,我所经历过的文化沙漠的形成大多数组织领导在既得利益与文化建设之间的平衡不足造成。>

请理解交付

Saturday, June 6th, 2009

不知不觉间,似乎我可以开始归类一类程序员:他们有着相当厉害的编程功底,熟悉数据结构、算法、设计模式,能够熟练应用这些模式;在项目开发中承担主要编码职责,并守护着代码质量和设计的纯粹。然而,由于种种原因,他们没能参与最终项目的交付,而被调到别的项目,等等等等。在他们的经验体系中,交付,是个很遥远的词。

世界并不完美。我不得不这么说。因此当完美并具革命性的重构、设计遭遇到无法修改的却不能不做的实际业务功能时,我遗憾的看到,这类天才的程序员并没有表现出应有的职业素养。他们消极的抵挡着这些需求,并期待着有某些更富于承担责任的人来承担这些看起来无聊无趣的任务。与在开发阶段相比,在交付阶段,他们的贡献显得如此暗淡。

请理解交付。完美的项目几乎不存在。在开发阶段出现的问题,部署阶段会放大无数倍:环境的不确定性,以及人们对新事物的怀疑,以及对失败、错误记得比较牢固的天性,使得一个新项目的成功交付显得希望飘渺。要认识到,这个阶段没有人能逃离。保持坚定不移的勇气,和以交付为目的的广阔视野来度过这一阶段,才是真正为了交付而做出的努力。

单纯的威力

Monday, December 8th, 2008

有时候哲学、理论、学派、认知真是一个很古怪的东西:他可以在任何时候,以任何形式来激励你,或者摧毁你。《蝙蝠侠:黑暗骑士》中那个小丑,成功的腐蚀了高贵正直的检察官。小丑近乎无懈可击的理论,瞬间摧毁了刚刚失去爱人的检察官,也近乎摧毁了我这个观众的情绪。

昨天去看了《梅兰芳》──现在评论已经是铺天盖地了。我最有感悟的是,邱如白气呼呼的跟孟小东说:“从一开始,梅兰芳心里都是孤独的,这份孤独一直陪伴他走到了今天,直到遇见了你。谁毁了梅兰芳的孤独,谁就毁了梅兰芳”;另在片尾,
头发花白的邱如白,烧着一封封的信件,说:我逼走你(梅兰芳)最爱的女人,不让你穿的花哨,不让参加各种活动,是因为只有活得真实,才能演得真实。

好单纯。

中午的时候跟公司的销售出去吃饭,闲间聊天,他问我,Craig Larman给国内某公司做咨询,报价多少。我猜了数次之后才猜到。相对同样做IT咨询,显然比我们高太多。我又问把老马弄出去能报价多少?销售不屑一顾:他现场经验差远了。作为一个软件从业者,听到这样的评论心理确实不爽。将Craig与Martin的书做下比较,就会看到两人专注的方向差异之大了。

显然人们对其他人的评价都是从自己的经验范畴里面进行的。正如梅兰芳,正如Martin. 如果他们不像我们知道的这样成功,或者就如大多数人一样伤仲永,一次次爬起时被现实打翻在地然后索性倒地不起,也就无所谓大师,无所谓伟大。

晚上的《鲁豫有约》,谈到了罗大佑。与其同台的居然还有陈楚生。说实话我很诧异陈楚生能够出现在这样的场合:因为像陈楚生这样很自我几乎没有了──被鲜花、粉丝、掌声包围的陈楚生,在一首《有没有人告诉你》之后,再无新的创意了。活得不真实,感情自然也不会充实。自我型的歌手,当不再有自我,还哪会有歌呢。这个太快的时代,快得以山寨为荣耀的时代,不知道有多少人能够坚持下来。有听说江苏台《绝对唱响》(仿超级女生的选秀节目)的冠军第一名是长得很像小胖的女孩,还是被评委否决、被观众投票拉上去的。我听了她的演唱,也就那样了──作为19岁的女孩,算是不错的,但至少在我这个外行人听来离出众还有不少距离。因此这个结果,要么是听众欣赏水平不高,从造星的角度来说,更注重外型与实力的落差;要么就是,我侥幸的想,人们真的感受到了那份执着追求音乐的单纯。

《追风筝的人》讲述的几乎是现代的战争故事。小说中反复提到的白沙岗,前天刚刚被炸过,死了几十个人。小说中的主角,在自己最亲密的仆人,朋友,兄弟,在遭受最耻辱的对待的时候,反复犹豫,恐惧,冲动,退缩,最后屈辱的跑回去,用更极端的方式来维护自己的那小小的恐惧。而这给他带来的,是数十年良心的煎熬,以及来自上帝的惩罚──无法生育。最终他决定赎罪的时候,为时已晚。他的兄弟却毫不犹豫:“为你,千百遍。”

似是而非、模棱两可的中国式说法太多了:三十年河东,三十年河西;此一时彼一时;与理不容、情有可原;兼收并用……真正操作起来,做起来,却变成了“存在即合理”,一定也可以找到对应的解释。“我们不能取悦所有人”,那么不喜欢我们的人就是我们不屑去取悦的人。

是为记,随便写写。

蹦极:无畏,勇敢还是鲁莽

Monday, October 6th, 2008

国庆节间挑战了自己一把,在龙庆峡蹦极。

本来犹犹豫豫不想去,受不了8X钱钱马波众人的怂恿,他们赞助了数十元后(最多的赞助了十块),我签字走上了跳台。

我紧张,没话找话。问工作人员需要注意什么,他说没什么,别用手抓绳子。我又问他跳过没有。他摇头:没事跳这个干嘛。一时间有种被阴的感觉。远远看去,赞助商8X马波钱钱们远远站在围栏外等着看。说话间工作人员已经把我的双脚分别套紧,并用铁环勾上绳索。工作人员开始利索的把我往跳台边缘推。我觉得我一辈子都没有迈过如此小的步伐:每一步大概只有5厘米。仍然很快,我站在了跳台边缘的突出部分上,很小,我的双脚占据了大约三分之二的面积。工作人员依然在身后喊着:打开双臂,调整呼吸,往前,往前,往前……我底头很快的看了一下脚下,龙庆峡的水波光粼粼,再抬头平看去,山峦起伏,天空蓝蓝的,心里竟不知如何害怕,时间似乎静止了。

不确定是自己栽了下去还是被推了下去,头朝地坠落的那一刹那我闭了一下眼,没有任何感觉的。再睁开眼时发现水面在逐渐靠近,过了几秒钟,脚上被重重的扯了一下,整个人被拉了上去。倒过来看,远处的山,近处的水,俯视角度下的大河,山川,脑海中突然浮现出两个字,故乡。在空中静止的瞬间,整个人忽然无所冀盼,绝望的快感,让我闭上眼睛,不禁想到,这样,这样死掉似乎也挺好。来往的风声,使我呼吸非常顺畅,我很想大吼几声,张开嘴,却喊不出来。

两个开着快艇的船员在绳子不再弹跳时候靠近,用棍子固定着牵引我下来。他们在聊天,丝毫没有讨论我刚才那一跳是多么惊心动魄。倒是我爬上岸的时候,无数的游客看着我。

回想起来,现在还有些害怕。站在公司的11楼往下看,依然感到眩晕。当时跳跃的人真的是我吗?当时签名的时候,我发现那页纸上有很多放弃的人──超过3分钟不跳即为放弃。我依然记得小时候跟一群小朋友爬上树,然后纷纷往下跳,我却胆小蹲在树叉中间不敢跳,委屈的哭起来。而现在蹦极的,从40多米高空跳下的还是我吗?我是变得无所畏惧了,勇敢了,或者是干脆是鲁莽?

不清楚。

即便是在这秋天,龙庆峡大部分山还是被绿色的不知名的植物覆盖。小木船在清冽的水中静止的时候,我听到涧水轻轻拍打岸边石头的声音,一些灌到石缝,一些拍打石岩,嘀嘀咕咕,格外静谧。