什么是第一性原理?

简介: 将事情缩减至其根本实质。实质“第一性原理”这个词儿被吹得神乎其神,似乎是威力无穷。大家都知道了伊龙马斯克(Elon Musk)把这个原理用得好,可以把火箭发射成本降低到原先的几十甚至上百分之一。

将事情缩减至其根本实质。

实质

“第一性原理”这个词儿被吹得神乎其神,似乎是威力无穷。

大家都知道了伊龙马斯克(Elon Musk)把这个原理用得好,可以把火箭发射成本降低到原先的几十甚至上百分之一。

image

可是它到底是什么?

自从听见这个词儿,我也只是人云亦云,竟然从来也没有认真考察过。

直到今天,品着茶,读老喻的文章。才看到了马斯克这段话的完整译文:

我在想存在一种好的思维框架。那是物理学的东西,你知道,有点儿像第一原理推理(first principles reasoning)。总体来讲,我认为存在将事情缩减至其根本实质……你必须能够把那些问题“煮沸”才能从里面找出那些最基本的东西

image

看完了我一口水差点儿喷出来。

这令人膜拜的“第一性原理”,不就是“解耦合”(decoupling)吗?

协作

要搞清楚这个概念,咱们得先看看现代社会的大规模协作方式

假设你是一名程序员,希望改进一款开源软件产品的功能。该怎么做?

你会打开一个新的空白源代码文件,从头开始,一行行写代码吗?

基本上不会。

你该怎么做呢?

你会读现有软件的源代码,把新的功能实现补充或更新到对应的位置,提交合并(merge)请求。

注意在这个过程中,你是把前人做的东西,当成基础层

而你自己,是在这个层次之上,去叠加新的内容。

为了更形象化一点,我拿来个计算机体系结构层级示意图。

image

许多人弄不明白,既然搞IT的平时都鼓捣个计算机,为什么还得分成搞硬件的、搞架构的、搞通讯的、搞操作系统的、搞软件的、搞算法的、搞应用的?

不都是一回事儿吗?

因为这种“不理解”,才经常会有人找计算机系的研究生帮着修电脑,觉得这才算是学有所用。

这种分层的架构,使整个儿IT行业从业者,都只需要管好自己这一层的功能,并且为上层提供功能接口。

需要的时候,他会调用下层已经准备好的功能,而不需要去重新发明轮子。

说得通俗一些——铁路警察,各管一段儿。

想想看,为什么现在数据科学那么火? Python、R 和机器学习框架们为何这么受到欢迎?以至于许多非 IT 类人士,都在乐此不疲渴望学习、应用它们?

因为许许多多的开发者,已经为你写好了实现数据科学工作的各项基础功能。

image

相关的软件包已有成千上万,而且每天还在不停快速涌现。你根本不需要了解哪些功能究竟是如何实现出来的,只要会搜软件、查文档,直接“拿来主义”调用就能实现酷炫繁复的功能,方便得令人发指。

难怪有人咬牙切齿说“ Python 这东西降低了机器学习的技术门槛,简直就是邪恶的存在。”

我猜说这话的人,大概自己动手写过反向传播( back propagation )代码。

层次累积,积木搭建。不仅计算机体系结构这么做,网络协议这么做,现在就连深度学习(deep learning)也这么做。

还起了个时髦的名字,叫做“迁移学习”。

image

别人弄好了底层的基础,你移植嫁接过来,继续往上搭积木就行。

这样做好不好?当然有好处。

如果你开发手机应用,你就必须有这样的前提假设:手机硬件是能够正常运行的,手机操作系统是可以响应的;你开发电脑上的编辑器没有毛病,输入的字符就是屏幕上看到的内容;编译系统会正确地把你的源文件编译为可执行的应用,中间没有埋伏黑客的恶意代码……

只有这样,你才能充分发挥自己的聪明才智,把自己擅长的事情做好,甚至是做到极致。

image

否则,真是寸步难行。

想想看,老板给你迭代更新应用的时间,难道够你去仔细检查一遍 Android 操作系统代码吗?

