突然有感而发想到这样一个话题——什么样的人适合做技术

直接说例子

当遇到一个技术问题后的解决思路

比如浏览器里报出了这样的错“Access to XMLHttpRequest at ‘https://xxx.com’ from origin ‘http://xxx.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origini’ header is present on the requested resource”

A 同学:之前不认识这种提示,然后找到相关人员了解到“哦,原来这是跨域导致的问题”,然后找后端在服务器配置里增加了跨域请求的配置,解决了。然后 A 默默把这个知识点记住了。注意!是记住了,像是背下一个数学公式一样的背下来了,或者把它当做笔记一样地记在自己某个记事本里,实体的或者电子的。

B 同学:之前不认识这种提示,然后找到了相关人员了解到“哦,原来这是跨域导致的问题”,然后他就开始好奇了,啥是个跨域呢,他打开搜索引擎去学习跨域是什么(这也就是很多程序员自嘲自己是面向搜索引擎的程序员,其实这不是坏事,搜索引擎就是程序员的图书馆,大多技术点都能够通过搜索引擎学习到原理并消化),学习的过程中他自然而然就会再学习到什么是同源策略。

最终他一知半解的学习了这个新的概念,虽然还是感觉迷迷糊糊的,但起码他今天学习到了新的知识点,自己的技能栈也得以进一步完善。当下一次,再下一次遇到跨域的问题时,他都会结合不同场景去加深之前对跨域的理解,最终达到对这个知识点的精通。

久而久之,他可能做到对浏览器内部原理精通,前提是他能够坚持长期保持这样的学习方法并深耕某一技术领域。


那我们来分析这次事例,这是一个知识点吗?是的,就是跨域,但这是像数学公式一样的东西吗?不是的。

数学公式是什么,是公式,是能够解决计算问题的一种程式,不管是推导公式还是原始公式,都是很基础的工具,你给它输入各种各样的输入值,都会得到确定的计算结果,也就是输出值。

这很像面向过程编程思想中的函数,还有现在前端流行的函数式编程中的纯函数,其实编程和数学一直都存在很强的关联性,甚至计算机的发明就是数学家用来处理数据运算的机器而已。

那么回到我们这个问题当中,浏览器中的报错是一个公式吗?不是,它是一个结果,是因为你的配置不符合浏览器的同源策略限制,所以浏览器告诉你这里的访问跨域了,不让你进行访问,这是一个结果。

至于这样的结果是唯一的吗?不是,有很多种,至于有多少种,那就要看浏览器同源策略的限制有多少种,只要你不满足其中的任何一种,你都会遭到跨域警告,而且每种违背同源的警告内容可能都会不同,当然大致都是在告诉你跨域了。

那么这样情况下,A 如果只是记住了这个结果,有意义吗?有一点。但是对于他个人的技术成长没有帮助,因为他并没有通过这次跨域警告事件而真正认识跨域这个东西,他只是记住了这个知识点,像文科生背历史事件一样。当下一次遇到相似但不相同的情况时,他可能仍搞不定,而且还需要再记住一种新的情况。

如此长期下去,如果有心者可能会意识到这个问题从而转变为寻找众多相似知识点之间的规律,去试着探寻问题核心。但如果没有这个心,那就是在不断地记忆新的知识点,直到背不动为止。那个时候他会觉得做技术太难了,要记的东西太多了,而且庞杂无规律,数量巨大。渐渐地,他可能会开始质疑自己是不是不适合做技术。

这样的人的确不适合做技术,但如今互联网公司的程序员们中大量充斥着这样的人。


那么 B 同学这样的是否适合做技术呢?是适合的。这就是当下互联网领域最受欢迎的技术人才类型,也就是具有研究型人格的人,他们往往对于每个技术点背后真正的原理感兴趣,能够不断深入到技术背后的本质,并不断完善自己的知识体系,形成一个完整的技术栈。这种研究型人格的技术人才是做技术岗位的不二首选。

image

我这里说的只有 A 和 B 两个同学,但其实实际工作中会有 ABCDEFG 各种同学,这里举例的 AB 同学其实只是代表了面对问题时思路反差比较大的两类人,一类是记忆型学习人格,另一类是理解型学习人格。两者无对错之分,但有分别适合的职业和岗位之分,如果把自己的学习方式用在错误的职业位置上,会长期难以得到职业成就感。

但我们反观研究型人格的人,他们也可能因为太过于执着于每件事情背后的本质,每件事都期望能够通过追本溯源找到确切的结果,而恰恰并不适合做管理岗位。因为管理是要和人打交道的,人和技术不一样,技术是死的,冰冷的,而人是活的,温度各异的。人有情绪,而且变幻莫测。技术的发展走向起码是有规律可循的,而人没有。

人类作为在地球上进化千年的有机体,并且在征服了各大生物种群之后成为世界主宰者,可以说进化的十分复杂。


那么管理字面上说是管理,其实更多的是和人的交流,对于不同的人采用不同的交流一方式,没有固定的方法,也没有可以用于计算的公式。这一点不管从可变性上还是复杂度上都极大地超越了技术。

所以说适合的人做适合的事才是最高效正确的,乐于洽谈的人可能就是很难静下心来研究每件事物背后的本质。但他恰恰能够通过言语交谈办成事,而且能够通过合适的方式劝服他人去做某件事情,比如召集一帮技术很厉害的人去研发一款软件,并且使他们充满激情地做这件事情并乐此不疲。

image

而适合做技术的人呢,可能就是很难去通过言语去取悦他人,而是更加乐意和冷冰冰的机器去交谈。因为他们的确善于操纵机器,对于机器里的每一个二进制的变动都心中有数。这样的人就适合做技术,但也不是绝对的。有些人也能够通过技术老本行先在科技界建立一定的威望,然后再利用这个光环转去创立公司,转型成为管理者,但是这样的人少之又少,仅有的那些成功转型者名字,大家也都知道了。

那么我们每个人适合做什么事呢,需要花时间去和自己对话,认真思考自己的定位,先找到自己某个阶段适合做什么工作,再去落实执行,或许会事倍功半。但凡事没有绝对,也永远都有人唱反调,有人就是不管三七二十一先做了再说。但读过历史的人都知道,事前做计划的确会降低失败的概率。

最后,推荐一本最近在读的书《人类简史》

杂谈结束,后会有期