西门吹雪:月圆之夜,紫禁之巅,六百招已过,在我眼中,叶城主的剑已只是一把剑,并不再有杀人之势。但我知道他还有最后一招,我在等,耐心地等。果然,叶孤城掏出了手枪,而我在他抬手的瞬间,借助月光使出影之分身,分立八个方位,八剑齐举。叶孤城已在剑网之中,只要枪响,定有一剑封其喉。然后,屋顶就蹋了,倒蹋了,就因为多了几个分身就承受不住了!后来,陆小凤也来了,跟皇帝他家对骂了好久,终于拿了点医药费。


小白:……你要讲什么!乱七八糟的!


西门吹雪:我要讲的,就是理!


专业知识与技能,是程序员谋生的手段,这跟医生护士船长律师修鞋匠一样,都要靠技术。但是,除了知识与技能,还有很多软能力对成就的大小起着关键影响,而且这些能力在各行各业是通用的。


程序员的软能力,包括:积极主动、敢于挑战、以终为始、专注、共赢思维、逻辑推理能力、自驱力、协调推动能力、执行力、领导力、向上管理能力、人情世故、胆大心细脸皮厚、高情商,等等。


小白:说那么多,会不会有重复的呀?核心的能力是什么?


西门吹雪:会有相互包含的情况,但基本还是独立区分的。哪个是核心,可能有争议,因为水平、角度、价值观等等的差异,都会导致不一样的理解。


西门吹雪:投票时间,从“怎么赚到更多钱”的角度,你认为程序员最重要的软能力是什么?


其中, 逻辑能力是程序员的基本软能力,因为逻辑能力是判断与决策的基础。


本文解决一个问题:程序员如何修炼逻辑内功。


小白:什么是逻辑能力?


西门吹雪:逻辑能力就是“因为,所以”的能力,就是从理由得出结论的能力。


小白:我经常说“因为所以”的啦,所以我是有逻辑能力的!


西门吹雪:人人都有逻辑能力,只是强弱表现不一样,对逻辑能力的依赖程度也不一样。


逻辑推理的能力,就是从已有的理由,推导出结论的能力。


先来看一些让人无言以对的逻辑推导:

“那么多人死,你怎么不死?”


“你说这电影拍得不好?你行,你上啊!”


“你这么想证明这一点,一定是有什么阴谋!你就是一个阴谋家,你还有什么好说的!”

“他都坐了10年的牢了,现在也70岁对社会没有危害了,为什么不放他出来啊,这个社会还有同情心吗?!”


“百分之九十九的专家都觉得这个是有道理的,他们的智商比你高多了,你居然还怀疑?”


“你到处扔西瓜皮是很危险的,因为别人会踩到,就会跌倒,跌倒会扑向马路,进而导致车祸,车祸导致爆炸,爆炸引起大火,大火会把附近的森林点燃,进而会烧掉附近的几个城市,所以扔西瓜皮是很严重的事情!”


对于这些逻辑推导,读者有破解招数吗?欢迎给我们留言,让我们见识一下更加无言以对的逻辑反击。


你能否辩解?


其实,只要想清楚对方的结论,以及提供的理论,是可以做出有力的反击的。怎么理清理由与结论,怎么界定逻辑的质量,就是程序员要修炼的内功。


(一)理由

数据、信息、动作,等等,都可以成为理由。


理由可以分几类:

1. 一般的信息

2. 经验

3. 假设(隐藏理由)

4. 价值观

5. 基础概念


小白:难怪我不明白技术大牛会有一些很奇怪的结论,原来是我不懂他们说的一些基础概念!


西门吹雪:不懂技术知识是一个原因,还有可能是因为技术大牛根本就没有讲清楚一些隐藏的信息。


小白:就是嘛,有些人就是会吹......我不是说你啊!


对于理由,注意它的表现形式,有时理由是不说出来的(即隐藏理由)。


比如:

不应该在地铁内吸烟,因为地铁是公共场所,而在公共场所吸烟会影响到别人。

这个推断,隐藏了价值观:

个人的行为不能影响到公众。

也就是:

在公共场所吸烟会影响到公众,而个人的行为不能影响到公众,所以不能在地铁吸烟。

要想推翻这个结论,可以提出一个新的价值观:

个人自由,比公众影响更加重要。

因为,个人的自由,比是否产生公众影响更加重要,所以即便在公众场所吸烟(就算影响到别人),也是可以接受的。


所有的推导都有价值观的假定。


除了价值观,还可能隐藏了一些假设的东西,或者经验上的东西。

比如:

吸烟影响健康,所以每个人都应该避免吸烟。

这里有一些问题:

假设吸烟是真正影响健康的原因(会不会有一个真正的原因,导致容易吸烟的同时又损害了健康呢?);

假设了价值观:健康比痛快更重要;

......


由于理由总是隐藏了价值观或别的一些信息,而这些信息都有可能被推翻,所以理论上所有推导都有可能被推翻。


(二)结论