人类社会,正是由于专业化的分工协作,才能够精益求精,迸发出巨大的生产力进步。也正是因为对于不同分工层级的近乎无条件信任,才能正常运行。

但是问题,也会随之而来。

假设

如果你的前提假设不成立呢?假如你目前工作所依赖的基础层级有问题呢?那岂不是成了“沙上垒塔”?

人们痛恨假货,就因为有这种“被愚弄的感觉”。

原本“品牌”的存在,就是减低大家识别商品质量的成本。我明明是因为信任“小米”品牌,才在网上下单买这台电视的。下单后,运来的,却是“小米新品”……

image

面对假货,大家总是群情激愤。但是生活、工作中类似的问题,许多人就熟视无睹了。

特别是一些成功经验,使我们总喜欢把已经发生的事情,看做自然而然。

在一个案例中,如果两种事物同时出现了,总会被我们脑补为必然的关联,于是就耦合在了一起。

耦合会产生什么?

迷信。

就像罗辑思维里面,曾经分享过的太平洋岛民瓦努阿图人的故事。

image

他们的岛上,曾经在二战时,驻扎过美军。

美军士兵看起来很奇怪的,戴眼镜、经常翻阅作战文件,不打猎也不采集,运输机和运输船就会送来各种吃的喝的,穿的用的。货品种类多到让当地人眼花缭乱。

后来美军士兵走了。岛上就多了一些奇特的新祭祀活动——岛民在身上用红色颜料写 USA ,用木头做成眼镜形状,盯着树叶来回翻看,还用木头和干草做了架假飞机,等着物资从天上掉下来……

这个例子有些极端。

换一个例子。你打算调查用户的需求,怎么办?

同行的经验是:发问卷啊!

大家不都是这么办吗?

这种同行业累积的经验,就是你工作的基础层。

但是汽车大亨 Henry Ford 曾经说过:

如果我当初问用户需要什么,他们会说“一匹更快的马”。

image

你目前工作的基础似乎有改进的余地呢,甚至是真的需要推倒重来。你会怎么做?

许多人的选择是:萧规曹随。跟着大伙儿走,总不会错到哪里去吧?

我们的头脑,就是这么喜欢偷懒。

你不难感受到,耦合的结果非常不利于创新。

一想到汽车,就想到汽油、加油站……在这个思维框架里,你难以考虑到其他能源形式的可能性。

或者想到汽车,你就想到了司机,那你恐怕就没有冲动去尝试研发“自动驾驶”了。

image

想到上课,就会想到一间教室,几十上百号学生……类似的,这个框架里,你也无法想象几万,甚至几十万人一起上课的场景(也就是现在大家耳熟能详的MOOC)。

一个事儿,改进10%,很难。

因为无数聪明人已经在“前人基础上”,做了各种智慧地尝试。你想摘到低垂的果实,哪里有那么容易?

反而,一个事儿,要提升200%,可能却相对容易。

因为看到这种要求,人们首先就从原先的思维框架里面惊惶地“逃”了出来。

你很清楚,照着原先的路走下去,是绝对不可能提升 200%的。

例子

给你举2个“解耦合”思维,或者叫“第一性原理”发挥作用的例子。

第一个例子,是本世纪初年的下载工具。

那时候带宽低,大家的资源少。从服务器去下载内容,就成了当然的设定

各路下载工具竞争改进。可是改什么呢?

多线程、可续传、抢资源、争带宽……最后也无非是比原先快了那么一点点。

image

但是,有些“笨人”没有立即参与这种角逐。其实这才符合“众争勿往”的古训。

他们也没有闲着,而是在思考。思考的基础,不是目前已有的“友商”产品,而是互联网的基因。

互联网的创生,是为了传递信息不假。但更重要的是为了抵御核战中,集中式带来的“斩首”威胁。

image

天然的,互联网就不是中心化的,而是分布式。

因此,从互联网的基因出发,压根儿就没有“大家只能从服务器下载”这一条金科玉律。

这只是一种迷信而已。

如果不局限于从原先的服务器下载,还可以怎么做?

思考到这一步,灵感来了。

每个下载软件的用户,不光是可以做客户端(索取者),也都可以做服务器(给予者)啊!

