乐趣区

关于云原生:论好文章和烂文章

作者 | 许晓斌
起源 | 阿里巴巴云原生公众号

写作动机

咱们为何写作?对于许多技术同学来说,写作是一件比写代码艰难许多的事件,和电脑相顾无言数小时,发现自己写不出什么像样的货色来,着实不是一种很好的体验。即使对于有些教训的人来说,写四千字品质尚可的文章,我预计也要花 6 小时以上的工夫,这还不算平时素材积攒的工夫耗费。

这么麻烦费劲的事件,为什么要去做呢?我认为此事有着极大的价值,这个价值分两层,我暂且称之为表层价值和深层价值。

表层价值是极其功利的,例如有同学想降职,而降职的一项指标是集体影响力,那么写文章就能晋升集体影响力;例如有团队 Team Leader 想招聘,那怎么让他人理解你及你的团队呢,写文章也是个不错的办法;再有一些就是冲着下级或者利益相干方写的文章,以相似我的项目汇报的形式写的文章。表层价值的外围关注点其实并不在文章自身,而在于文章背地的人,作者对读者的冀望往往不在于读者认可文章内容,也不冀望读者参加对内容的探讨,而仅仅是冀望读者疾速地认可作者这个人。

只关注表层价值去写文章,十分的轻重倒置。就好比写一篇探讨 PM 2.5 的科普文章,如果你一上来就冲着采购本人的空气净化器这个动机去写,其恶臭很快会从字里行间流露出来。

与表层价值绝对的,我认为任何一篇文章都应该从深层价值登程。这个所谓深层价值就是文章的内容,文章的观点,文章须要尽可能地主观,要向学术真谛的态度迫近。写一篇文章是因为对一个问题有着本人的思考,并且去具体理解了很多人的思考,发现了一些观点的抵触,并且不会为了政治正确去投合他人的观点;尽我所能把那些我认为有价值的想法,总结下来,用清晰、乏味的办法流传给别人;我能领会到写作的激情,这种激情来自于思维的乐趣,来自于观点的碰撞。这个写作的过程,本人的思维有成长,通过大量的逻辑思考,我的思维失去晋升;其次写进去的文章,对读者有着很高的价值,因为有价值的常识失去了流传。

还有一种写作动机就是想要流传有价值的技术,例如 Pivatal 公司的布道师 Josh Long 就写了大量的技术介绍文章,也有很多精彩的演讲。我曾问他为什么可能做的如此杰出,以致于多年被评为寰球 Java 畛域最有影响力的 20 人之一。他的答复是这样的:

I think that people don’t trust technology, they trust people. So, while it is possible that the spring team could just publish good documentation and leave it for the world to find, it’s far more compelling when u feel u can ask questions of someone. And u can see that they’re having fun.I love Spring because it has made millions of lives easier. It makes me happy to think about its application, to see people happy with its possibilities.

一篇文章写进去,是因为作者青睐一项技术,从心田认可技术的价值,置信技术的后劲;还是因为作者想抛售什么货色。这两者动机的差别,略微仔细的读者很快就能发现。当然,上述动机常常混合在一起,然而如果写作的次要动机都在表层,那么基本上这样的文章也就没什么价值了。

影响力

Josh 是 Java 畛域在全世界有影响力的人,他通过演讲,写书,博客,影响着全世界数百万的 Java 程序员,帮忙了 Spring 等优良的技术在全世界的推广。我写了一本对于 Maven 的书,这本书也得以卖书了几万册,再加上盗版 PDF 的数量,那是影响了全国十多万的 Java 程序员了,帮忙了 Maven 这一技术在中国的推广。我退出阿里 8 年多,在外部技术社区 ATA 发表了 60 多篇文章,累计的阅读数大略也有五万以上,我置信这些文章也给阿里的技术带来了一些渺小的侧面扭转。从这些角度看,写优质的文章尽管消耗很大的精力,然而因为其十分便于分享流传,因而可能疾速地影响许多人,而且这种影响可能继续的存在。

当然时代在扭转,以前因为网络技术的限度,文字的流传比拟不便,视频的制作及流传老本比拟高,因而演讲的理论影响力相比文章和书籍会弱很多。而明天的网络和视频技术曾经十分成熟,制作高质量的视频兴许更容易流传了。

