軟件工程師應(yīng)該如何吵架?
吵架的團(tuán)隊(duì)更有生命力
看一家軟件公司是否靠譜很簡單,在開放式的辦公室中有沒有隨處可以使用到的白板就行。
一個(gè)好的軟件開發(fā)團(tuán)隊(duì)往往看起來沒那么“和諧”,程序員和產(chǎn)品經(jīng)理之間,程序員和程序員之間是不是會(huì)發(fā)生“爭吵”。好的軟件公司沒有不吵架的,不吵架的軟件公司要么大家都在劃水,要么大家為了維護(hù) “職業(yè)形象”處處小心翼翼不敢獻(xiàn)計(jì)獻(xiàn)策。
剛開始和華為的人合作可能會(huì)有一些不適應(yīng),他們說話的方式簡單而直接,往往讓人不知所措。這種直接的背后是一種擼著袖子干的企業(yè)文化,把“職場文化”變成了團(tuán)隊(duì)協(xié)作。
軟件公司吵架不是管理不善,往往代表著開放、包容的文化,以及團(tuán)隊(duì)成員心無芥蒂的通力合作。
回想一下,我們是不是往往都是和陌生人和和氣氣,和信任的人才大大咧咧呢。
文吵和武吵
不過吵架這事兒還有一些講究。在公司吵架這事兒分為文吵和武吵:武吵是比誰的嗓門大,誰說話的分量重;文吵講究的邏輯、推理和歸納。
而武吵和文吵各有用處。
武吵需要的是一個(gè)敢于擔(dān)責(zé),能在關(guān)鍵時(shí)候拿出主意的人。在很多討論會(huì)中,群眾容易陷入只對自己認(rèn)知匹配的細(xì)節(jié),然后各執(zhí)一詞,都很有道理,也各無過錯(cuò)。這個(gè)時(shí)候,文吵的邏輯難以派上用場,因?yàn)楝F(xiàn)實(shí)世界中沒有完美的、正確的方案,只有不那么差的方案。那就需要武吵的人發(fā)揮他的影響力,給團(tuán)隊(duì)拿個(gè)主意,先結(jié)束這次討論,得到一個(gè)基本可用的方案來,才能讓事情繼續(xù)。
文吵則不一樣,軟件開發(fā)畢竟是一門科學(xué),大多數(shù)情況下需要用到邏輯,通過分析、歸納、總結(jié)得到方案。需要收集足夠的信息,給出足夠的理由,并對方案中的概念給出清晰地定義,最后通過因果分析,證明自己的想法。在大多數(shù)情況下,我們更多的需要文吵,通過分析和證明解決遇到的問題。
不管是文吵還是武吵,都需要講邏輯。只有當(dāng)團(tuán)隊(duì)對這些基本的邏輯規(guī)律達(dá)成共識的時(shí)候,“吵架”才能高效,并且避免落入謬誤的陷阱。
邏輯學(xué)的三個(gè)基本規(guī)律
邏輯學(xué)的三個(gè)基本規(guī)律可以讓吵架更加準(zhǔn)確,避免無意義的爭論,減少邏輯矛盾,讓吵架有所產(chǎn)出。這三個(gè)重要的規(guī)律是:同一律、矛盾率、排中律。
同一律
在同一段論述(命題和推理)中使用的概念含義不變,這個(gè)規(guī)律就是同一律。形式化的表述是 A -> A。
“概念”在邏輯學(xué)中的意義非常重要,概念有兩個(gè)邏輯學(xué)規(guī)律:內(nèi)涵和外延。內(nèi)涵指的是這個(gè)概念區(qū)別于其他概念的本質(zhì)屬性,例如大熊貓是指的生物學(xué)中某一個(gè)物種。外延指的是這個(gè)概念所能描述的事物的范圍,比如白馬比馬這個(gè)概念外延要小,是不同的兩個(gè)概念。
所以白馬非馬的本質(zhì)爭論在于自然語言的不確定性:
- 從概念上說,白馬這個(gè)概念不是馬這個(gè)概念。所以白馬非馬。
- 從謂詞(“是” 這個(gè)謂詞)邏輯來說,白馬這個(gè)概念代表的事物集合屬于馬這個(gè)概念代表的事物集合。所以白馬是馬(白馬屬于馬,但是白馬這個(gè)概念不是馬這個(gè)概念)。
同一律描述的是在一段論述中,需要保持概念的穩(wěn)定,否則會(huì)帶來謬誤。我在大學(xué)辯論賽中利用了這個(gè)規(guī)律,贏了一次辯論。
當(dāng)時(shí)的論題是“網(wǎng)絡(luò)會(huì)讓人的生活更美好嗎?”,兩個(gè)論點(diǎn)主要的論點(diǎn)是:
- 網(wǎng)絡(luò)讓人們的生活更方便。
- 網(wǎng)絡(luò)讓人們沉溺虛擬世界。
我們選擇的論點(diǎn)是 “網(wǎng)絡(luò)讓人們的生活更方便”。在辯論賽的前期,另外一方為了論證 “網(wǎng)絡(luò)讓人們沉溺虛擬世界”,描述了打電話、寫信也可以讓人生活很美好,并不會(huì)沉溺。這剛好落入了我們的邏輯陷阱。我們指出,郵政、電話網(wǎng)絡(luò)也是網(wǎng)絡(luò)的一種,對方的邏輯不攻自破。
這屬于典型的 “偷換概念”,我們偷換了“計(jì)算機(jī)網(wǎng)絡(luò)”和“網(wǎng)絡(luò)”這幾個(gè)概念。
矛盾律
矛盾律應(yīng)用的更為普遍,幾乎所有人都能認(rèn)識到矛盾律。它的含義是,在一段論述中,互相否定的思想不能同時(shí)為真。形式化的描述是:“A 不能是非 A”。
矛盾律這個(gè)詞的來源就是很有名的 “矛和盾” 的典故,出自《韓非子·難勢》中。說有一個(gè)楚人賣矛和盾,牛皮吹的過大,說自己的盾在天底下沒有矛能刺破,然后又說自己的矛,天底下的盾是不能穿透的。前后矛盾是一個(gè)眾所周知的邏輯規(guī)律,但是并不是一開始馬上就能看出來,需要多推理幾步才能看出來。即使如此,在同一個(gè)上下文中,出現(xiàn)了矛盾的邏輯論述也被認(rèn)為是不可信的。
具有矛盾的論述有時(shí)候又被稱為悖論。尤其是宗教領(lǐng)域充滿了大量的悖論,例如是否存在一個(gè)萬能的神,做一件自己不能完成的事情。
矛盾律的用處可以駁斥不合理的論斷,也可以用于反證法。在軟件開發(fā)過程中,我們時(shí)常遇到這種情況,需要開發(fā)過程中才能發(fā)現(xiàn)矛盾。這個(gè)很難避免,除非有充足經(jīng)驗(yàn)的工程師。
需要注意的是邏輯學(xué)中的矛盾律和毛澤東思想中的矛盾論不是一回事,前者是邏輯學(xué)規(guī)律,后者是辨證唯物的一種方法。
排中律
排中律是邏輯規(guī)律中最難理解的一個(gè)規(guī)律。它的表述是:同一個(gè)思維過程中,兩個(gè)互相否定的思想必然有一個(gè)是真的。用形式化的表述就是,A 或者非 A。
排中律的意義在于,明確分析問題的時(shí)候不能含糊其辭,從中騎墻。比如有人討論:人是不是動(dòng)物。不能最終得到一個(gè)人既是動(dòng)物又不是動(dòng)物,這種討論是沒有意義的。
比如在一次技術(shù)會(huì)議中,需要選擇使用的數(shù)據(jù)庫,只能使用一種數(shù)據(jù)庫。如果采用了 MySQL 就不能說沒有采用 MySQL。
排中律看起來好像沒有意義,但具有非常大的價(jià)值,讓討論最終有結(jié)論,而不是處于似是而非的中間狀態(tài)。
如何詭辯
在爭吵中,人們會(huì)下意識的引入謬誤,從而主動(dòng)或者被動(dòng)的詭辯。詭辯的方法非常多,下面聊幾個(gè)有意思的詭辯方法,認(rèn)識到詭辯的存在,讓吵架的輸出更可信。
偷換概念
偷換概念是一種利用同一律的詭辯方法。往往是利用一個(gè)詞語的多義性來制造詭辯,這種例子相當(dāng)常見,在一次日常對話中:
“朋友:為了讓自己的判斷和認(rèn)知更為客觀,我們應(yīng)該同時(shí)學(xué)習(xí)多個(gè)學(xué)科的東西。
我(故意抬杠):人不能同時(shí)學(xué)習(xí)多個(gè)學(xué)科的東西。 朋友:為什么,學(xué)生不都是同時(shí)學(xué)習(xí)數(shù)學(xué)、語文、英語么。 我:你現(xiàn)在正在看手上這本書,能同時(shí)看我手上這本么。 朋友:。。。(感覺被套路)” |
我偷換了概念,把 “同時(shí)” 這個(gè)詞的時(shí)間精度調(diào)低了,導(dǎo)致這次對話變了味。
偷換概念在生活中無處不在。《武林外傳》中的秀才利用 “我”這個(gè)概念的偷換,讓姬無命莫名其妙并自殺了。
相關(guān)性不等于因果性
這個(gè)是一個(gè)不得不提的詭辯手法,我們從小深受其害。
最經(jīng)典的例子是,很多父母信佛,然后娃高考的時(shí)候天天去求神問佛。如果小孩考上了大學(xué),那么就是拜佛的功勞,如果沒有考上,那就是小孩不努力。多么完美的邏輯閉環(huán),完全無懈可擊。
同樣的橋段在各種電視、電影中存在。某一伙人闖入了一個(gè)村子,然后這個(gè)村子發(fā)生了瘟疫,群眾認(rèn)為是這些人帶來了不詳。
程序員圈子也會(huì)有類似的議論,因?yàn)榇蠊径加玫?Java 而不是 PHP,所以 PHP 是一個(gè)垃圾語言,我們要成為大公司,所以要把 PHP 換成 java。所以很多公司明明可以茍一下,然后因?yàn)檎垓v死掉了。
我們需要時(shí)刻記住,相關(guān)性不等于因果性,才能認(rèn)識到一些微妙的邏輯關(guān)系。
因果倒置
“可憐之人必有可恨之處。” 這是很多人掛到嘴邊的話,支持者甚多。
我小的時(shí)候?qū)@句話記憶深刻。小學(xué)的時(shí)候被年長的同學(xué)欺負(fù),后來因?yàn)榇蚣芾蠋熤懒?,其他同學(xué)都表明我是個(gè)被欺負(fù)的可憐鬼,老師還是對我們都做出同樣的處罰。
說出了一句舉世名言:“為什么欺負(fù)你,不欺負(fù)別人”。
為什么只欺負(fù)你,不欺負(fù)別人,所以你也不對,同樣要受到懲罰。這是典型的強(qiáng)盜邏輯,從結(jié)果推導(dǎo)出原因,但是這個(gè)原因并不成立,因?yàn)槲覀冎涝}為真,逆命題不一定為真。
歸納法的局限
邏輯學(xué)上把個(gè)別的知識推廣到一般的知識規(guī)律叫做歸納推理。歸納推理是一種樸素的認(rèn)識方法,在邏輯學(xué)中,歸納推理有其意義,但是需要注意的是邏輯學(xué)從來沒有把歸納法得出的結(jié)論當(dāng)做真理。
歸納法的問題和類比謬誤類似。古人認(rèn)識的到了一個(gè)規(guī)律,雞叫三遍天會(huì)亮,但是后來出去旅游發(fā)現(xiàn)其他地方的雞不是這樣的,真的是應(yīng)了那句,“東方不亮西方亮,黑了南方有北方。”
中國太大了,甚至二十四節(jié)氣的規(guī)律都不能適用于每一個(gè)地方。歸納法只能有限的反應(yīng)某種規(guī)律,不能廣泛、絕對的得到真理,也不能從個(gè)體推出一般。
算命先生希望從四柱八字、面相分析、掌紋、筆跡這些中歸納真理,如果認(rèn)識到歸納法的局限性,就不會(huì)平白無故交這些智商稅了。
責(zé)任轉(zhuǎn)移
證明神存不存在,保健品有沒有功效,壯陽藥有沒啥作用是科學(xué)界三大難題。
從邏輯上證明有其實(shí)很容易,只需要找出一個(gè)例子即可,比如證明天鵝是白色的,只需要找出一個(gè)白色的天鵝即可。但是證明黑色的天鵝不存在,是非常困難的,除非窮舉世界上所有的天鵝,才能得出這個(gè)結(jié)論。
人們的思維中,天生偷懶,所以人們才會(huì)有 “寧可信其有,不可信其無”。
所以有一種詭辯,我姑且稱之為責(zé)任轉(zhuǎn)移,就是在辯論中把舉證的責(zé)任推給別人,然后再來挑對方的毛病。這是一種非常高級且隱晦的詭辯手段。
比如有神論要求無神論者給出證據(jù),證明神不存在,但是證明無非常困難。對方只能舉出一些例子,但是這些例子非常脆弱,如果再結(jié)合偷換概念就更無懈可擊了。
“大師:神會(huì)保佑你的。
無神論者:神不存在。 大師:你怎么證明神不存在呢。 無神論者:我從來沒看到過神。 大師:沒看到過神,不代表神不存在。 無神論者:看都沒看見,怎么能說神存在呢。 大師:神是一種信念,它無處不在,慢慢體悟吧。 無神論者:。。。” |
責(zé)任轉(zhuǎn)移大法是不斷把舉證的責(zé)任推給對方,然后在挑錯(cuò),讓對方自顧不暇。
總結(jié)
邏輯學(xué)中的內(nèi)容非常多,還有很多有趣規(guī)律,比如三段論、命題和演繹等。
但對生活來說,本文介紹的一些方法用于吵架足夠了,當(dāng)然不是為了學(xué)習(xí)怎么制造詭辯,而是為了分辨詭辯。當(dāng)我們在工作中交流時(shí),能注意概念的統(tǒng)一和尊重同一律、矛盾律、排中律等邏輯學(xué)基本要素時(shí),溝通會(huì)變得更加高效,吵架也更加有理有據(jù),并從中得到成長。
【本文是51CTO專欄作者“ThoughtWorks”的原創(chuàng)稿件,微信公眾號:思特沃克,轉(zhuǎn)載請聯(lián)系原作者】