让他下载的时候,同时上传自己有的内容给别人。不仅减轻了服务器的压力,还避免了服务器一旦故障,传输就完全中断的风险。

思维模式变化,抛开一切没根据的假设, P2P 下载协议于是横空出世。

image

这种做减法、扔掉不合理假设和捆绑的思考方式,就叫做“解耦合”。

马斯克说的“将事情缩减至其根本实质”,不是一个意思吗?

再给你举一个例子,还记得10几年前的智能手机长什么样子吗?

以我上课的经验来看,97年出生的同学们,就只有个模糊的印象了。

帮你普及一下历史知识。它大概是这样的:

image

或者这样的:

image

那时候的手机,怎么长得那么奇怪?为什么要弄个实体键盘?

本来手机就小,键盘占了这么大屏幕面积,还怎么用?

今天你这么想,似乎顺理成章。但退回2007年之前,你站在当时手机设计者的角度,会觉得这种设计,是再正常、合理和自然不过的。

因为智能手机得能浏览网页、收发邮件,必须有完善的输入功能。

不用键盘,怎么输入?

莫非要像当时的 iPod 一样,弄个滚轮 (Click Wheel) ?

image

输一个字母,可能得转3圈。你跟我开玩笑吧!

于是当时大家比拼的,自然是谁家的键盘手感更好,按键可以更精准,输入更快速……

当时有些手机用户确实做到了在小小的实体键盘上录入文字行云流水,看着真让人钦佩啊。

手机厂商们的这种竞争与改进,有效果吗?

当然有。

但是想要出众,很难。

所以大家做出来的手机,差不多都是一样的难看难用。

好在,乔布斯不是这么思考问题的。

“乔帮主”在设计美学上,有洁癖。自家用的家具,都宁缺毋滥。看看他当年搬进新家以后的照片,你就更能确信这点。

image

他就是看着那些实体键盘不顺眼。于是就思考,键盘是不是必要的?

从功能上讲,是的。

毕竟语音、动作和脑波输入等技术,当时还远没有成熟。

可是手机键盘,一定要做成实体形式吗?

那可就未必了。

以这样的思路,触摸屏技术就进入了他的视线。这一次解耦合,才让今天我们的手机,长成这个样子:

image

培养

这两个例子看完,你是不是觉得用第一性原理(解耦合)思考问题,威力无穷啊?

拥有这种思维方式的人们,确实曾经显著改变了世界,影响了人们的生活。

你也希望拥有这种“超能力”?

那问题来了:

解耦合,或者叫“第一性原理”思维方式,怎么培养呢?

不好意思,这你恐怕得去问专家。我不敢大言不惭,冒充自己知道答案。

不过好在有查理芒格先生的范例在先,我可以给你讲讲,如何压抑,甚至破坏掉这种能力。

image

这个事儿,咱绝对有把握。

办法简单极了,就是“死记硬背”+“题海战术”。只要持之以恒,肯定奏效。

因为你奇幻曼妙的认知与思维,是要靠神经网络(此处说的,是你头脑中那个,不是计算机模拟的)作为物质基础的。

这种网络的连接结构,决定了你的思考质量。

image

你往哪个方向强化,它就怎么适应性搭建。“适者生存”才是自然状态下,生命体的终极目标。

所以卖油翁会说“无他,手熟尔”。

今天许多人,也会确信“一万小时定律”。

死记硬背,可以让人对概念的理解囫囵吞枣,不明白深刻含义。理性认知与逻辑推理的基础,就没了。再想要“将事情缩减至其根本实质”,只怕巧妇难为无米之炊。

题海战术,可以不断强化认知路径上的自动化与被动化。填鸭式接受的概念,即便是经不起推敲的,通过这种反复训练的方式,也能烙印在你的神经网络上。按已有的路径思考,你的思维轻车熟路,感觉上也会顺理成章。

有人可能会辩驳:

你看我上小学的时候,每天作业都要写到夜里12点,转天早上6点还要早自习……可是直到今天,我也有很强的创造性思维,对“第一性原理”也能运用自如!