文章也好,视频也好,影响力应该是被用来做正确的事件。明天管制影响力的很多流量入口,未然造成了一种新的势力,他们能管制什么声音容易被大家听见,什么画面容易被大家看见,什么文字容易被大家浏览,什么态度容易被大家感触。势力的造成进而演变成了势力寻租,而后这个事件就往往和所谓“正确的事件”无关了。

通过影响力做正确的事件,我感觉最好的例子就是张瓅玶(花名:谷朴)的这两篇文章了,第一篇是「API 设计最佳实际的思考」,第二篇是「警觉复杂度困局:关于软件复杂度的思考」。文章的内容都是工程师脍炙人口的对于软件设计的深度剖析和思考,但我感觉在这个例子中,比内容更重要的是这两篇文章中传递了一个十分重要的信息,那就是,“在阿里巴巴,即使是研究员级别,也是有人在仔仔细细认认真真看技术的,那些层级更低的却早已脱离一线的,张口闭口都说技术只是细节的管理者,见鬼去吧。”(当然,这个信息只是我个人观点,不能代表谷朴)

写作方法

咱们的基础教育仿佛在写作的造就方面很有问题,我印象中市面上常见的那些优良作文选,往往都是重视模式和套路,往往不足逻辑和观点,用一个成语总结就是“无病呻吟”,什么事件都要拔高抒情,以小见大,最终的后果就是假大空成灾。大家整体的根底曾经单薄了,而从事技术工作的同学,往往在读书的时候语文还是个弱项,那么后果就可想而知了。写进去的货色,要逻辑逻辑不紧密,要模式模式乱哄哄,根本的分段、标点、用词更是问题颇多。好在写作这个能力不是只在学校能力训练的,工作中也能够训练,而且显著有章可循。

1. 浏览量

郑子颖(花名:南门)在他的文章中强调了“多看”的重要性,他用豆瓣记录了年均 50 本以上的浏览量,这相当于均匀每周至多一本书,这是一个比拟十分惊人的数字。我回顾了一下本人的豆瓣记录,浏览量大略是他的一半,也就是年均 25 本的样子。浏览的好处自不必说,我这里想强调的一点是,一直浏览优质图书能晋升本人的文字鉴赏力,书读多了,拿起一本翻翻目录,其中找几个段落读一下,对于此书的品质,心里大略就有个谱了。本人写作的时候,其实大多数工夫也是在参考现有例子的构造和办法,如果你照着大量优良的案例学习,那么天然也不会差到哪里去。

我在写《Maven 实战》之前,浏览了大量的 O‘Reilly,Pragmatic Bookshelf,和 Manning 的计算机图书,这些公司出版的图书大都有十分高的质量保证,在介绍技术的时候,有清晰的由浅入深的构造,辅以大小适中的案例,以及不干燥的实践剖析。能够说,我就是参考着那些优良的书籍的写作构造和写作方法,写了本人的书,最终我的书也失去了整体不错的评估。

除了写作方法上的受害,浏览更重要的是从内容受害。再举例来说,我在「如何做好技术 TL」这篇文章中,提到了本人在做 TL 的这些年浏览了好多本讲治理的书籍,包含《赢》、《驱动力》、《门后的机密》、《非暴力沟通》等等,这些书籍极大水平上帮忙我补充了本人的思考脉络。写作即思考,而思考不是凭空出现的,思考须要原料,常见的原料就是咱们理论的工作教训,然而一个人的体验毕竟是十分无限的,而浏览别人的体验及思考,以谦卑的态度为本人的思考提供更多原料,显然是理智的做法。

「如何做好技术 TL」收到过一条很有意思的评论,评论是这样的:

集体认为治理相干的书籍都是鸡汤,不用看,如果须要靠着“教你怎么做治理”的书能力做治理,那么阐明这个人不适宜做治理。

这句话隐含的意思是,有些常识,例如治理的常识,是无奈传承的,只能靠本人本能领悟。对于此评论,我只能说无知者无畏了,咱们写文章必不可持有这种心态,即使本人的想法有如许独特、如许原创,也肯定不能自建藩篱,井底之蛙。

2. 素材

