Vol.10 先抓那一个:从《矛盾论》看一堆问题里到底先解决哪个
- 编号
- 207
- 日期
- 2026.06.19
- 时长
- 10 分钟
- 字数
- 3,425
那天傍晚,我坐在电脑前,眼神是涣散的。
一整天的 web coding 做下来,到这会儿脑子已经转不动了。一个没受过编程训练的人,硬着头皮想把一款软件从零做出来,我做的是文驰,一个帮人写长篇小说的写作工具。一天下来,我盯着屏幕,最强烈的感觉不是累,是空。这一整天,项目好像基本没动。
为什么会这样,我心里其实清楚。因为我什么都想做。界面想做得好看一点,一级页面二级页面想搭起来,这里那里都想顺手收拾干净。每一件单看都该做,凑在一块儿,我就在它们之间来回横跳,哪个都开了头,哪个都没做完。我可以为了一个按钮该摆左边还是右边、一个二级页面到底要不要做,对着屏幕反复折腾大半天。越做越焦躁,越焦躁越想多抓几件在手里,好证明自己有在往前走,结果就是一团乱麻。
晚上我出去散了个步。走着走着,脑子里那根一直绷着的弦松了一点,冒出来一个特别朴素的念头:我其实不用这么急着把所有东西都抓在手里,我应该先把这个产品的主轴做好,把最核心、最底层的那个功能立起来,剩下的,回头再说。
回去之后我就照这个想法做。后来证明确实是这样,先把主轴做扎实,再一层层往上添细节,这才是一个软件该有的长法。
这件事说大不大。但它正好压在上一篇结尾我留给你的那个问题上。
一堆矛盾,先抓哪一个
上一篇讲矛盾的特殊性,讲到你真去具体分析一件事,会发现里头的矛盾从来不止一个。我那天傍晚面对的就是一堆矛盾:界面的、页面的、核心功能的,每一个都真实,都在喊着要被解决。可人的力气就那么多,不可能平摊。问题于是变成了:这一堆里,到底先抓哪一个。
毛泽东在《矛盾论》里专门拿出一节回答它。
写作背景前面三篇都讲过了,1937年延安,给党内的教条主义治病,这里不再展开。我们直接进这一节的核心。在前面,他已经说清楚矛盾无处不在,而且每个矛盾各不相同。到这一节,他要回答一个更实际的问题:当一个过程里同时摆着好几个矛盾,它们是平等的吗。他的回答很干脆,不平等。
在复杂的事物的发展过程中,有许多的矛盾存在,其中必有一种是主要的矛盾,由于它的存在和发展,规定或影响着其他矛盾的存在和发展。
这句话的分量,全在"规定或影响着其他矛盾"这几个字。意思是,这一堆矛盾并不是各管各的,它们之间有一个带头的。带头的那个一动,其余的跟着动;带头的那个被你按住了,其余的也就好办了。所以他下了一句近乎承诺的判断:
捉住了这个主要矛盾,一切问题就迎刃而解了。
"迎刃而解"这四个字,他不是顺嘴说的。他紧接着讲,那些做学问的、做事情的人,要是不懂得抓主要矛盾这个方法,就会"如堕烟海,找不到中心,也就找不到解决矛盾的方法"。如堕烟海这四个字,我那天傍晚坐在电脑前的状态,差不多就是。
他举的是自己最熟的例子。中国当时国内矛盾一大堆,地主和农民、各个派别之间,平时这些都在那摆着。可日本一打进来,局面立刻变了:民族矛盾一下子顶到最前头,成了主要矛盾,原来那些要紧的国内矛盾,暂时退到次要的位置,大家先一致对外。等外面的压力一变,矛盾的排序又会跟着重新洗牌。
这里有一层意思先记下,后面用得上:主要矛盾不是钉死的。过程走到不同阶段,谁当主角会换人。
他把这套办法的位置放得很高。在他看来,研究任何一个复杂的过程,头一件事就是用力找出它的主要矛盾。找着了,纲就举起来了,其余的目跟着自己就张开;找不着,就只能在一堆问题里来回瞎忙,使多大劲都使不到点子上。
不是哪个最急,是哪个最牵全局
把这一节拧成一句带走:
一堆问题摆在面前,它们从来不是平等的;总有一个一旦解决、其余就会跟着松动的主要矛盾,找到它、把力气压上去,才是做事的第一步。
这句话翻转的,是我们一个埋得很深的本能。问题一多,我们的本能反应通常有两种,都很自然,也都很坑。
第一种是平摊。每个都想顾上,雨露均沾,结果力气撒成薄薄一层雾,哪一个都没浇透。
第二种是抓最吵的那个。哪个看起来最急、最扎眼、最让人难受,就先扑哪个。可说真的,最吵的常常不是最要紧的。它只是离你的情绪最近,不代表它离全局的根最近。
抓主要矛盾要求的判断和这两种都不一样。它问的不是"哪个最急",而是"哪个一旦解决,别的会跟着松"。这两个问题的答案,经常不是同一个。偏偏情绪这东西最爱抢戏,人越焦虑,越容易把"最让我难受的"错当成"最重要的"。我那天傍晚的错,不在于偷懒,恰恰在于太勤快,勤快地扑向了每一个最扎眼的小问题,唯独没停下来问一句:这里头,哪个才是那根牵一发而动全身的线。
我那一整天,干的全是次要的活
现在用这套语言,把我那天傍晚的乱重新讲一遍,就清楚了。
界面好不好看、页面分几级,这些都是矛盾,但都是次要矛盾。它们有个共同点:都是长在核心功能这根主轴上的枝叶。主轴还没立起来的时候去修剪枝叶,不光修不好,还会反过来挡住你看主轴。所以我那一整天的"没推进",真相不是我没干活,是我干了太多次要的活。力气全花在枝叶上,主轴一寸没长,人当然觉得空。
这两年学这些东西,我越来越觉得它跟前两篇是一条线下来的。Vol.08《没有矛盾就没有世界》里,我把学 AI 这件事写成这样:
这两年我一头扎进去学怎么用 AI,回头看,那真是一条没有尽头的关卡。
到了 Vol.09《一把钥匙开一把锁》,我又往里补了一层:
关卡没完没了,说的是矛盾的普遍性;每道关卡的钥匙都不一样,说的就是矛盾的特殊性。
这一篇得再添上第三句:同时冒出来的好几道关卡,它们之间也分主次,不是每一道都该现在就去攻。我那段最难受的日子,坏就坏在这儿。每一道冒头的关卡我都当成主要矛盾,挨个去撞,撞得灰头土脸,回头一看,真正卡住全局的那道门,我一次都没正经推过。一天结束,进度纹丝不动,那种忙了整天却毫无进展的空,比单纯的累要难熬得多。
散步时想通的那句"先把主轴做好",翻译成这一节的话,就是:先认出主要矛盾,把力气从平摊改成集中。一旦核心功能跑起来了,界面往哪摆、页面怎么分,反而有了依据,很多原来纠结半天的问题,自己就有了答案。这就是毛泽东说的迎刃而解:那些次要的问题并没有凭空消失,是主要矛盾一通,它们各自的位置一下子明朗了。
想通归想通,难的是回去真照着做。我做的第一件事不是接着埋头干,是先停。把界面的、页面的活全部按下暂停,桌面上只留核心功能这一件。几天下来,核心一旦能跑通,之前让我抓耳挠腮的那些枝叶问题,再回头看,大半已经不算问题了。
说到这我想起乔布斯。1997年他回苹果的时候,公司快倒了,产品线乱成一锅粥,光是 Mac 就堆着一大批型号,型号之间的差别连销售自己都讲不清,再加上打印机、掌上电脑这些七零八落的东西。换个常规思路,公司都这么困难了,是不是该多上几条产品线、多铺点货来救命。乔布斯反着干。他在白板上画了一个很简单的方格,横着分台式和便携,竖着分普通用户和专业用户,四个格子,每个格子只留一款产品。其余的,几乎全砍。砍的时候阻力不小,在很多人眼里,公司都到这步了,多留一条产品线就多一分活路。
一口气砍掉七成产品,听上去像是把家底往外扔。但他认准的主要矛盾,从来不是"产品不够多",而是"没有一款产品好到让人非买不可"。把人和钱从一堆平庸里抽出来,全部砸进那四个格子,苹果才一点点缓过来。这跟我那个小小的软件其实是同一个道理,只是大了几百倍:抓主要矛盾,第一步往往不是做加法,是做减法,先把力气从次要矛盾上收回来,再全压到那一个上去。
还有一层,是我后来才慢慢体会到的。主轴立起来之后,事情并没有完,重心会挪。核心功能稳住了,界面和页面这些原来的次要矛盾,这时候就升了上来,变成新阶段里我该重点收拾的东西。这正应了前面记下的那句:主要矛盾不是钉死的,阶段一变,主角换人。所以抓主要矛盾不是一锤子买卖,是每隔一阵就得重新问自己一遍,现在这个阶段,真正牵一发而动全身的,还是不是刚才那个。
分得清主次,是一种本事
回头看那天傍晚到散步的这一小段,我学到的其实不是什么开发技巧。我学到的是一种排序的本事:面对一堆都想做的事,先停下来,别急着问哪个最急,先问哪个最牵全局。真正分得清主次的人,不是力气比别人大,是知道这股力气该往哪一处砸。
不过,主要矛盾讲的是好几个矛盾之间,谁带头、谁跟随。可矛盾这东西,往里看还有一层。哪怕你已经锁定了一个矛盾,比如就盯着"核心功能"这一个,它本身也是由对立的两方拧成的:能用和不能用,简单和复杂,做和砍。这两方挤在一个矛盾内部,也不是平起平坐,里头同样有一个说了算的。
那么,一个矛盾内部的两方,到底是谁决定了这件事此刻长成什么模样。这个问题,下一篇接着聊。
