GitHub带来的不止是开源,还有折叠的认知
张帆
讲述:初明明大小:4.02M时长:04:23
几乎每个程序员都知道 GitHub,但是你知道目前上面有多少仓库(repositories)吗?最新的数据显示是 1.39 亿个, 而这个数字在 2008 年是 3.3 万个。这个增长速度可谓真是“爆炸式增长”。不过在这些技术、框架给我们带来便利的背后,其实隐藏着一个“被折叠”的技术世界。近日,张帆(上海可得光学技术总监)在其个人公众号“跨界架构师(Zachary-ZF)”上发文分享了他的观点。
一、“折叠”是社会发展的底层逻辑
“折叠”指的是把物体的一部分折过来与另一部分挨在一起,可以让一个原本不可控、复杂的事物通过“折叠”变的可控、简单。
做“折叠”的目的是为了追求效率、便捷,让人与人之间的分工协作得以更好的进行。因为“被折叠”起来的内在部分,已经不是双方协作时需要了解的“必须项”了。
二、“认知”折叠
但是任何事物皆有两面性,“折叠”有什么负面作用呢?
最容易察觉的一点就是,“折叠”让一个事物变得更加不容易真正了解,这意味着我们的“认知”也被折叠了。举个例子:第一台电子计算机被发明于 1946 年,占地 150 平方米,重达 30 吨,耗电功率约 150 千瓦,每秒钟可进行 5000 次运算。
假象一下当时的发明者莫克利(JohnW.Mauchly)和艾克特(J.PresperEckert)穿越到现在,看到我们拿着的钱包大小的手机,而它的算力是他们发明的计算机的百万倍。这其中被折叠的认知可不是用一个“amazing”就能表达的。
这个与软件测试领域中的“黑盒”概念类似,一个软件里面具体是什么情况,代码逻辑是怎么处理的,完全不知道。这其实是一种失控的状态。但是由于被折叠后的事物让我们具有更好的舒适感,所以这种失控感大部分被掩盖掉了,以至于我们没有察觉到。
长期以往,就会让我们的思维更加局限。除了用某个技术、某个工具来解决问题,不会其它的实现方式了。更严重的甚至会沦为“有心人”的“工具”。比如某些抢票工具,其实里面除了“折叠”了自动抢票,可能还“折叠” 了数据自动上传到作者服务器的功能。
三、三个破局的办法
即然“折叠”是对复杂性的封装,那么应对它的方式自然是往“展开”的思路来走。只有这样,你才能更了解眼前的这个“被折叠”的事物。下面和你分享三个“展开”的办法:
1. 多一分敬畏
要意识到自己身处在一个被高度折叠的社会里,多一些敬畏之心,不要觉得什么事物都很简单。哪怕是你看着非常不起眼的一支铅笔,它的原料也很复杂。无知不可怕,可怕的是不知道自己的无知。
2. 可以不了解 how,但是得了解 why
不用事无巨细的将每个事物真的分析的那么彻底,但你至少得知道这个事物产生的背后原因是什么。比如,你不用真的去 100% 的啃某个框架源码,但是你至少得知道这个框架为什么会出现,为什么会这么多人用?它“折叠”了什么进去?以及这些“折叠”的东西对你未来的可控性是不是有影响?如果有影响的话,未来能不能消除其中的不确定性?
这些一连串的思考之后,眼前这个事物的“折叠程度”就会降低,你对它的理解和掌控力会超过大部分人。
3. 获取高质量的外部信息
如果要彻底“展开”的话,必然离不开外部信息的帮助。这个时候一定要找权威的信息。如果你找到的信息不够靠谱,那么不但无法“展开”,反而会“折”的更深。如果可以,尽量使用英文搜索,因为在整个互联网中,英文内容占据着绝对优势,并且占比还在持续走高。
四、程序员就是“折叠者”
其实我们程序员天然处在一个“折叠者”角色上,我们每天在做着各种封装。对每个人来说,面对被高度折叠的社会,我们大致分布在四个阶段中,逐步前进。
第一个阶段,完全不知道自己所处的是一个“折叠”后的环境;第二个阶段,直到遇到“障碍物”走不过去了,才意识到“折叠”的存在,被动的去想办法“展开”;第三个阶段,带着“展开”的心,同时享受着折叠的便利;第四个阶段,本身就是“折叠者”,能大道至简那种。
以上就是张帆关于“折叠”的思考,你是否认同呢?
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(3)
- 最新
- 精选
- 蓝黑说封装不是更好理解✧(≖ ◡ ≖✿)5
- 黄德平模块化2
- 旗木卡卡棒棒棒
收起评论