我最近一年始终在做云原生相干的工作,期间我始终在思考,到底什么才是云原生架构,目前行业里对这个词有十分多的解释,然而所有这些解释都没法给让我称心,它们都过于并重技术和云厂商的视角,而不足利用架构的视角。对于这个情况,我想基于过来一年,以及将来的相干工作,对云原生架构这个概念写一些货色,对其概念做一些补充论述,帮忙大家更好的应用技术,文章还没写进去,然而动机就这样造成了。

有了这个动机,再联合我本人集体的一些趣味,过来一年我始终在积攒素材,这些素材十分有意思。例如,我间接深刻参加了国际化中台和考拉的我的项目,他们的架构基于云原生的技术,以及许多阿里云的产品,做了十分大的降级;我也具体理解了菜鸟如何在云上构建平台服务他的合作方公司;学习理解钉钉、IoT 这些自身在私有云上售卖服务的部门,本身是如何在云上架构。我通过 IM,电话或者面对面的形式和相干的同学沟通,他们都十分敌对地知无不言,而后我整顿相干的资料,再从中剖析雷同的模式。人脑十分喜爱模式识别的刺激,我在做这些事件的过程中也是乐在其中。除了理论的案例,行业资深人员的观点也是我平时收集素材的起源,例如林昊(花名:毕玄)最近写了一篇名为「云原生的进一步具象化」的文章,他们的文章通常不会随声附和,仔细阅读会发现一些比拟原创的观点。

除了上述和指标主题关联度十分大的素材外,我还发现跨学科的浏览也往往会给本人带来动向不到的播种。还是以云原生为例,尽管我在这个畛域工作,然而最近一两年我始终在断断续续的浏览一些经济学的书籍,包含曼昆的《经济学原理》等(我预计好多人买了这套书了,然而真正认真读完的非专业人士还是比拟少的)。在学习经济学的思维形式时,我就想从经济学的视角去解释云原生这个事件,本来自建的技术基础设施,在云的时代在逐步演变的基于云的基础设施,这背地的抉择对于业务来说,从经济学的角度应该怎么去剖析?自建的老本和效用是什么?购买的老本和效用是什么?将简单的业务技术架构拆分成一层一层之后,或者能够逐层剖析,在每一层做一个从经济学角度最优的抉择。

3. 思维导图

我最早理解思维导图是因为读了「Pragmatic Thinking and Learning」这本书,书中介绍思维导图的外围用处是把一个主题相干的所有内容,无论重要主要,都在一个图中写进去,那些一直拓展延长的线,不是为了形成一个清晰的构造,而是为了给大脑显示什么中央思维能够进一步拓展。因而画思维导图的形式应该是尽量凋谢自在,指标是把主题相干的内容全副展示进去,思维导图的目标不是建设清晰的逻辑构造。因而,当我看到很多画的思维导图实际上是一个目录的时候,我感觉他们根本都用错了。

写文章(做演讲也是相似的),都是一个先凋谢后收敛的过程,在后期一直积攒素材,应用思维导图拓展思维,建设资料的关联,就是凋谢的阶段。这个阶段中能够适当让逻辑思维退到幕后,把眼光关上,不要过多评估(建设构造,分主次其实就是一种评估),用一种相似空杯的心态去聆听和察看事实世界及别人想法。我在做演讲或者做文章之前,总会先找个宁静的中央,筹备好咖啡,关上 MindNode,或者间接找拿出 A4 白纸和笔,给本人半小时到一小时的工夫,把主题相干的思维导图画一画。宁静免打搅的环境、没有工夫的压力、富裕精力的大脑,这些条件放在一起,才可能让本人从手头事务的聚焦中移开,让大脑中平时得不到关注的意识浮现进去,而后落到纸上。

4. 构造

将大量的资料胡乱堆砌在一起作成文章天然是不行的,作品必然要有一个清晰的后果。在修建中,咱们耳熟能详的有古希腊修建的柱式构造,也有哥特式修建以尖拱券、肋拱、飞扶壁等因素为外围的构造;在程序中,常见的 MVC、分层、微内核等模式也是清晰的构造。文章的构造能帮忙作者把本人的观点清晰地表白,疏导读者在清晰的门路中浏览。在有了思维导图之后,我通常会从那些纷繁复杂的资料中提取出一个最合适的构造,而后再基于这个构造组织资料。

