代码改变世界

博客二三事

2009-10-16 01:03 Jeffrey Zhao 阅读(...) 评论(...) 编辑 收藏

其实我一直想写篇文章来谈谈博客这些方面的事情。我虽然在博客上投入了很多,它也是我工作和生活中非常重要的一部分,也自认为写的不少亦不差,但是一直缺少对这方面的总结,以及系统的思考。即便是看着一轮又一轮地“年度总结”过去,我也没有针对我的博客讨论过什么内容。之前也有过朋友问过我博客方面的事情,也有一些讨论引起我的思考,但都没有下决心写点文章。而这次就趁着一些冲动,细细谈一下博客方面的事情吧。

从2006年开始写第一篇博客至今,我已经写了整整三年的技术博客了。从我博客右侧的“随笔档案”一栏,可以观察到我每个月写博客的趋势(如图)。记得起先我是靠分析ASP.NET AJAX源代码得到社区肯定的,不过在一开始并不顺利,因为当年在ASP.NET AJAX方面的社区领袖是Dflying Chen,声势如日中天。当时ASP.NET AJAX还处于CTP版,还叫Atlas。直到有一天,微软发布了Beta 1,推翻了CTP中的几乎一切。在社区一片抱怨声中,我在一个周末翻译了ASP.NET AJAX Quick Start的全部7篇(还是9篇)内容,发表在博客上。从这时候起,我开始得到了社区群众的认同。

这几年博客园发生的事情大都记不清了,不过上面情况还可谓历历在目——不过这些不是重点,我想说的是,有朋友说我能写,写得多,产量高,其实这也是阶段性的。

从图表上来看,一开始的几个月更新比较多,之后我也开始有些懈怠,博客的更新频率也减少到了每月10篇左右,中间在07年的8月和9月还有过停止(具体原因记不清了),不过最终还是保持了一定的写作频率。不过到了08年春节后,基本上就很少更新博客了,其中的少量文章也大都和技术无关,直到09年开始我才重新开始有规律的博客更新。这大半年的时间里,我大都把精力扑在工作上,还有便是减肥(效果相当明显,前后总共减了80斤,而且保持到现在还没有反弹)。进入了09年,我开始加大了博客的写作力度。其中最主要的原因是在这停滞的大半年中,积累了非常多的素材。慢慢的,写博客也成为了我的习惯,几乎一天不写就会感觉不对,写作频率也越来越高,几乎到了一天两篇的地步。

所以我认为,产量高只是一个“现象”,而最终的关键还是两个点:

  1. 积累素材
  2. 养成习惯

记得从小写作文就被教育说,要注意观察生活,要拿个小本子记录点滴。如果放到了技术方面,它其实也就相当于保持对技术的敏感程度,多进行思考和记录。我一直劝别人写技术博客,但经常有人回应我说“没有内容好写”。我觉得很奇怪,因为我觉得工作会给你带来许许多多的素材。例如,对今天的产出是否满意,该如何提高效率,怎么做可以更好等等。当看到某个新技术新名词时,可以和自己以前接触过的内容进行交叉比较和联想,这也可以产生题材。我认为,只要我们在不断的吸收新东西,不断地寻求改进,总是有东西可以写的。

有朋友猜测我是个技术狂人,生活中只有技术。不过我个人认为,我的生活其实还是挺丰富多彩的,每周要去健身房三次,周六整天基本上是用来看电影看美剧和玩游戏。但是,我基本上不会让自己的思考停顿。例如,我在每次跑步之前,都会特地在脑子中记录一些需要思考的问题,如果在去健身房的路上忽然发现脑子空了,我甚至会回到电脑前“自寻烦恼”,例如快速地浏览某个语言特性思考它能怎么改进API设计,例如查看To-Write List中某个可写的话题,思考我该使用哪些示例如何论证等等。这样,我在枯燥乏味的跑步和洗澡过程中也能最大限度地利用时间,而且此时你会发现,5000米的距离不知不觉就跑完了。同样的,我每天上下班时单程要花费1小时15分钟甚至1个半小时的时间,但是在这段时间里我会抓紧时间,在漆黑的路上想问题或看手机,在地铁等有灯的环境里看书。后来为了保证效率,我又下狠心投资了四千多元钱买了一个Kindle DX(如图),这样我便可以在其中放入许多不同的书,根据当前的心情,想看技术内容就看技术,没心情就看点小说或历史等等。看得多,思考的多,自然可写的内容也多。目前在我的To-Write List中还有大约20条左右的纪录,虽说并不都能成文,但也至少已经可以保证我下个星期的写作内容了。

