[关闭]
@yy125 2017-03-13T14:17:09.000000Z 字数 6465 阅读 97

敏捷写作

写作


mantis-shrimp-manado.jpg Coutesy of Yang, Yang
越来越多的朋友加入到科技写作的队伍里,将自己团队的故事,或世界各地发生着的科技动态整理和分享給读者。InfoQ的编辑朋友建议我把写作心得整理一下,供刚开始从事这方面工作的朋友们参考,所以,我想谈谈自己采用的一种方法:敏捷写作

短小精干更易读

我刚开始为InfoQ写东西的时候,曾问编辑Tina Du,“写多长合适?”,Tina的回答很简单,“讲清楚,就结束”。技术短文一般是为了讲清楚某一个问题,并延伸到一些思路。比如通过麻省理工学院发布的Tapir来反映一些基于LLVM的创新。

现代人的沟通和阅读都越来越追求效率:直接切入主题,谈完就翻篇。 读者们往往利用地铁上,等人时,旅途中等时间进行阅读。 15到30分钟能读完的文章,更容易理解,也更有可能被转发。

针对这种碎片化的阅读,写作也应该有所调整。可以像特朗普的竞选演讲一样:围绕自己的理念,选择读者喜欢的多个题材展开一系列探讨。每次谈透一个内容,传递鲜明而有力的观点,激发读者想象,并在读者打哈欠之前,谢幕离场。

经常写,短而精,边写边践行,既能整理和启发自己本职工作,又能确保头脑敏锐,更高效地思考和做事。事业和投资一样,时间和创业同样能带来收益。

什么是敏捷写作

三四天的写作周期比较合适。太长,则耗费精力太多,得不偿失;太短,又无法保证文章深度,不如不写。因此,我个人比较喜欢采用“敏捷写作”,分为五步:
1. 以主干为核心,一口气写完。切忌发散;
2. 选1-2个希望深入探讨的内容点适当展开。每个内容点也要一口气写完;
3. 离开书桌,出去见朋友,吃东西,散散步,让更精彩的文字来找你,比如开头和结尾;
4. 对不满意的地方重写或改写,也尽量一口气写完;
5. 审校、交稿;

敏捷写作的重点在于,快速完成,多次迭代。和写代码一样,每次集中精力,60-120分钟写一个部分,中间不被打断,这样的“时间块”的产出最高,也更容易挤出来。一篇文章大概5-7个部分:背景、难题、原因、解决方案、相关技术和一两个细节的深入讨论。这样能保证3-4天写完普通难度的文章。

讲清楚一个问题有很多方式,不存在“最优”,而“逻辑完整”更重要。如果一个部分没写完,换个时间接着写,又得重新思考逻辑,或者觉得某些地方不够好,忍不住去改。这样,每次都会不必要地重复。下面,我们仔细看看这5步。

主干胜于一切

把主干讲清楚就能得八十分,所以不求花哨,只求准确。不要花时间去想背景,或如何开头。直接进入主题更加易读,比如讲llvm的最新动态,可以这么开头:2017年2月,麻省理工学院的研究团队正式发布tapir项目,是为了在并行开发上用llvm……
A. 想解决什么问题?
B. 如何解决的?
C. 举个应用,或解决过程中的挑战。
A+B+C就是主干。用词、参考资料都必须非常准确。内容必须环环相扣,水到渠成地得到结论,让读者跟得上,看得懂。高质量的主干,决定了整篇文章的水准,即使语言朴素,也没有关系。这也是文章的第1.0版。

如果主干不够清晰,而花精力在背景、开头结尾和某些技术细节上。不仅不能让读者带来启发,而且浪费时间。

集中讨论1-2点

第二步是对1.0版的改善。写主干的时候,肯定会冒出好点子,比如深入讨论一些技术要点,或增加一些情节等等。此时不要马上转到这些点子上,而可以先在文章尾部记一下,马上回到主干本身,一口气写完再说。把细节讨论留到第二步,得到2.0版。

离开书桌,让灵感来找你

前两步都是基于主动思考,埋着头写,应该比较顺畅。即使遇到技术难点,快速查点资料也能搞定。但2.0版可能比较枯燥,文字不出彩,缺乏好的开头和结尾,情节不够吸引人等等。此时,就该离开书桌,让脑子放松放松,出去玩玩,等待灵感来找你。有趣的开头、结尾或标题,常常是不经意间突然冒出来的,而不是硬想出来。 即使最终没得到像样的灵感,也没关系,文章主干容易理解、准确而严谨,比其他都重要。