写技术文章还是有一些常见的构造的,以下是几种范式:

  • 解决问题型构造。这种范式通常围绕解决一个具体问题登程,常见逻辑是:背景介绍 -> 提出问题 -> 探讨解决问题的思路 -> 解决问题 -> 价值总结。这种构造可能是工程师最相熟的了,因为大家都擅于解决具体问题。
  • 常识介绍型构造。这种范式通常用于新技术的介绍,常见逻辑是:行业背景 -> 技术提出 -> 简略 Demo -> Core Conecpts -> 概念深刻及 Demo(1- N 次)-> 前景剖析。大家平时看到的很多技术介绍文章通常应用的是这样的构造,这样的构造的益处是能够由浅入深地介绍新技术和新概念。
  • 观点输入型构造。这种范式相较于后面的两种会更有挑战,常见的逻辑是:总体观点 -> 子观点 1 -> 子观点 1 论述 -> 子观点 2 -> 子观点 2 论述 … -> 总结。这种构造的文章写好了力度是十分强的,然而写起来十分有挑战,因为观点的论述须要丰盛的素材以及紧密的逻辑推导,稍有不慎就有胡扯之嫌。

当然,咱们在写作的时候不用拘泥于这些范式,也能够推敲本人的范式,但不管何种范式,背地总是存在一个有逻辑关系的构造的。有一本书叫「金字塔原理」,我听到很多人推崇(尤其是在绩效季的时候),我看了下介绍和评估,讲的就是如何用高效地形式让对方了解你,我没读过这本书,但应该就是讲行文的构造和逻辑的,有趣味的同学能够买来看看。

5. 观点

不是所有的文章都有观点的,例如你写文章总结本人如何解决一个性能问题,不肯定须要有观点;介绍一项技术,如 Rust,不是非要表白观点。然而可能表白本人观点的文章通常会更有吸引力,例如解决性能问题的时候强调了解排队论的重要性,这就是一个观点,容易让人印象粗浅;介绍 Rust 的时候,断言其在性能敏感的场景将来会占据统治位置,也更容易让这门技术吸引人的眼光。当然,观点是须要论证的,其坚硬性和你论证的投入度成正比,逻辑推导、数据撑持、案例剖析都是十分好的论证伎俩。

咱们也看到有一些文章满篇观点,但根本都是援用,一会是乔布斯,一会是张小龙,一会是马云等等;当然,更常见的是援用公司高管的话,谁谁谁在什么时候说过什么等等,而后用这些内容来反对本人的资料。我感觉偶有援用无伤大雅,总是援用就只能阐明本人没有观点,或者观点有力,须要强力给本人撑持。

更有勇气,能体现本人素材丰盛,思考深度的观点,反而是那些敢于说出皇帝的新衣的文字。技术文章应该是具备迷信精力的,迷信是基于对过来一直的 say no 倒退进去的,技术文章也应该敢于表白 say no 的观点,不必怕得罪人,咱们应该明确,正确的技术 / 架构 / 计划,应该是经得起质疑的,因为如果技术是谬误的,即使当下环境没人敢质疑,工夫长了,事实会让谬误须要付出的代价呈指数倍回升。因而,相比于通篇正确的废话,敢于对现状 say no 并提出本人背面观点的文章,更值得推崇。

6. 故事

严格来说,给本人的内容添枝加叶的整故事,对于逻辑论证没有任何帮忙。然而要让本人的文章 / 演讲有吸引力,故事的元素是必不可少的。人类进化到明天,大脑对逻辑的反馈是十分慢的,而且须要经过训练后能力了解逻辑,然而对于故事的反馈,三四岁的小孩就有,人类晚期流传下来的精力,例如希腊神话和圣经,都充斥了精彩的故事。直至明天,无论公司内网,还是微博,大家对吃瓜的激情之高,岂是逻辑论证能点燃的。故事很容易引起人的共情,让人将心比心联想,而后大脑皮层就容易嗨了,神经网络被激活,各种激素开始分泌……

这是人类生理的事实,所以咱们写文章的时候要尊重(利用)这个事实。要讲一下程序性能不好导致身边的共事中午 3:20 分电话惊醒了;出了故障导致超市收银机被砸了,介绍新编程语言的时候要秀一段代码,顺便搞个比照说 Java 不行;介绍 Mesh 的时候就要说你原来降级中间件得这么干这么干,当前不须要了,等等……