不过,三心二意也有副作用,例如我不止一次把换下来的运动衫留在健身房,拎着空包离开了——还好我大都能及时回去拿。

有人问我,你每天要写那么多博客又回复那么多,那么你要花多少时间?我承认,的确不少,但是应该也没有你想象中多。因为我打算写的内容,都是事先准备好的,可能在此之前已经利用零碎的时间想的清清楚楚明明白白,甚至连提纲也已经列好,只等“码字”。如果您已经完全想清楚要写什么东西的时候,其实写作的速度是很快的。记得在高考时,往往都要求在30-40分钟内写出1000字的文章,其实我写文章的速度也和它差不多。但是我写文章和高考时的区别便是,高考是在绞脑汁憋字眼(好吧,我只能说我是这样的),而现在我更像是“倾斜而出”,或是“整理”和“组织”。一般来说,现在我可以在1小时内写大约2000字的“纯文本”,或者1000多字带有代码的文章。代码是时间杀手,它会打断思路,让它变得美观也是一件需要耗时调整的事情。在一段时间内它让我有些苦恼,不过现在也已经熟练了,配合着色插件,效率有了质的提高。这也是合适工具的威力。

从我在博客上出没的时间上来看,我的确是在工作时间访问博客园,甚至写博客。不过由于我文章写得比较快,因此一般9点到公司后会立即动手,而中午花15分钟吃完饭(有食堂就是快)之后,又进入了中下午的写作时间。基本上来说,目前的做法不会影响工作。还有便是,我的工作比较自由,老板也对我比较放心,因此我可以在博客上花比别人相对更多的时间。我必须承认,博客是为我自己而写的,但是我也想表达这样的意思,就是我写博客,公司也可以获利。因为我的博客是我的思想总结,几乎全部是我工作中的体会,而这个总结是公开的,这也是公司其他员工可以访问的资源。例如,有许多情况下,在同事遇到某些问题的时候,我会给出自己之前写过的某篇文章给他作为参考。相对的,如果我为他解决了这个问题,我也会尽早将其写成博客。此外,写博客对我个人的提高,我的提高最终还是可以反映到公司的效绩上。在这种“思维方式”的驱动下,我占用工作时间写博客可以说是心安理得。而且,似乎也不是我一个人这样想的,例如有人认为学习必须是工作的一部分,你应该向你的老板提出这一点。我想,一个坚持博客的人,他一定会有良好的表达能力,这是成为一个优秀技术人员的基础。

但是,既然学习是工作的一部分,那么学习也必须要有可以衡量的产出。我看到有些朋友会抱怨说在工作中很忙,而且学不到东西。我想说的是,如果你确定要学习,就要“证明”你真的学习并提高了。而证明你学到东西的最好方式之一,便是写出总结或心得体会,而这自然而然就成为博客了。我一直也劝我的同事写博客,我想如果大家都写博客,那么相当于在公司内积攒起了大量的Knowledge Base,便可以相互交流,共同提高——可惜,效果几乎没有。因此我认为,对于大多数人来说,不写博客的根本原因还是在于自身,并不是公司等外部环境。

博客也是个人的经验的总结,坚持一段比较长的时间之后,你便可以通过回顾之前的内容来了解自己思维方式的变化。我从自己的博客中看到了自己明显的成长轨迹,以及对待相同事物的看法。回想一下,您是否还记得去年的今天你在做什么,对于目前你手头的工作会有什么看法?事实上,对于一个人来说,了解别人的发展轨迹都比了解自己来的彻底。如果没有文字这种记录形式,日子一天天地过去,真也就过去了。我不时会听到一些朋友抱怨说,以前某某事情明明知道怎么解决的,现在冥思苦想也回忆不起来了。此时我就会想说,既然互联网上找不到解决方案,以前你又知道该怎么做,为什么当时没有写一篇博客记录下来呢?

