Linux内核管理风格
这是一份简短的文件,描述了Linux内核的首选(或虚构的,这取决于你问谁)管理风格。它旨在在某种程度上反映过程/编码风格.rst文件,并主要是为了避免一遍又一遍地回答相同(或类似)的问题。
管理风格是非常个人化的,比简单的编码风格规则更难以量化,因此这份文件可能与现实有关,也可能与现实无关。它起初是一种玩笑,但这并不意味着它可能不是真的。你得自己决定。
顺便说一句,当谈到“内核管理者”时,这完全是关于技术领导者,而不是公司内部从事传统管理的人。如果你签署采购订单或者对你的团队预算有任何概念,你几乎肯定不是内核管理者。这些建议可能适用于你,也可能不适用。
首先,我建议购买《高效能人士的七个习惯》,但不要读它。把它烧了,这是一个很好的象征性姿态。
1. 决策
每个人都认为管理者做决策,决策是很重要的。决策越大、越痛苦,做出决策的管理者就必须越大。这听起来很深刻、很明显,但实际上并不是真的。
游戏的名字是避免做出决策。特别是,如果有人告诉你“选择(a)或(b),我们真的需要你在这个问题上做出决定”,作为管理者,你就麻烦了。你管理的人最好比你更了解细节,所以如果他们来找你做技术决策,你就完蛋了。显然,你没有资格为他们做出那个决定。
(推论:如果你管理的人不比你更了解细节,你也完蛋了,尽管原因完全不同。也就是说,你在错误的工作岗位上,他们应该管理你的才华。)
所以游戏的名字是避免决策,至少是避免大而痛苦的决策。做小而无关紧要的决策是可以的,而且会让你看起来像是知道自己在做什么,所以内核管理者需要做的是把大而痛苦的决策变成没人真的在乎的小事情。
要意识到的是,大决策和小决策的关键区别在于你是否能修正你的决策。任何决策都可以通过确保如果你错了(你肯定会错),你总是可以通过回溯来撤销损害来使其变得微不足道。突然间,你因为做出了两个无关紧要的决策而成为了双倍的管理者——错误的决策和正确的决策。
人们甚至会把这看作是真正的领导力(咳咳,胡扯)。
因此,避免大决策的关键就是避免做那些不能被撤销的事情。不要让自己被逼到一个无法逃脱的角落。一个被逼到角落的老鼠可能是危险的——一个被逼到角落的管理者只是可怜。
事实证明,由于没有人会愚蠢到真的让一个内核管理者承担巨大的财务责任,通常情况下回溯是相当容易的。因为你不会浪费大量可能无法偿还的钱,你唯一能够回溯的就是技术决策,而在那里回溯是非常容易的:只需告诉每个人你是一个无能的蠢货,说你很抱歉,然后撤销你让人们在过去一年里做的所有无用工作。突然间,你一年前做出的决策并不是一个大决策,因为它可以很容易地被撤销。
事实证明,有些人对这种方法有困难,原因有两个:
- 承认自己是个白痴比看起来更难。我们都喜欢保持表面,公开承认自己错了有时确实很难。
- 有人告诉你,你为了过去一年的工作而付出的努力毫无价值,对那些可怜的工程师来说可能也很难,虽然实际工作很容易通过删除来撤销,但你可能已经无法挽回那个工程师的信任。记住:“无法挽回”是我们一开始要避免的,而你的决策最终变成了一个大决策。
幸运的是,通过提前承认你一无所知,并在事情发生之前告诉人们你的决定纯粹是初步的,可能是错误的。你应该始终保留改变主意的权利,并让人们非常清楚地知道这一点。当你还没有做真正愚蠢的事情时,承认自己愚蠢就容易得多。
然后,当事实证明真的很愚蠢时,人们只会翻白眼,说“哎呀,又错了”。
这种预先承认自己的无能可能也会让那些真正做工作的人再三考虑一下是否值得去做。毕竟,如果他们不确定这是一个好主意,你肯定不应该通过承诺他们的工作将被包括来鼓励他们。让他们在着手大事之前至少三思。记住:他们最好比你更了解细节,而他们通常已经认为自己对一切都有答案。作为管理者,你能做的最好的事情不是灌输信心,而是让他们进行健康的批判性思维。
顺便说一句,避免做决策的另一种方法是可怜兮兮地抱怨“我们不能两者兼得吗?”然后看起来很可怜。相信我,这很有效。如果不清楚哪种方法更好,他们最终会想出答案。最终的答案可能是两个团队都对这种情况感到沮丧,以至于他们最终放弃。
这可能听起来像是失败,但通常这意味着两个项目都有问题,而参与其中的人无法做出决定的原因是他们都错了。你最终会闻起来像玫瑰花,而且你避免了又一个你可能会搞砸的决策。
2. 人员
大多数人都是白痴,而作为管理者,你将不得不处理这一点,也许更重要的是,他们必须与你打交道。
事实证明,虽然技术错误很容易撤销,但人格障碍却不那么容易撤销。你只能忍受他们的——和你自己的。
然而,为了做好内核管理者的准备,最好记住不要烧毁任何桥梁,炸毁任何无辜的村民,或者疏远太多的内核开发者。事实证明,疏远人是相当容易的,而重新融合他们则很困难。因此,“疏远”立即成为“不可逆转”的一部分,并成为根据1)决策的一项禁忌。
这里只有几条简单的规则:
- 不要在公开场合称呼别人为混蛋
- 当你忘记了规则(1)时学会道歉
第一个问题是很容易发生的,因为你可以用成百上千种方式说“你是个混蛋”,有时甚至自己都没有意识到,几乎总是怀着一种坚定的信念认为自己是对的。
而且你越是确信自己是对的(让我们面对现实,你几乎可以称呼任何人为混蛋,而且你经常是对的),事后道歉就会变得越来越困难。
要解决这个问题,你实际上只有两个选择:
- 变得非常擅长道歉
- 把“爱”均匀地传播出去,以至于没有人真的感到自己被不公平地针对。如果足够有创意,他们甚至可能会觉得好笑。
始终彬彬有礼的选择实际上是不存在的。没有人会信任一个明显隐藏真实性格的人。
3. 人员II - 好的那种人
虽然事实证明大多数人都是白痴,但与此相关的推论是,遗憾的是你也是其中之一,而且虽然我们都可以沉浸在比平均水平更好的安全知识中(让我们面对现实,没有人会相信自己是平均水平或低于平均水平),我们也应该承认我们并不是最聪明的人,还会有其他人比你更不是白痴。
有些人对聪明人反应不好。其他人则利用他们。
确保你作为内核维护者属于第二组。巴结他们,因为他们是会让你的工作变得更容易的人。特别是,他们将能够为你做出决策,这才是游戏的全部意义。
所以当你发现有人比你更聪明时,就顺水推舟吧。你的管理责任主要是说“听起来是个好主意——尽情去做”,或者“听起来不错,但xxx怎么样?”后者尤其是一个很好的方式,要么学到一些关于“xxx”的新东西,要么通过指出聪明人没有考虑到的事情来显得更有管理能力。无论哪种情况,你都是赢家。
要注意的一件事是要意识到在一个领域的伟大并不一定能转化为其他领域的伟大。所以你可能会在特定方向上激励人们,但让我们面对现实,他们可能擅长自己的工作,但在其他方面很糟糕。好消息是人们往往会自然地回到他们擅长的领域,所以当你在某个方向上激励他们时,这并不是不可逆转的事情,只是不要太过分。
4. 推卸责任
事情会出错,人们想找个人来承担责任。你中了。
接受责任其实并不难,特别是如果人们有点意识到这并不全是你的错。这就带来了承担责任的最佳方式:为别人承担责任。你为承担责任而感到好,他们因为没有被责备而感到好,而因为你的无能导致他们失去了整整36GB的色情收藏,他们会勉强承认你至少没有试图推卸责任。
然后私下告诉真正搞砸的开发者(如果你能找到他们)他们搞砸了。不仅是为了让他们将来避免这种情况,而且是让他们知道他们欠你一个人情。而且,也许更重要的是,他们也很可能是能够解决问题的人。因为,让我们面对现实,那肯定不是你。
承担责任也是你能成为管理者的原因之一。这是让人们信任你的一部分,也是让你有可能获得荣耀的一部分,因为你是那个说“我搞砸了”的人。如果你遵循了前面的规则,到现在你应该已经很擅长说这句话了。
5. 需要避免的事情
有一件事比被人称为“混蛋”更讨厌,那就是用一种假正经的声音称呼别人为“混蛋”。前者你可以道歉,后者你可能不会有机会。即使你做得很好,他们可能也不会再听你说话。
我们都认为自己比任何人都好,这意味着当别人装腔作势时,我们真的会感到不舒服。你可能在道德和智力上都优于你周围的每个人,但除非你真的打算激怒某人,否则不要让它太明显。
同样,不要对事情过于客气或含蓄。礼貌很容易变得过分并掩盖问题,正如人们所说,“在互联网上,没有人能听到你的含蓄”。使用一个大钝物体来强调这一点,因为你不能指望人们能理解你的意思。
一些幽默可以帮助缓解钝性和道德说教。过分到荒谬的程度可以在不让接收者感到痛苦的情况下传达一个观点,他们只会认为你在开玩笑。因此,它可以帮助克服我们对批评的个人心理障碍。
6. 为什么是我?
由于你的主要责任似乎是替别人的错误负责,并且让每个人都痛苦地意识到你的无能,显而易见的问题就是为什么要一开始就这样做呢?
首先,虽然你可能不会有尖叫的十几岁女孩(或男孩,让我们不要带有偏见或性别歧视)敲你的更衣室门,但你会因为“掌控一切”而获得巨大的个人成就感。别管你实际上只是试图跟上别人的步伐,拼命追赶他们的速度。每个人仍然会认为你就是负责人。
如果你能胜任这份工作,那就太棒了。