挖坑和踩雷

2024-01-17 14:20
文章标签 挖坑

本文主要是介绍挖坑和踩雷,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

郑昀 创建于2015/2/6 最后更新于2015/7/8
关键词: 挖坑、埋雷、踩雷、RCA、对题集

本文档适用人员:技术人员
引子
在讲挖坑之前,先引述台湾作家侯文咏讲的一个真实的故事。
话说上世纪九十年代,为了迎接两岸三通的商机,台湾一窝蜂成立了很多小航空公司。注意几个关键词,大干快上,市场卡位,就像我们搭建技术体系一样呼啦啦大厦起。
在这样的背景下,一架民航小飞机失事了,有这么几个离奇之处。
第一,毫无预警,驾驶员刚通报飞机失速,随即就坠毁了。
第二,机体严重变形,但飞机没有爆炸。
第三,一个负责监视引擎燃烧状况的警示灯,钨丝严重烧坏变形,所以它在出事时可能是点亮的。
于是调查小组请专家对引擎开展了鉴识工作,但找不出可能导致引擎燃烧失常的原因。
就在这时,化学鉴识人员打来电话。
你们提供的飞机燃料有没有问题,他说,那根本不是汽油,是
对失事飞机燃料箱内的燃料重新采样,再请他们检验,报告结果出来了,仍然是100%的纯水。   
检查加油记录,检查贮油槽的汽油(注:活塞式发动机用汽油),一切都合乎标准。
百思不得其解。
我在新员工培训会上讲这个故事讲到这里,点了一句:你要是知道会怎么死,你一般也就不会死,问题就在于你往往不知道死在什么地方。
话说有一天主人公在家里吃饭,太太煮了一道排骨汤,看着浮在汤面上的油,看着看着,突然,主人公福至心灵,于是又跑了一次现场。这家航空公司拥有两个自制的大贮油槽,原先失事飞机加油的那个贮油槽已经用光汽油了,另外的这一大槽还剩下将近一半。
由于是小型民航公司,所以飞机航次不多,上一桶汽油大约用了四个多月。
至此,答案已经很清楚了。
主人公请人找来一条管子,伸到油槽底部,利用虹吸管原理把底层的汽油抽出来。果然,管子流出来许多清澈无味的液体。不用化验就知道那是100%的纯水。难怪飞机没有爆炸。   
为什么会这样?
新员工培训会上有人猜是不是业主以次充好故意掺水,中国大陆这些年不就老是爆出新闻,大批车辆加油后就趴窝,怀疑是汽油掺水了。
请注意台湾是个岛国,湿度比较大,四个月来,槽内空气在白天温度升高时凝成水滴,不断地沿着内壁滑入汽油中。由于水的比重大于油,这些水全沉入了最底层。  
主人公找出国外贮油槽的设计图,发现人家全都可以排除或避免底层液体使用。而小民航公司为了卡位,急就章制造出来的贮油槽,虽然外观差不多,可是实际上的功能却只是个容器而已。  
所以,悲剧就这么发生了,那架倒霉的飞机有多个油箱,一个是原先剩下的汽油,其他的从油槽底层加了一肚子水,第一个油箱耗光后就突然失速掉了下来,一肚子水自然不会爆炸。
很多人都是这样,看上去在大公司干过,或者所在团队曾推出过知名系统,其实他可能看到的都是“结果”或“最终执行的指令”,至于各种设计和决策为何是这样,中间经历过哪些变化,每次变化是为什么,哪些做对了,哪些做错了,他不见得经历过这些思辨。换句话说,他没自己挖过坑踩过雷。那接下来他到另一个急就章的新团队新公司,会如何呢?
没踩过雷,没总结过,没传下去,就还会继续挖坑
我们也曾急就章,平地起高楼,也曾做对过很多事情,也做错了更多。
这也是我为什么既要贯彻 RCA(Root Cause Analysis,根本原因分析)制度,一直出 RCA 报告和季度回顾,又要整理“对题集”的缘故,不知道历史,何以有未来?
冯仑说过, 我们要把别人的历史当作自己的未来,这样,才能知道过去人家在做什么,我们现在应该怎么做
所以,新人在工作中要有意识地去了解,怎么做是对的,为什么是对的,前提条件是什么,什么是错的,错在哪里,不仅仅要看现在和未来的错与对,还要看过去若干年的错与对。当然假如你的主管能把这一切总结好了告诉你,那最好不过。
-EOF-
欢迎订阅我的微信订阅号『老兵笔记』,请扫描二维码关注:
老兵笔记订阅号二维码

转载于:https://www.cnblogs.com/zhengyun_ustc/p/digging.html

这篇关于挖坑和踩雷的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/616314

相关文章

面试官给我挖坑:URI中的 “//” 有什么用?

点击上方“朱小厮的博客”,选择“设为星标” 后台回复”加群“获取公众号专属群聊入口 欢迎跳转到本文的原文链接:https://honeypps.com/network/whats-the-use-of-/-in-uri/ 我们在浏览网页的时候,需要在浏览器中输入http://或者https://开头的URL地址,类似http://honeypps.com,那么这里的"://"或者"//"有什么