个性化的内容,更有读者缘

第三步的3.0版本之后,自己对该问题的思考也会更宏观、更深入。有时候会联想到自己的某个经历、项目,或某个相关理论,因此可以通过第四步进一步加、删,修剪,调整顺序等等,让文章水分更少,观点更犀利,或者激发读者更大的想象空间。这也是“个性化”的一步,注入自己的观点,加入更接地气的情节,让读者更有共鸣。

追求整体紧凑,文字跟着思想跑

最后,再检查文字,检查链接,再次确保逻辑严谨、结构紧凑、用语准确。
这些步骤本身看起来普通,但关键在于,写作过程中,尽量让思想跑起来,让文字追着思想跑。一口气写完逻辑,确保核心观点的逻辑严谨,内容完整。不要追求修饰性,不要打开一大堆网页,迷失在一大堆素材里。

无论是写代码,还是写文字,我们都有这样的经历:有时一开始就停不下来,会忘了时间。即使停下来,脑子里还是工作状态。所以一旦进入状态就要充分利用起来,尽量一口气写完一个部分。这就是敏捷开发提高写作效率的关键

如何提高质量

第一要旨:讲清楚

如果围绕一个技术问题展开,那么核心逻辑的每个环节都应该讲清楚——挑战是什么?核心问题是什么?解决方案是什么?实施过程有哪些问题?有哪些亮点? 20%的技术细节可以放在链接里,但即使没有链接,也能确保读者能看得懂80%,而无需进行额外搜索。
写作时,有两点特别重要:
一是单点精炼,整体模块化。宜家的布置很合乎消费者心理:整个店面分成很多相对独立的区域,比如客厅、卧室、书房、厨房、阳台、儿童房间等等,每个区域的产品不多,绝不发散、紧凑而传神。文章可以借鉴这个策略:如果由5-7个部分组成,那么每次写一个部分,内容不求多,但求准确,则更容易集中精力来写出严谨的逻辑,确保读者看得懂。

我个人更崇尚语言的精炼和准确,胜于生动。能否让读者看得懂,比文字感染力更重要。如果花时间去想带着银边的娱乐性语句,那么花在观点本身上的时间就打折了。

二是务求准确。这也不仅是对读者负责,也是提高自己的过程,把自己头脑里似是而非的东西夯实。同时,用语和内容都力求准确。比如Context是“上下文”?“场景”?还是“环境”?Additive是“累加”还是“可加性”?自己拿不准的话,参考国内论文的英文摘录是个好办法。

对内容本身的求证可以借助知乎、维基、Quora、Stackoverflow等。对比较复杂的问题,可能要查作者引用的论文,这一过程也能大开眼界,带来很多启发。对难点较多的选题,可以先选一两个方面讲透彻,今后再从另外角度,用其他文章陆续阐释。

每篇文章通过多次迭代逐渐修改,并通过多篇文章,逐渐探索一系列问题,这样读者和作者循序渐进,压力都不大。

够分量

人类社会最不缺的东西之一就是文章。无论是题材、观点、专业度、文字功底都是山外有山,天外有天。那么,如何才能算一篇“够分量”的技术文章呢? 不同的媒体、不同的作者都各有一把秤。个人认为,好的文章在两个方面做得比较好:
一、有鲜明的观点。谈论人工智能的现状和趋势的人很多,而百度首席科学家Andrew Ng的一个视频,引起许多关注。他提出,人工智能在经历两个冬天之后,已经进入永恒的春天,而开始取代一些人类工作岗位。这样的观点鲜明而不含糊。读者记得住。因为关系到自己发展,也会额外关心。文章应该能引起读者的某种反应,或看到机遇,或避开风险,或获得娱乐,或更加关注,否则只是写给自己看的笔记。

二、有广度或深度。大多数题材都有一两个点值得展开探讨,让更多的读者产生共鸣。光介绍某个时序预测的开源项目进展,显得相对单薄。而介绍时序分析里的基本概念、模型、可解释性和可计算性等,则能引起更多希望从事数据分析的读者关注。这种深挖不一定是预先计划好的,可能只是在确认某个技术点时,收到更多资料启发,所想到的。
同时,从不同的角度进行描述,也有助于读者理解主题,比如同样的难题,有没有其他解决思路?该技术近期有没有其他领域的应用或案例? 其发展经历了哪些阶段?相关论文也能提供更多细节、测试结果、或类似技术的优劣。尤其是介绍比较新,且公开资料比较少的技术时,建议大家从论文里获得更多的信息,提升文章的技术含量,为读者提供更透彻的介绍。