假设你说的是实际情况,我只能说,个体是有差异的。

你看张学良将军年轻的时候,拥有多项不良嗜好,都对身体无益吧。不也活了一百岁?

平衡

如果你觉得自己在“解耦合”(第一性原理)思维上,没有被培养得那么充分,也不要沮丧。

这种能力,大约不会成为全部社会个体的标配。

每个人都用这种方式思考所有问题,社会共识的基础立即会荡然无存。

拥有第一性原理(解耦合)思维的人,不跟风、不盲从、不信权威,总要深入琢磨一个为什么。把社会当成一辆车,他们可以类比作刹车。

而拥有普通思维方式的大众,例如你和我,思考爱偷懒,信品牌,根据外部社会的激励来行动,不会天天想着如何把问题“煮沸”。咱们可以做普通生产者、消费者,大概可以类比成车辆的油门,是社会发展不可或缺的主体力量。

少了油门,车动不起来。一个社会只有无数乔布斯,那乔布斯A的产品,乔布斯B可能根本看不上,卖给谁呢?

同样,少了刹车,会怎么样?

另外,拥有这种思维特质的人,恐怕很难被周围人喜欢。

你说让他怎么合群儿?

你号召大伙儿出去吃个饭。他先问你10个为什么……

不管是马斯克,还是乔布斯,从目前已有的传记中,你也可以约略窥见他们与许多合作伙伴间的人际关系,究竟如何。

至于有的人,走得更远了。例如美国房地产火爆年代,做了深刻思考,还跟市场对着干,做空了证券的那些家伙们。

image

他们的成功,就不只是让周围几个熟人讨厌的问题了。要不人家干嘛拍成电影?

记着他们呢。

凡事不要绝对。即便有了第一性原理(解耦合)的思维,你也不应该无时无刻都想着“使大招儿”。你玩儿电子游戏的时候,也不是这样操作吧?

我的建议是,在你职业、事业的关键问题上,多学习和尝试利用这种思考方法,寻求根本性突破。

至于寻常小事儿,算了。按照卡尼曼的分类,多用用“系统1”,偷偷懒也无妨。

image

核心资源别滥用。好钢得用在刀刃上,对吧?

喜欢请点赞。还可以微信关注和置顶我的公众号“玉树芝兰”(nkwangshuyi)

目录
相关文章
|
4月前
|
算法 JavaScript Java
代码之旅:从线性到并发编程的思维跃迁
在软件工程的广阔天地中,编程范式的演变如同星辰的轨迹,引领着技术的前行。本文将深入探讨从线性编程到并发编程的转变,揭示这一过程如何重塑开发者的思维模式,并展示在实际应用中如何通过并发策略优化性能与资源利用。我们将通过具体案例分析,探索现代软件开发面临的挑战与机遇,以及如何在多核时代中高效利用并发编程技术。
|
6月前
|
Python
电学:原理、应用与编程实践
电学:原理、应用与编程实践
|
6月前
逻辑模型—第一性原理
逻辑模型—第一性原理
|
算法 Java C语言
算法界最难的一道题,我解出来了!
算法界最难的一道题,我解出来了!
|
12月前
第一性原理
第一性原理
73 0
思维模型No.1|第一性原理(加强版)
思维模型No.1|第一性原理(加强版)
114 0
|
算法
算法学习 | 从几个有趣的故事说起,聊聊里面的算法
今天分享读了的故事、研究了的解题过程以及总结的一些算法知识点和经验。
395 1
|
算法 C++
<<算法很美>>——(五)——回溯算法核心框架(上)
<<算法很美>>——(五)——回溯算法核心框架(上)
<<算法很美>>——(五)——回溯算法核心框架(上)
|
存储 自然语言处理 算法
初入算法(1)—— 进入算法世界
了解算法,学习算法,应用算法
137 0
初入算法(1)—— 进入算法世界
|
机器学习/深度学习 算法 程序员
初入算法(2)—— 进入算法世界
本章将会继续在初入算法(1)——进入算法世界 的基础上继续通过趣学算法进行算法的学习。
155 1
初入算法(2)—— 进入算法世界