[Labview]图片叠加下的表格视图拖拽功能:挖坑粗糙版

没错,又是Labview表格T - T 由于项目中用到的表格上有一张用于画框的二维图片,感兴趣可看这篇 [Labview] 表格单元格外边框 二维图片叠加绘图 因此在滚动条与鼠标滚轮的基础上,想再增加一个拖拽移动的功能。 但 [二维图片] 并没有 拖拽开始 的事件,因此只能通过 鼠标按下 与 鼠标释放 两个事件的时间与坐标进行差值判断。 逻辑上应该没问题,可惜实现效果非常智商低下。

【数据结构-之八大排序(下),冒泡排序,快速排序,挖坑法,归并排序】

🌈个人主页:努力学编程’ ⛅个人推荐:基于java提供的ArrayList实现的扑克牌游戏 |C贪吃蛇详解 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 hello,这里提前祝大家五一快乐,每天都能快快乐乐,并且每天都能学到东西。 我们今天继续顺着上次没有说完的排序算法,这里简单复习一下,我们根据每种排序的方式不同,大致上将常见的排序算

冒泡排序快速排序(前后指针、挖坑、左右指针法)【Java实现】

一、冒泡排序 思想: 对N个元素进行升序排列时,依次比较两个相邻的元素,如果前者大于后者就交换,一趟排序找出一个最大值并放在最后,然后缩小排序区间继续找出该区间的最大值,并放在倒数第二个位置,倒数第一个位置...,直到区间缩小至只剩一个元素,排序完成。整个排序过程要进行N-1趟排序。 原理: 1.比较相邻的元素。如果前者比后者大,就交换他们两个。 2.对每一对相邻元素做同样的工作,从

前人挖坑,后人种树

天真的人们能够爱——这就是他们的秘密. ——赫尔曼•黑塞 天真的人们能够爱——这就是他们的秘密. ——赫尔曼•黑塞 天真的人们能够爱——这就是他们的秘密. ——赫尔曼•黑塞 天真的人们能够爱——这就是他们的秘密. ——赫尔曼•黑塞 天真的人们能够爱——这就是他们的秘密. ——赫尔曼•黑塞 天真的人们能够爱——这就是他们的秘密. ——赫尔曼

快速排序常见3种方法(hoare、挖坑法、前后指针法)以及改进。

快速排序 快速排序的思路: 通过一趟快速排序:找到基准值正确的索引位置,将序列划分为2部分,左侧序列小于基准值,右侧序列大于基准值。然后再对左右两侧的序列分别进行递归处理,最终左右两侧的序列均为有序序列,排序即可完成。 整体思路如下: 给定low 和high分别代表第一个元素和最后一个位置元素的索引, 假定基准值key是最左侧的元素,比较的时候从数组的尾部进行比较, (1).当最右侧的元

十大基础排序 · 四 --- 快速排序(不稳定)挖坑填补法+区间分割法+3种优化方法

1. 分析 /*4. 快速排序(QuickSort)#平均时间复杂度: O(nlogn) #最坏时间复杂度:O(n2) (有序的情况)#空间复杂度:需要一个栈空间,若每趟排序将记录均匀分割成两个相近的子序列,则栈的最大深度为 向下取整[logn]+1;若偏向一边, 最坏情况,栈最大深度为n;在一趟分割后比较分割后的长度,先对短序列排序,则栈最大深度为O(logn);#特点: 快速排序是比较

【排序算法】实现快速排序值(霍尔法三指针法挖坑法优化随即选key中位数法小区间法非递归版本)

文章目录 📝快速排序🌠霍尔法🌉三指针法🌠挖坑法✏️优化快速排序 🌠随机选key🌉三位数取中 🌠小区间选择走插入,可以减少90%左右的递归🌉 快速排序改非递归版本🚩总结 📝快速排序 快速排序是一种分治算法。它通过一趟排序将数据分割成独立的两部分,然后再分别对这两部分数据进行快速排序。 本文将用3种方法实现: 🌠霍尔法 霍尔法是一种快速排序中常用

排序(6)——快速排序算法之挖坑版&前后指针版

目录 挖坑版 基本思路 代码实现  注意点 前后指针版 基本思路 代码实现 注意点 由于hoare版本的快速排序有很多坑和需要注意的地方,就会导致代码写起来不容易,这里我们给出两种不同的单趟排序思路:挖坑版&前后指针版。 挖坑版 基本思路 先将第一个数记作key,然后把它当作一个坑位。右边先走找小,找到后填补到坑位上,然后该位置变成新的坑位。接着左边走找大,找到后再将

挖坑不填坑,菊花塞电灯系列之大神帮帮我

大神快来帮帮我,为什么我的结果等于0? /*** 大神留步,帮我看个问题.* @User: 槑兄弟* @Date: 2019/5/27 10:56* @Desc * @Param */public class BadCode {/*** 计算总数*/public void countDemo(){int num = 0;for (int i=0;i<100;i++