边学边做,方便读者动手尝试,也是非常有实际意义的一环——从哪些地方获得教程、试用、沙盒?有没有可供试用的公开测试案例和样本数据?

需要注意的是,一两个点的深入讨论足矣。“到底是什么?为什么?”需要靠严谨而努力的主动思考来回答,而不能靠整理一大堆搜索结果。松浦弥太郎在《思考的要诀》提到,“如果用Google等网络搜索引擎,就会立刻搜出无数看似答案的结果,但这些并不是答案,充其量只是“看似答案的东西”。当你因此而感到满足,……,就再也不会花心思去思考了”。甚至,他认为“妨碍思考的,往往是知识。”,所以,一定要紧紧地抓住自己的思路,先从内心里寻找答案,尽量把逻辑写完整。对不确定的地方,压缩成非常具体的问题,快速记录在文后,写完主要部分之后,再去逐个有针对地求证。而不要用搜来的内容代替思考

内容够丰富

看文章类似徒步旅行,从A点到B点的途中最好有山有水,最好再偶遇个桃花林。你如果是设计师,会怎么设计这个路线?每个作者对“景点”的偏好不同,写作目的也有所不同:偏重工作原理还是如何使用?展望未来还是指导起步?追求浏览量还是专业深度?总的来说,能为目标读者提供新鲜、有共鸣、有实用价值的内容,更容易传播开来。我个人喜欢采取讲解和可操作性相结合的方式。比如《到底什么是数据科学家》包括了两大部分,一是数据科学家的工作内容,二是如何逐渐成为数据科学家。读者更容易和自己实际情况结合,进行参考,并传播给其他朋友。

根据自己的精力,调整路线的长度,在保证写透的前提下,建两三处观景点就够了。对于小篇幅技术文章而言,这个过程实际上是边写边决定的。写作过程中产生的新点子可能比最初计划的更自然,更有新意。可能跟自己最近一个新项目有关,或者跟一个刚发生的新闻有关,因此,文章大纲不必一开始就确定,而是留下足够的空间,供写作过程中的即兴发挥。不过,文章主干必须确定,敏捷写作的第一步需要忠实完整地一口气将主干写完。这些半途产生的点子可以在后面两三句话记录一下,等写完主干再考虑。

提升传播效果

看文章类似看电视剧:情节太慢或啰啰嗦嗦,则催人换台。读者和你智力相当,仅仅在知识上需要你的讲解,因此文字要尽量精简,拧干水分,删减到底。

同时,在内容安排上,追求的是浏览量?还是技术含量?关于SIMD、CUDA等指令和代码优化的文章虽然技术含量高,但短期读者少。而预测、高并发支付架构、便利的AI工具包等短期浏览量可能更高。短而精练的系列短文更容易确保频率和新鲜度,读者读起来没压力,内容也更透彻、有益。而深入讨论的长文有助于被引用,更加长寿。虽然不像论文那样权威,但门槛更低,远期的传播效果不错。

同时,浏览量和媒体有关。公信度高的媒体,能带来更高阅览量,比如InfoQ、一些技术博客专区等,对于IT文章的传播效果都很好。专业微信群当然也很重要,不仅为了点击率,也为了广交良善。

在确保文章严谨、准确的前提下,逐渐加入剧情和人物,也有助于增强可读性,比如更生动地刻画工作中的对话、项目片段,或某些人物,甚至主动塑造一些角色等等。

说中文,说简洁的中文!

能否转化成更地道的中文,不仅是语言水平问题,也是理解问题。 “可解释性”、“可加性”,到底什么意思?某些“xxxx-ility”或"xxxx-tion"形式的词,比如“availability”,是否换个说法会更流畅?在语言规范等方面,InfoQ的《社区译者应该了解的翻译规范》值得参考。

当然,任何一个语言都需要吸收新的词汇。中文本身也从日语和佛经里借用了大量词汇,比如经济学、社会、进化、自由、世界、现在、刹那等。 以Hacker为例,为中文带来了“黑客”这个新词。不过“Hacker”现在描述两种不同的技术人,一种是破坏型黑客,另一种是“技术控”,所以写作者也需要有所区别,积极地推动中文词汇的推陈出新。