此外,当你有了博客,当你在互联网上用这种持久性的方式来展示你自己时,也能获得很多回报——即使你的本意并不是这些。例如,你可以认识更多的朋友,你可以提高自己在社区的知名度,获得更多的机会,也从来不会缺少“猎头”,博客就是我最好的简历。因此在我看来,专业博客应该属于一个人职业发展中非常重要的组成部分。例如我自己,我在写技术博客之初,并没有想过要如何如何,在当时我看到社区中的专家也是敬仰万分,更没有想到我会在.NET技术社区留下一些印记。但是坚持博客之后,我发现我也能做到很多东西。例如,我也可以轻松地申请到MVP,我也有机会在MSDN Web Cast和TechED等技术会议上作演讲。诚然,获得机会的同时也会带来压力,但压力在一定程度上也是一种动力。例如,我为了维护在社区中的“光辉形象”,就必须先于大部分人把一个问题给挖深挖透,这样才不至于“露陷”。例如,我在做了InfoQ中文站的编辑之后,就必须订阅大量博客,并且在关注世界范围内的技术讨论,必须让自己用客观的头脑去思考,去比较,去分析。久而久之,这些原本是在压力下“不得已”的做法慢慢变成了习惯,最终提高的还是我自己。

有人说,真正的高手哪会写博客,他们的工作很忙,写博客的都只是半桶水。我不这么认为,你看我博客栏右侧收集的博主们,有哪个你认为是半吊子?这只是一个做事方式和习惯问题而已。习惯真的很重要,它可以让一件事情成为自然,如自然而然的写博客,让你在享受便利的同时也不会觉得有任何负担。但习惯也是需要坚持的,我在国庆8天内放纵了8天,差点都没有心思写博客了。幸好,我还是坚持了下来。

在这三年时间里,我的写作风格也是在不断变化。从一开始,我是抱有“讨论”的心态来写文章,虽然一贯追求严谨,但还是比较自然,随意。后来我在得到社区认可之后,心态也慢慢发生了变化,写文章的目的也慢慢变成了“传道授业解惑”。如果您观察我几个月到半年前的文章,会发现它们是我写博这段时间内质量最高的,文章都很长,几乎篇篇三五千字,因为我几乎都是以写书的要求在写文章——虽然我从没写过书,那么就算是“理想”中的书吧,希望能够“无可挑剔”。那段时间是我写博客最痛苦的时段,对脑力的消耗很大。忽然有一天我意识到这并不是我所期望的方式,我并不是想通过“教别人”什么东西来获得满足感,我需要的是讨论,是提高。于是,我几乎在一刹那间完成了写作方式上的改变。例如现在,我会写越来越多我自己的心得体会,我犯的错误,甚至是我自己还不够成熟的猜想。于是,文章数量自然而然就上升了,而且评论也热闹了很多,我有时候可以静静的在一边看别人争论,从中吸取灵感——于是又冒出了下一篇博客的素材。写作——讨论——思考——再写作……这是一个良性循环。

我也乐于讨论,也乐于看到别人指出我的错误,因为在这时候我得到了反馈,就好比别人在指点我,最终提高的是我自己。所以,我有时候很不理解某些作者会说“我写博客是我的事情,你凭什么来指手画脚”。在我看来,写博客的目的便是引发讨论(你说放在首页却不希望别人评论……)如果只是看到“顶”、“学习”之类的支持,虽然是善意,但又有什么意义呢?让别人多多指出问题还可以避免在一片赞扬声中沉迷,我认为社区是盲目的,会盲目地认为一个人是专家,进而盲目认为一个人是权威,进而对他的言论不产生任何怀疑。我承认,被人吹捧的感觉很好,但是在短时间的飘飘然之后我也会提醒自己,我不是来要满足感的,我是来讨论的,社区群众的盲目支持和追捧是有害的。同样,当看到一个人对我有批评,我肯定还是会不爽,但我也会提醒自己吸取好的——可惜我在认为自己正确,而对方在不停“乱来”(甚至故意找茬)的情况下还是会心急。

因此我认为,写博客真可谓“有百利而无一害”,我在招聘的时候也会更倾向于接受能坚持对自己的学习过程进行总结的人,也不仅仅只有我这么做把博客作为招聘依据也比看简历、看“年份”要靠谱多了。所以,如果您还没有写技术博客的习惯,现在就开始写吧。如果您是公司的Leader,也请在团队里建议大家写一些技术博客吧。

我也会坚持下去的。