作者:ex7776647 | 来源:互联网 | 2023-09-14 08:02
如果第二次看到我的文章,欢迎右侧扫码订阅我哟~ ??
每周五11:45 按时送达。当然了,也会时不时加个餐~
?我的第「113」篇原创敬上
几乎每个程序员都知道github,但是知道目前上面有多少repositories的估计没几个。
Z哥今天去看了下,最新的数量显示是1.39亿个。
?
▲截图来自于github.com
而这个数字在2008年那会只是3.3万个。
这个增长速度可谓真的是“爆炸式增长”。
与此同时,大家也都享受到了开源技术逐渐繁荣的红利。如今,构建一个大型的、面向广大互联网终端用户的系统,变得越来越容易了。
而且现在你也可以经常在招聘网站看到,很多任职要求中动不动就出现一大堆开源技术需要熟练,甚至是精通。特别是不少程序员向往的技术路线分支,架构师这个岗位,这个情况越明显。
▲截图来自于招聘网站
在这些眼花缭乱、层出不穷、天花乱坠的技术、框架给我们带来便利的背后,其实隐藏着一个“被折叠”的技术世界。
“折叠”是社会发展的底层逻辑
“折叠”的含义大家都知道。指的是把物体的一部分折过来与另一部分挨在一起。
好处就是可以让一个原本不可控的、复杂的事物通过“折叠”变成一个更可控的、简单的事物。
比如,
几乎我们身边的每个事物都是“折叠”后的产物,只是程度不同。如,手机、电脑、笔,甚至是成语、谚语等等。甚至还包括我写的每一篇文章,也都是将我自己的认识折叠之后的产物。
所以,做“折叠”的目的是为了追求效率、便捷,让人与人之间的分工协作得以更好的进行。因为,“被折叠”起来的内在部分,已经不是双方协作时需要了解的「必须项」了。
对于开源技术,从人性的角度来,有现成的“轮子”摆在那,为啥还要自己苦哈哈的重复造“轮子”呢?有捷径不走,不是傻么。
是的没错,这很符合人之常情。而且这也是我们整个社会的发展速度越来越快的底层逻辑。
把「认知」也折叠了
但是任何事物皆有两面性,“折叠”有什么负面的作用呢?
最容易察觉的一点就是一个事物变得更加的不容易真正了解,这也意味着我们的「认知」也被折叠了。也就是我今天要说的主题——「认知折叠」。
举个例子。
第一台电子计算机被发明于1946年,占地150平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算。
▲图片来源于网络,版权归原作者所有
假象一下当时的发明者莫克利(JohnW.Mauchly)和艾克特(J.PresperEckert)穿越到现在,看到我们拿着的钱包大小的手机,而它的算力是他们发明的计算机的百万倍。这其中被折叠的认知可不是用一个“amazing”就能表达的。
这个与程序员们很熟悉的软件测试领域中的“黑盒”概念类似,一个软件里面具体是什么情况,代码逻辑是怎么处理的,完全不知道。
这其实是一种失控的状态。但是由于被折叠后的事物让我们具有更好的舒适感,所以这种失控感其实是大部分被掩盖掉了,让我们没有察觉到自己正在逐渐失控。
一直这样下去会产生什么结果
长期以往,就会让我们的思维更加的局限。
除了用某个技术来实现某个功能,不会其它的实现方式了。比如,用惯了ORM框架,手写SQL都退化了,甚至不会了。
除了用某个工具来解决眼前的问题,不会其它的方式了。比如,习惯了用图钉来粘贴一些公告,想不到用透明胶也可以达到一样的效果。
更严重的甚至会沦为“有心人”的“工具”。
比如,某些抢票工具。不管是火车票、演唱会门票还是什么票,你从网上下载了一个自动抢票工具,其实里面除了“折叠”了自动抢票,可能还“折叠” 了数据自动上传到作者服务器的功能。
这些“被折叠”的东西如果你不清楚,那你就像是那只捡了芝麻丢了西瓜的小猴子。
三个破局的办法
即然“折叠”是对复杂性的封装,那么应对它的方式自然是往“展开”的思路来走。
只有这样,你才能更了解眼前的这个“被折叠”的事物。
那么有什么“展开”的办法呢?下面Z哥分享你几个我认为的要点。
01 多一分敬畏
要意识到自己身处在一个被高度折叠的社会里,多一些敬畏之心,不要觉得什么事物都很简单。
哪怕是你看着非常不起眼的一支铅笔。但它的原料很复杂,要把木材、油漆、石墨、黏土、石蜡、黄铜、橡皮、硫化镉等原材料统一起来,并且制作过程中的所有生产工艺流程,也得全部统一起来,才能组成一支铅笔。
无知不可怕,可怕的是不知道自己的无知。
这是一个心态问题,只能靠自己刻意练习去调整自己的心态。
02 可以不了解how,但是得了解why
可以不了解how,但是得了解why。不用事无巨细的将每个事物真的分析的那么彻底。但你至少得知道这个事物产生的背后原因是什么。
比如,你不用真的去100%的啃某个框架源码,但是你至少得至少这个框架为什么会出现,为什么会这么多人用?它“折叠”了什么进去?以及这些“折叠”的东西对你未来的可控性是不是有影响?如果有影响的话,未来能不能hold住它,消除其中的不确定性?
这些一连串的思考之后,眼前这个事物的“折叠程度”就会降低,你对它的理解和掌控力会超过大部分人。
所谓的“透过现象看本质”也是这个道理。这个现象、事物的完整的过程是什么没那么重要,更重要是它的本质、目的是什么。
03 获取高质量的外部信息
如果要彻底“展开”的话,必然离不开外部信息的帮助。这个时候一定要找权威的信息。
正如之前所说,因为信息本身也是一个“被折叠”后的产物。如果你找到的信息不够靠谱。那么不但无法“展开”,反而会“折”的更深。
权威性主要看渠道。不同渠道公开的信息,背后是经由不同人和不同的处理机制而产生的。
信息质量的高低主要取决于制造和过滤信息所花费的成本,花费的成本越高,这个信息的权威性自然就越好。
这个成本除了包括投入的人力物力的多少之外,还有出品方的品牌、口碑等。
通用的高质量信息渠道,可以关注以下这些。如果你有什么其它的高质量通用信息的渠道,欢迎你在留言区分享给大家。
.gov.cn、.org域名的网站,这些都是政府/权威组织公开的信息。(政府信用背书,可信度最高)
论文。可以在中国知网、百度学术、谷歌学术上搜你要的信息。(投入的时间成本以及个人品牌背书)
有口碑和知名度的媒体、大V博客。(个人品牌背书)
书。(投入的时间成本以及个人品牌背书)
咨询公司的分析报告。(投入的时间成本以及个人品牌背书)
Wikipedia不错,特别是每个条目下面的一些引用地址,里面这些都是相对高权威的信息源。
不同的专业领域各自领域内的权威渠道,这个靠自己平时的收集。但是官方公开的信息总是应该优先考虑的,而不是第一选择总是搜索引擎。
还有一点,如果可以,尽量使用英文搜索。为什么?看下整个互联网中的内容语言比例。
▲数据来自w3techs.com
可以看到,英文内容占据着绝对优势,并且占比还在持续走高。
如果你也有什么其它的有效办法,欢迎留言分享给大家。
程序员就是“折叠者”
其实我们做程序员的,天然处在一个“折叠者”角色上。我们每天在做着各种「封装」。
但是我见过了太多程序员,遇到问题只会百度的。
先不论被广为吐槽的百度内容质量如何,就这单一的信息获取方式实在是对不起程序员这个岗位应有的价值。
对每个人来说,面对被高度折叠的社会,我们大致分布在四个阶段中,逐步前进。
第一个阶段,完全不知道自己所处的是一个“折叠”后的环境。
第二个阶段,直到遇到“障碍物”走不过去了,才意识到“折叠”的存在,被动的去想办法“展开”。
第三个阶段,带着“展开”的心,同时享受着折叠的便利。
第四个阶段,本身就是“折叠者”,能大道至简那种。
用吴伯凡老师的一句话来形容第四个阶段最贴切不过。
最高的认知不是为了“展示你的认知”,而恰恰是“将这种认知最大化隐藏”,直接呈现为一个非常平易、有亲和力的日常友好化状态。
这既是做产品的逻辑,也是做人的逻辑。
——吴伯凡
总结
好了,我们总结一下。
这篇Z哥和你阐述了我们所处的环境相比更早些年来说,是一个更大程度被折叠的社会。
但是不要忽视了折叠在带来便利的同时,把我们的认知也折叠了。
破局的办法自然就是想办法“展开”被折叠的认知。重要的三点是:
让自己的心态多一分敬畏。
可以不了解how,但是得了解why。
获取高质量的外部信息帮助“展开”。
希望对你有所启发,成为一个不被折叠所困的折叠者。
推荐阅读:
8个月打磨,一份送给程序员的「分布式系统」合集
大家在寻找的高级程序员到底是什么样子的?
作者:Zachary
出处:https://zacharyfan.com/archives/965.html
如果你喜欢这篇文章,可以点一下右下角的「推荐」。
这样可以给我一点反馈。: )
谢谢你的举手之劳。
既然看到这了,送我一个「赞同」吧,支持我的创作。
想更进一步和我一起玩耍,欢迎「搜索微信公号:跨界架构师」或者在「右侧扫描」。
内容包括:架构设计丨分布式系统丨产品丨运营丨个人深度思考。