如何在短时间内集中精力?

我们的注意力正在被无处不在的APP、综艺节目和电视剧组团劫持,而写作正是夺回注意力的一个很好的训练。敏捷写作能让你逐渐摆脱手机的干扰,更善于“召唤”并保持注意力,高速高效地解决难题,以保留更多的精力去做更重要的事,比如“生活”。

你可以先从一个更容易的注意力训练开始:冲刺式阅读。比如平时把想读的技术文章收藏在微信里,趁上下班乘坐交通工具的时间,逼着自己把几千字、中等难度的技术文章读完。然后逐渐提高难度,比如HBase的存储方式和用例、CUDA的用户手册,甚至某JOIN算法的经典论文等等。

大脑也遵循牛顿第一定律:当合外力为零时,它将保持该死的静止或直线匀速运动。你得靠“行动”来改变它。所以,当你感觉自己难以进入工作状态的时候,也可以强迫自己开始,比如从简单的内容开始写。有时候边写,边会让心安静下来,脑子逐渐会随着指尖在键盘上的跳动,进入文章逻辑,并展开思考。如果自己实在难以进入状态,可以借鉴松浦弥太郎介绍的一个办法:先离开电脑。在面前展开一张A4或更大的白纸,盯着它,定定神,再开始思考,比如内容结构、素材、观点等等。一旦进入状态,就不要轻易转移注意力,比如不要随意搜索素材,也不要随意跳到其他部分的内容。

同时,每个人的注意力有限,不是你想集中就能集中,也不是想坚持多久就能坚持多久。所以要善用自己的“注意力时段”,并将需要全神贯注的任务放在这些时段去做。举个例子,我的注意力时段包括:
- 清晨下床之前;
- 午饭或晚饭时段;
- 下班前后,比如16:30-20点;
- 晚上10点后;
- 人为训练形成的短时段,比如上下班地铁途中;
- 不接笔记本电源,光靠剩余的电池,也能迫使人集中精力;
所以,我会有意识地趁同事们去吃午饭时,读或写比较复杂的内容,让脑子跑起来,争取在办公室重新热闹起来之前,完成尽可能多的内容。

需要注意的是,写作也有副作用:有时候会让人沉入到写作状态,难以转换,比如睡不着觉,或写完仍宅在家里。大脑从一个状态转到另一个状态总需要时间。所以,快速离开写作状态,和快速进入一样重要。 每个人都有出来的办法,我是靠“走”,比如逼着自己离开座位,换个地方。

技术写作的好处

IT企业越来越需要技术领导们从更宏观的技术视角,提供更具前瞻性的洞见,而不只是拘泥于眼前的客户和竞争对手。常常思考和总结,保持独立视角,对技术企业的作用非常之大。 我曾有幸为一位SQL-On-Hadoop事务型开源项目的CTO工作。此人在美国从事大型数据库的技术工作二十多年。类似的开源或商业产品不少,而我们的营销资源和力量都不足。美国同事中有一线销售经验的人数几乎为零。这位CTO,在短短一年多的时间里,发表多篇技术白皮书和大会论文,以不同的难易程度,阐述了将事务和分析融合到同一套SQL引擎,架构于诸多分布式底层系统上的挑战。微观上,讨论了对数据分布和直方图、倾斜、事务、多版本、执行计划优化、SQL多层次分布式执行、HBase优化等等。凭着一系列的高水平的文章和分享,持续吸引了北美重量级的合作伙伴和客户,继续支持该项目发展,确保团队的完整。

领导者是眼光独特而执着,还是过度乐观,是创业和新项目最大的风险之一。写作的过程让人冷静思考,用逻辑和事实来考验想法,让领导者更清醒,团队更团结,产品和招聘也更有号召力。

对于普通人来讲,写文章能否帮你赢得好工作? 赢得客户?赢得年度最佳员工奖? 不一定。 像Steve Jobs讲的那样,我们做过的事像是一颗一颗珠子。当时不一定知道它们能带来什么样的未来。直到某个时刻,当它们以某种方式串起来的时候,每颗珠子都有用,并组成了独一无二的你。写作就是这样一颗珠子,5-10篇文章就能让别人更从容、透彻地了解你,折射出你的理念、技术和思考水平,带来更多的机遇。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注