工作手札

以正合,以奇胜

两个产品的交锋比作兵事一点也不过分。蓝海红海长尾,都是得好的诠释。十则围之,五则战之,不若则避之。这些说的是要不要打,在哪和谁打,而怎么打呢?这就是文题所说,以正合,以奇胜。

何谓正合,当头炮马来跳,这就是正合。好比大家都来做输入法,你没拼音,没词组,出词慢,词库少,这能行吗?不行。这就是以正合。当然,你若一心一意去做五笔,这是另外一个战场,暂且不提。把核心的东西做好,做好了你能围别人,做不好那就等着被围吧。这就是以正合。说到这,潜台词就出来了,正合完了,就该是奇胜了。

何谓奇胜,火烧连营,暗度陈仓,这些都是奇胜。再拿输入法来说,前有紫光后有微软,左有智能ABC右有拼音加加,搜狗怎么杀出血路的?互联网词库,皮肤,这就是奇胜。你有别人没有的,同时又是用户喜欢的,这就是奇胜。

然而,往往我们只记住了奇胜,却忘了背后的正合。远的不说,为何会有长征,为何会有星火燎原,图的是正合,只打对的不打贵的,打的起贵咱再打贵的。同样咱们做产品也不能一心想着出奇招,一招定天下。不去练内功,不去练基本招,别说定天下,来个人一招你都接不下。做事业也同样是这样,不能只想学别人一夜暴富,忘了学人家那么多年的苦功。

而如果只正合呢?那就是官渡赤壁的翻版,只不过你翻版的是败方。所以我们做产品,正合之余必需奇胜,两手抓两手都要硬才行。

代码就是最好的文档

敏捷开发讲究的是快速响应变化,所以相对而言很反对繁冗的文档,他们认为,当情况变得很迫切的时候,才是建立文档的时候。而这份文档必须简短,以论述框架为主。而最好的文档是代码,从代码里面才能够完整的了解整个系统的结构。所以敏捷开发强调重构的重要性,一方面重构可以提高代码响应变化的能力;另一方面则是可以保持代码的清晰和简洁,让这份最好的文档能便于阅读。

每每读到一个文件数千行代码的时候,我就会更加坚信这一点,好在,至少这个文件里注释还不少:)