程序员必知必会之blog篇
网易广州       赖勇浩(http://blog.csdn.net/lanphaday
本文最初发表于恋花蝶的博客(http://blog.csdn.net/lanphaday),欢迎转载,但请务必保留全文完整,不得用于商业目的。
缘起
虽然我写博客到现在只有两年多时间,但因为文章多是原创,还经常被推荐到CSDN首页,又在几个杂志上灌过水,所以也有不少朋友问过我相同的话题:我在学习/工作中有很多感悟,但我写不出来啊,有什么好方法吗?问这个问题的有师弟师妹,也有朋友同事,甚至有一些是有近十年经验的资深技术人员。
后来看到CSDN blog开通了近20万个专栏,却只有不到55万篇原创文章,平均一个专栏还不到三篇文章。这说明有很多程序员,想写却写不出来,写了却没能坚持下来。这终究是一个方法问题。
向我咨询的一位有十年经验的资深技术人员,他给我看了一些他的作品。我惊叹于其中的技术,极力鼓吹他把其中的技术体会写出来,但他的回答是:我也想写出来给大家参考,但我下笔写不了三句话啊!
眼看着一个个技术专家有心无力,无可奈何地看自己的技术流失;眼看着一个个年轻后进无法分享学习路上遇到的困难和解决方案;眼看着大家上穷碧落下黄泉,用尽谷歌加百度也无法找到有效的参考方案。我感到自己有责任站出来,分享自己写文章的心得和套路,让更多人能够写博客、乐于写博客;把自己的所得分享给大众,回报行业,回报社会。
看图作文
无论现在你的成就多大,你也不得不承认在小学(甚至是幼儿园)学到的东西让你终生受用无穷。看图作文就是这样一门有用的学问。
(本图纯属非商业用途引用,版权归原作者所有!)
看着上面搞笑的漫画,无论是谁都能写上一两百字吧?
其实,看图作文法是写博客的好帮手哦!君不见多少网站编辑就靠这招就能混得人模狗样有房有车么?千万不要小看啊!我们写技术文章的时候,可以套用这样一个套路来写文章:
1、 先画几幅图,如软件需求图、架构图、界面图、细节图等若干;
2、 针对每一幅图写一段话,三五句,讲清这幅图的功用即可;
3、 去掉图片,通读全文,做好各段的衔接;
4、 修改文章,直到满意为止。
一开始我们就多弄点图,像太平洋电脑网的评测文章一样。慢慢地,图的数量降下去,文字的数量升上来。最终,您终于修练成Word无图而心中有图的不二法门,就神功已成了!
回眸说明文
咳,大家都还记得说明文是我们学习过的众多文体之一。但作为一个技术博客的作者,写的文章大多应该是说明某一种技术(或算法或架构)实现。因此掌握说明文的写作有着举足重轻的意义,在继续下一步之前,我们有必要再复习一下说明文的一些要素。
说明文是解说事物、阐明事理的文章体裁,最重的是要把特征、本质和规律讲清楚明白。说明文通常都具有知识性,这种知识可能来自于文献资料、研究数据或者自己的实践和调查所得。说明的时候要有一定的条理性,也就是顺序,必须搞事物特征或者人的认识规律来安排。知识性和条理性方面最好的范文就是各种药物的说明书了。在这里有一份“小儿甘草锌片”的说明书http://www.chinapharm.com.cn/html/database/drugmanual/730/TYV30243701092005KPD.html,如果大家对照葫芦画瓢,把自己要分享的技术(或算法或架构)以这种填表式表达出来,未尝不能达到清晰明了的效果。您可能会笑话我竟然把技术跟药品混为一谈,并认为他们风牛马不相及,但我给你举个例子,你看看有着最完善的技术文档之称的MSDN,是不是像极了药品说明书?下面看个.net类库里的Keyboard类的文档:http://msdn2.microsoft.com/zh-cn/library/microsoft.visualbasic.devices.keyboard(VS.80).aspx,语法、备注、示例、层次、安全、版本和参考信息,一类一类列下来,简明清晰,我等学习的典范。
说明文主要是说明事物给人知识,所以既可以写得平实(如MSDN),也可以写文艺化一些(如我的博客上的《Mixn扫盲班》http://blog.csdn.net/lanphaday/archive/2007/06/18/1656969.aspx)。说明的方法有下定义、作诠释、作比较、打比方和分类别等等,具体的可以再参考当年的教科书。
十句作文法
上面废话了这么多,难得您还能忍着呕吐感看到这里。为了报答您对我的赏识,我决定在这一节开始白话一下我的两个独门密招:十句作文法和测试驱动写作。咳,虽然我号称独门,不过据我所知,用这两招的人非常多,相当多;特别是苦难的高考期间紧张在黑色六月的祖国的花朵们,经常用这两招。
十句作文法不是我原创,是中学的时候,我的英语老师教我的。那时我数学经常考一百分,语文就差了点。我的老师看在眼里急在心里,为了培养一个能文能武的学生,他在某个冬日的午后,在痛批恨铁不成钢之后把这个独门秘方传授于我,从此我就走上了作文高分之路。
首先要指出的是十句作文法并不是一定要写十句,通常是8-12句。这种方法对付考试是最有效的,但也可以应用在我们的技术文章写作当中。十句作文法其实是最低阶的写作方法,汗,我在前面似乎把它吹得太神乎了?因为十句话往往只有200个字左右。200个字能说清楚些啥啊?没关系,只要我们不停地迭代(不知道什么叫迭代?)和递归(不知道什么叫递归?)应用这个方法,200个字也能清易扩展到2000个字。古龙曰过了,最简单的,就是最有效的。
文章就像水,没有固定的形状。不过,文章也像水,有源头、有主体和终端;就像再长的河流也最终也要流入大海,再长的文章,也逃不过“始、中、终”三个字。只要我们掌握了这一点,自然就能一切通杀了。
有了上述理论(气宗)指导,下面十句作文法(剑宗)就显得相当简单了:
始(第一段):
       主题句一句,通常应用开门见山法。
       扩展句一句,用以深化主题,通常应用烘云托月法。
中(第二段):
       简介一句,通常应用承前启后法。
       下面用时间、空间、逻辑、总分、并列或者因果等法讲述事物/事理,共六句。要用的方法有彩线穿珠、小中见大、顺应时空、尺水兴波和联想对照等。
终(第三段):
      
结束句一句,用以总结全文、升华主体思想,最典型的做法是:啊,多么伟大的中国人民啊,他们创造了与世无匹的世界奇迹!
       有了这十句之后,我们就可以以小段为大段,以句为小段,对每一句再应用一次十句作文法,文章自然就体积胀大,而且结构分明,看起来蛮像一回事了。(附注:如果有读者正在考英语四六级之类的考试,十句作文法绝对可以帮到你!)
本文最初发表于恋花蝶的博客(http://blog.csdn.net/lanphaday),欢迎转载,但请务必保留全文完整,不得用于商业目的。
测试驱动写作
       虽然十句作文法是老师传授于我,但测试驱动写作却是明明白白的我的原创。证据?还真没什么证明,不过在百度上搜索”测试驱动写作”,找到的网页数目为零,也算是一个证据了吧?http://www.baidu.com/s?ie=gb2312&bs=%BF%AA%C3%C5%BC%FB%C9%BD&sr=&z=&cl=3&f=8&wd=%22%B2%E2%CA%D4%C7%FD%B6%AF%D0%B4%D7%F7%22&ct=0
       测试驱动写作的灵感来自于编程界流行的测试驱动开发(Test Driven Development,简称TDD),简称TDW。因为TDW和着与TDD相同的血统,所以TDW也有着TDD的优势。文章简洁可用是TDW的目标,它通过先思考如何撰写文章,并罗列相关的问题要点,然后再写出文字;通过比对问题要点,循环修改添加其它观点,直到文章完成。大家都是程序员同行,TDW的优点我就不说了,请参考大家耳熟能详的TDD优点;下面我只是谈谈TDW的过程:
1) 明确要写的主旨和内容,最好是列一个提纲。
2) 在表格上写明这篇文章要达到的目标、效果、字数甚至体裁和段落,作为测试用例。
3) 利用十句作文法(或者其它方法)快速完成一个文章原型。
4) 针对测试用例比对,记录下未完成和完成得不好的地方(Bugs)。
5) 修正Bugs,然后再回到第4步
6) 对文章进行重构,润色。(放到blog上的话,这一步可以不做)
7) 文章完成。
由TDW的过程可见,十句作文法是TDW的基础,要进行TDW,必须有一种快速的原型开发方法。TDW是对十句作文法的扩展和迭代,是弥补十句作文法写的文章有骨无肉缺陷的有效手段。只要掌握了这两种方法,肯定能写出受人肯定的技术文章,为自己的博客添光彩。
Next Works
诗人陆游《示儿》诗中说:“诗为六义一,岂用姿狡狯。汝果欲学诗?功夫在诗外!”
是啊!云对雨,雪对风,晚照对晴空。要学会这些套路并不是难事。就像武学一样,在学会长拳通臂之后,讲究的是融汇贯通。无敌寂寞到左右手互博的周伯通也打不过杨过单手黯然消魂掌,是因为杨过已经把他对生活的感悟融进了功夫之中。李杜两人领衔中国诗界一千余年无人出其右,也正是因为他们的诗已经融入了他们对生活的感情!放翁一句“春如旧,人空瘦,泪痕红浥鲛绡透”让多少人为之泪流,也是因为《红酥手》这首词融入了他几十年的情感!
相信通过我的文章,读者能够掌握一些写作的方法和技巧。也许在一段时间之后,您也喜欢上了写博客,喜欢上了与大家分享自己的所得所思。这时您可能想把自己的文章写得更有文采一些,也许您仍然会回来问我,希望我再跟您交流经验。我在这里先说一句吧,我不是大文豪,如何把文章写更富有文采和风格,那不是我能回答的问题。我只有一句话也大家共勉:
功夫在文外,文章不够好,归根结底是因为对生活的积累太少。
相关文章
程序员必知必会之maillist篇
程序员必知必会之Email篇