我介绍本人「Maven 实战」的时候喜爱讲一个实在的故事:

在我书出版的前些年,因为虚荣心作怪,我特地喜爱去各大售书的网站刷评论,什么亚马逊,豆瓣,京东啊等等,一条条的去看,看到 5 星评估就喜滋滋,看到低 1 星或者 2 星的就很怄气,当然,大部分评估都是很侧面的。直到有一天,我在京东刷到一条 1 星的评论,我就一边惆怅一边关上评论,但读罢我就乐了,那个读者打 1 星的起因是这样的“让你们老板泡奶茶,差评!”原来是因为那阵子刘强东奶茶爆出了恋爱的新闻,伤了这位读者的心了,而后我就躺枪了。

这个故事其实和我在书中介绍的技术没有任何关系,然而我却喜爱讲这个故事,因为他会让听众会心一笑,而后记住我写过一本对于 Maven 的书。

烂文章是怎么的

讲了那么多怎么写好文章的办法,我也想说一下烂文章都长什么样。所谓烂文章,就是指那些对于读者来说,简直没什么任何侧面价值的文章,更有甚之,不仅没有侧面价值,还存在负面价值。以下我稍作总结:

  • 集体笔记成文章。本人解决了一个技术问题,做了一些记录,而后写成文章收回来了。这类文章充其量只能称之为素材,因为没有总结提炼,而且齐全是从一个人的视角登程写的,读者读起来,不仅感觉不到体系,有价值的局部更通常是少的可怜。
  • PPT 贴成文章。作者在某个中央作了一次演讲,因为想流传给更多的人,因而就用贴图的形式整顿成了文章,善意点的,在图片的两头在补充一些解释文字,就这么成文了。我先假如这个演讲自身的品质是不错的,有逻辑,有观点,有案例,然而即便如此,这样的所谓文章,其浏览体验也是十分差的。在演讲中,PPT 是辅助“讲”的,如果只有 PPT,那真正外围的“讲”的局部就失落了,因而,更负责任的做法,应该是演讲者用丰盛的文字把所讲,用清晰的形式写下来,而不仅仅是那几页干瘪的 PPT。
  • 用宣传战功的形式写文章。组织外部此类文章不足为奇,题目会带着很多常见的如“总结”,“年度”,“体系”,“反思”,“瞻望”等词,通常这类文章既没有体系,也常见反思,其次要的目标是邀功。根本套路就是,写在在一年中做了很多事件,后果十分好,配几个看起来差不多的框框“架构”图,再直白点,就要上合影了。这类文章前面通常会有很多赞,但根本没有探讨,探讨个啥嘛?作者来邀功了,莫非你说他做的不好得罪人?从常识流传,促成思考的角度来看,这类文章价值简直为零。
  • 各类贴图成文章。相比用 PPT 贴图,还有用各种其余图贴成文章的,思维导图间接贴,设计图间接贴,流程图间接贴,监控图间接贴,一顿看下来就是没见几行字。好的图,确实是一图胜千言,然而那也仅仅应该是点睛之笔采纳,如果篇所谓文章全是图,就齐全看不出重点,也看不到体系。文字是十分有力量的,文字能够把读者拉入到作者的思考体系中,用逻辑和修辞去疏导读者的思考。或演绎,或推导,让本来荫蔽的常识展示;或雄辩,或风趣,让作者的观点闪光。写作应该充分发挥文字的力量,不是只有图才有架构,不是只有图能力体现思考,相同,图往往因为其不精确性,成为很多人拆穿其思考有余的工具。
  • 正确的废话成文章。官话套话,动辄形象到极高的高度,从公司策略说起,洋洋洒洒一顿剖析,满眼就是最近被鞭挞得厉害的那类字眼,什么“顶层设计”,“底层逻辑”,“赋能”,“抓手”之类;如果找不到清晰的逻辑,就来个 1.0,2.0,3.0,4.0,5.0,6.0,反正主版本号加 1 就是比后面牛逼了,至于为什么小版本号素来没人用,不晓得,反正 N.0 就对了,间接 N 是不行的,间接 N.0.0 也是不行的。读罢这类文章你说不清楚哪里是错的,你惟一明确的就是这文章啥价值都没有,你又节约了几分钟生命。
退出移动版