对于结论的分析,主要是看:

是否清晰

是否准确

是否精确

是否相关

是否有深度

是否有广度

是否有逻辑

是否重要

是否公正

对于理由,这些判断点也适用。


结论模糊或有歧义是经常出现的情况,应该特定留意。很多时候,反复确认是有必要的。


(三)推导质量

推导的质量,除了看理由跟结论的质量,还要看从理由到结论的推导的质量。


推理可以分为三类:演绎推理(强推理)、归纳推理(弱推理)、不成立推理。


不成立推理,比弱推理还要弱(弱推理有时是可以接受的),甚至完全没有逻辑可言。

比如:

因为我不喜欢吃早餐,所以地球是圆的。

因为我英文水平比较高,所以骑自行车比坐地铁更快。

这样的例子,给出的理由跟结论完全没有相关性可言,除非可以找出说得过去的隐藏理由,并且能证明结论(那怕是弱的推导),否则这些推理都可以视为不成立的推理。


演绎推理,是强推理,只要理由成立,则结论必定成立。 比如:

有信仰的人都能独立思考,而张三是一个有信仰的人,所以张三可以独立思考。

因为所有餐饮店都要申请营业执照,你刚开的那间快餐店也是餐饮店,所以也要申请营业执照。

这些例子,如果接受理由,就要接受结论。 如果你想推翻推导,可以从推翻理由入手。


演绎三段论,是常见的演绎推理结构:

大提前 + 小提前 -> 结论

比如:

是人都要吃饭,你是人,所以你要吃饭。


演绎推理是强推理,但现实中,并不见得会经常使用到。

有可能我们并不需要严格的推理,有可能严格的推理会更耗成本,而归纳推理相对更轻松并且不失成效。


归纳推理,是弱推理。

思路活跃的人或解决问题能力强的人,都擅长使用归纳推理。


归纳推理可以分几类:

枚举归纳

对比归纳

归纳三段论

因果归纳(契合与差异、共变法)


枚举归纳:

一个乌鸦是黑的,两个乌鸦是黑的......,所以所有乌鸦都是黑的。

对比归纳:

张三的小孩三岁就上学,你的小孩刚好三岁,所以你的小孩也在上学。

归纳三段论:

大多数大学生都逃课,你是大学生,所以你也逃课。

因果归纳:

今天上班时爬了楼梯,今天上班整天都精神不好,所以爬楼梯会使人上班没有精神。

因果归纳之契合:

A与B的表现是一样的,是因为A与B都具有C。

因果归纳之差异:

A与B的表现不一样,是因为A与B在C这个特性上不一样。

因果归纳之共变法:

A出现时B也出现,所以A是B的原因,或者B是A的原因,或者A与B有共同的原因C。


推理的误区,到处可见,应该小心识别。 比如:

不完美就弃用

人身攻击

稻草人攻击

滑坡推理

抛出权威、情感、公众

把先后当因果

不是正面,就是反面

把结论换一个说法,并当作理由

把猜测当作理由,推导出结论并执行

对比不当、枚举不当

空泛赞美

草率归纳

......


小白:哇,好多,都是什么来的?


西门吹雪:不展开讲了,可以在群里面交流一下。


小白:所以,简单来说,我要修炼的内功,就是思考理由、思考结论、思考推导质量了?


西门吹雪:是的。另外,经常问“为什么呢”,可以促发思考,甚于可以等同于思考。


小白:为什么呢?




开心时间

我被捕后,他们逼我招供。头天他们打我我没招;第二天给我灌辣椒水也没招;第三天一个女人哄我招了,第四天我还想招,被拖出去枪毙了。


小时候,和小伙伴去小河里捞鱼,收获颇丰。开始分鱼了!

一个小伙伴说:我爸喜欢喝酒,他说大鱼下酒才香!

说完就抓大鱼往桶里放。。。

我就在旁边看着不说话,等他装好,我提起他装鱼的桶就跑,边跑边说:我爸也爱喝酒。。。


一个小村子边上有一栋低矮的小木屋,一位老妇正坐在门前晒太阳。

这时,一辆奔驰车驶了过来,车上走下来一个衣着华丽的男人:“老奶奶,您还记得1943年冬天您救过一个穿着暗红色大衣小男孩的事吗?”

“记得,孩子,当然记得。” 老奶奶兴奋地回答。

“我就是当年那个小男孩儿,我来取大衣了。”


面试官:“忘掉你在大学里学过的东西,这里的工作不需要那些! ”

我:“可我没读过大学啊! ”

面试官:“那不好意思我说错了,这里的工作不需要你! ”


司马光在缸下点了一堆火,笑着说:将水煮干后小朋友就不会淹死了。


因为忘记密码,台风一时无法登录。。。


一个老外说要在1年内吃遍中国,结果五年了,还在四川。。。


数学老师上课拿出量角器,尺度之大令人咋舌。

https://mp.weixin.qq.com/s/hpMbBXlDOmdhgzXqYM_Yew