开发者学堂课程【顶级大咖教你如何打造技术品牌影响力:《技术创作能力对我职场进阶的帮助》】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/1057/detail/15602
《技术创作能力对我职场进阶的帮助》
五、如何写作
1、内容素材
写作源于工作,源于思考。工作中思考的模式很简单,就是定义问题,分析问题,解决问题。套路简单,但是实践起来非常难。
(1)定义问题
其中特别容易忽略,特别是初入职场的同学特别容易忽略的一点,但又非常重要的是定义问题,也叫做提出问题。如果一个问题都没有定义,即使后面把这个问题解决得再好,价值都不大。
所以,定义问题非常非常重要。
要清空自己脑中先入为主的倾向,不要认为自己擅长做什么,对哪一个领域和哪个技术更了解,就定义一个需求或者定义一个问题和自己的擅长匹配,就是不要手里有锤子,看什么都像钉子。
比如说,在做技术选型的时候,首先要透彻理解问题和需求,再来判断什么技术方案合适。不要反过来,因为擅长这项技术就选择它。
这个是不对的,定义问题最重要的就是要找出关键的问题。
关键的问题特征
①关键问题能揭示事物的本质。
比如只要回答了某个关键问题或者某一些关键问题,那么大家就都明白了,这个事物的根本要素是什么。
②关键问题是具体的,是可以被验证的,而不是一个宽泛的描述,这一点在实践中非常重要。
比如实现一个计划需要多少的人力和资源成本,这是个好问题,这是做成这件事情所必须回答的问题,这就是关键问题。
再比如采用一个技术方案,如果要用这个方法优化性能,能将性能提高两倍,五倍还是十倍,这也是关键问题。关键问题是必须要做出断言,必须要做出预判,这样才可以前面有判断,后面有验证,才是合理的。
③解决该问题以后,就可以实现关键性的目标或者结果。如果要解决的问题对最后的结果没什么影响,那这肯定不是关键问题。那就应当考虑一下值不值得花精力解决问题,想要找到的关键问题到底在哪。
因此,寻找核心问题就是认识深化的过程,需要不断的积累,没有捷径可以走。
在实践中,可以通过不断缩小子领域,提出越来越具体的关联问题,然后回答验证关联问题,通过这种方式不断逼近关键问题。
因为关键问题揭示了事物的本质,或者是要做成一件事的关节点,一开始可能不太能马上找到关键问题,特别是对于难的复杂的问题,但可以通过提出一系列的问题逼近它。
(2)分析问题
分析问题有很多的内容是值得通过写作来沉淀的。
比如面对一个问题,首先是调研业界已有的解决的方案是什么,它的思路是什么,有什么优缺点,这种就是类比的思维。
因为从已有的范围出发,参考看是不是适用于我们的问题,这是大家都很熟悉的思维方式。通过编写调研报告对业界的现状有比较全面的认识,当积累了很多的素材后,可以对素材进行分类,抽象,提炼,跟通用的思路,这个就是归纳。
回到之前提到的设计,分布式系统的例子。刚才提到,它可能包含实例的编排和调度,负载均衡,留空,容错设计等好多主题,顺着这些主题可以细分出很多的子主题,然后对这些素材进行分类和归纳,当我们对主题的理解足够深入以后,通过分类归纳,建立起层次化的知识体系后,基本上就可以说自己是相关领域的专家了,这个需要花费大量的时间积累。
最后一点是顿悟,这个和想象力是对应的,这个是比较难的,如果知识面足够宽,并且通过大量练习建立了深入的洞察力后,有可能找到解决问题的新思路。
比如是否能发现这个新的技术方案,产品形态或业务机会,这些就体现了想象力。
(3)解决问题
在这个工作中,主要就是体现在落地过程中可能有哪些风险,如何控制风险,这些也要通过协作来梳理细节,提前预判风险,并且制定对应的预案。
在工作的每一个阶段,定义问题,分析问题,解决问题的每一个阶段,都可以通过写作来深化认识。
2、如何写作-内容形式
(1)比较重要的一点,就是不要把PPT或者思维导图当做写作的主要形式。因为PPT 和思维导图记录的是高度抽象的论点或者结论。
比如,现在我和各位分享我关于写作的观点。那么,我可以通过PPT把关键点列出来,让大家能更快的理解我讲述内容的结构和要点,所以可以通过PPT或者思维导图理解知识结构和关系。但只有 PPT 或者思维导图,还不足以帮助我们掌握知识。最大的问题是缺少细节,一个真正的领域专家,一定是对细节了若指掌的。因此,不要把PPT或者思维导图作为写作的主要形式,或者说当你试图去在某一个领域里面积累,或者是想要去理解某个问题的解法的时候,不要只梳理思维导图或者做出的 PPT,就认为已经了解。这个离真正的了解还差得远。必须要对这个知识点相关的细节足够了解,例如能不能详细列出来这篇文章论据的细节,或者通过逻辑推理来证明论点,这样有细节的支持,那可以说是了解了这个点。
所以写文章远比写PPT难,魔鬼在细节里面,今天和各位来分享这个内容,其实除了 PPT 也提前写了一篇几千字的文章。
(2)在工作中,写作的方式比较多样,例如写一个需求或设计文档,写一个故障报告,这些都是写作。大家一定要养成好的习惯,不要在钉钉或者微信等即时的工具上面的,给别人提一句话的需求,或者一句话描述一个问题。鼓励大家能够通过文档的方式把详实的细节有条理地呈现出来。这样不但自己的理解加深了,别人也更容易形成共识。
(3)文章内容的结构到底应该怎么样。对技术类的文章来说,基本上可以参考论文,论文的结构比较清晰,当然写的内容并不需要像论文那么深入,但是可以参考文章结构,比如首先就是背景和动机介绍,这个部分主要是需要解决什么问题,为什么要解决,然后是相关工作部分,相关工作就是要说明业界已有的这个方案及其优劣,好的方式应该抬头看一看,这个问题是不是被别人已经解决得很好,能不能借鉴。
接下来是解决该问题的思路和方法,如何验证效果。这就要说方案的细节了。
未来改进,就是当前的方案,因为各种因素权衡,可能当前有些局限,那未来在什么时间点,需要进行什么样的改进。
如果按照这样的方式组织,这个文章的结构就会非常清晰。
(4)大家要重视,就是写作不要大段拷贝已有的内容,即使通过别人的文章学习新知识,那也不要把别人的文章单纯拷贝过来,而是要通过自己的话来描述。比如学习一个算法,那就需要用自己的文字,把算法的执行步骤和正确性的证明都描述清楚,过程就会强迫透彻理解算法的细节。如果大段拷贝,知识只是快速流过大脑,就跟看短视频一样,没有被消化吸收,不能形成价值。
六、写作是否会影响工作效率
在工作中,也时常面临一些困惑,就是写作会不会降低工作效率。从亲身经历来看,曾经犯过的比较严重的错误,就是只把代码视作工作唯一的交付。写作很困难,会花费很多时间。在互联网或者初创公司这类比较强调产出效率的工作环境,可能就常常忽略写作,而是想着尽快把这个代码实现,推上线,这件事情就算完成。
这样最大的问题就是较难沉淀出对一个领域系统化的了解,也很难沉淀出非常有效的工作方法论,不利于个人的成长。而对团队来说,如果没有对一个事情深思熟虑或者有计划,实际上是不可能有效率的提升。所谓的敏捷开发中的敏捷来源于良好的规划。因为没有想清楚要解决什么问题和解决方案是什么,立即就动手,事情成不成基本上就是碰运气。
而且从个人的经历来看,或者观察别的案例会发觉,如果没想清楚,最后大概率都会返工,这样更浪费时间。
所以就像前面探讨的,面临一个复杂问题的时候,怎么样能想清楚复杂问题的解法。写作就是非常好的手段,能够理清思绪。在写作中填充大量细节的时候,就意味着对这些细节比较了解。
所以最后写出一篇让自己满意的逻辑清晰,内容详实的文档,就意味着对这个事情有很好的掌握,再动手编码的效率非常高。
而且有文档以后,在跟别人协同的时候,别人就可以更好地了解这个领域,了解你的想法,了解这件事情的关键点,大家在一个事情上有了共识,就可以更好地协作。
所以,写文档并不会拖累工作效率,它对于整个团队的效率的提升和团队文化的养成是非常关键的一点。而且通过写作沉淀出来的高质量的文档,是团队最宝贵的财富。
新来的同事怎样能够快速了解工作要点,团队如何能够重新回溯或者复盘曾经做的产品和技术上的重大决策背后的逻辑,这些都需要文档。
写作是在帮助团队成员更快地成长,帮助团队更容易形成共识,它对整个团队的效率有很大帮助。
最后很高兴能够和大家来探讨写作对职场发展的价值这个话题,写作是一个无论对于个人能力还是对于团队的效率都行之有效的方式,虽然它很难,但是值得坚持,而且只要坚持下去,就一定能感受到它的价值和成就感。
现在就开始写作吧。