# 17 Bill Gates 问题

1. [如果你把一面镜子放在扫描仪上，会发生什么？](#1-ru-guo-ni-ba-yi-mian-jing-zi-fang-zai-sao-miao-yi-shang-hui-fa-sheng-shen-me)
2. [假设有一个和你完全一样的克隆人，而他是你的上司，你愿意和他工作吗？](#2-jia-she-you-yi-ge-he-ni-wan-quan-yi-yang-de-ke-long-ren-er-ta-shi-ni-de-shang-si-ni-yuan-yi-he-ta-gong-zuo-ma)
3. [现在请你面试一下我。](#3-xian-zai-qing-ni-mian-shi-yi-xia-wo)
4. [为什么Quora上的回答会比Yahoo Answer上的回答好？](#4-wei-shen-me-quora-shang-de-hui-da-hui-bi-yahoo-answer-shang-de-hui-da-hao)
5. [对手是现代语言，你的任务是要为Cobol辩护，你会如何进行？](#5-dui-shou-shi-xian-dai-yu-yan-ni-de-ren-wu-shi-yao-wei-cobol-bian-hu-ni-hui-ru-he-jin-hang)
6. [10年后的你是什么样子？](#6-10-nian-hou-de-ni-shi-shen-me-yang-zi)
7. [假设你是我老板，我被解雇了，你会如何通知我？](#7-jia-she-ni-shi-wo-lao-ban-wo-bei-jie-gu-le-ni-hui-ru-he-tong-zhi-wo)
8. [我想要重构一个系统，而你想要从头重写。我们来争论一下该怎么弄吧。然后我们反转角色，再争论一下。](#8-wo-xiang-yao-zhong-gou-yi-ge-xi-tong-er-ni-xiang-yao-cong-tou-zhong-xie-wo-men-lai-zheng-lun-yi-xia-gai-zen-me-nong-ba-ran-hou-wo-men-fan-zhuan-jiao-se-zai-zheng-lun-yi-xia)
9. [老板要你对公司撒谎，你的反应是什么？](#9-lao-ban-yao-ni-dui-gong-si-sa-huang-ni-de-fan-ying-shi-shen-me)
10. [如果你可以穿越到以前，你会给年轻时候的你什么建议？](#10-ru-guo-ni-ke-yi-chuan-yue-dao-yi-qian-ni-hui-gei-nian-qing-shi-hou-de-ni-shen-me-jian-yi)

### 1 如果你把一面镜子放在扫描仪上，会发生什么？

对于纸张来说，扫描结果基本上是纸面上内容。纸的特点是：表面粗糙，是漫反射材料。而镜子这类物品是镜面反射，跟纸这种漫反射的物品扫描出来的结果是不一样的。大家可想像一下在阳光下看镜子，如果太阳光刚好反射到眼睛时，感觉到非常亮，当没反射到眼睛里时，看到就是反射物。 但是在扫描仪内，唯一亮的就是光源，其他地方都是黑色，所以要么镜面把光源的光反射到CCD上了，要么把其他黑色的地方反射到CCD上了，因此扫描镜子的结果大抵有两种，要么全黑，扫描亮度几乎0，要么全亮，扫描出来的值近乎255。

![](https://3213921209-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUXBZM8HtwaoMAyO4j9%2Fuploads%2Fgit-blob-c242d39acbe3b55ed3c63138968ca5d28b1302c7%2Fscanner.jpg?alt=media)

从这里可以看到，如果扫描物是纸张，纸是漫反射材料，会有一部光沿图示方向，从反射镜1、4、5到CCD，然后成像，纸上的内容会对光反射率不一样，从而可以实现内容的扫描。 如果扫描物是镜面，光源的光被反射到其他地方了，而不是反射镜1，所以CCD得到的是纯黑色。

### 2 假设有一个和你完全一样的克隆人，而他是你的上司，你愿意和他工作吗？

和一个和你完全一样的克隆人一起工作，这是一个非常有趣的假设情景！从正面来看，因为他是你的克隆人，所以你们可能有着相似的思维方式、价值观和工作习惯，这可能会使得沟通和协作变得非常顺畅。你们可能会对问题有类似的看法，能够迅速达成共识，同时对彼此的想法和建议更加开放和理解。

然而，也有可能存在挑战。比如，如果你们在某些方面过于相似，可能会缺乏视角的多样性，这在解决需要创新思维的复杂问题时可能是个缺点。此外，如果你有某些不太好的工作习惯或态度，你的克隆上司很可能也会有，这可能会放大这些问题，而不是帮助你改进它们。

最终，是否愿意和他工作，可能取决于你对自己的了解和接受程度，以及你如何看待挑战和机遇的平衡。这还可能涉及到个人成长的机会——看看自己从外部的角度，评估哪些方面是你的强项，哪些可能需要改进。在某种程度上，这也是一个自我反思的机会，可能会帮助你成为一个更好的个人和团队成员。

### 3 现在请你面试一下我。

_todo_

### 4 为什么Quora上的回答会比Yahoo Answer上的回答好？

Quora与Yahoo Answers的质量差异可以从多个方面来解释。虽然两个平台都旨在提供一个用户可以提问和回答问题的社区，它们在设计、社区管理和用户基础等方面存在显著差异，这些因素共同作用，影响了平台上回答的质量。

1. 社区管理和质量控制 Quora：实施了较为严格的社区管理和质量控制措施。Quora鼓励用户使用真实姓名，这可能促进了更负责任的分享和交流。Quora还有一套复杂的算法和社区准则，用于推荐高质量的回答给用户，同时降低低质量内容的可见性。 Yahoo Answers：虽然也有一定的社区准则，但其执行和内容质量控制相对较弱。这可能导致了平台上出现更多低质量和不相关的回答。
2. 专业知识 Quora：吸引了许多专业人士和领域专家，他们愿意分享自己的知识和经验。这意味着问题往往能得到更专业、更深入的回答。 Yahoo Answers：虽然社区广泛，但可能缺乏足够的领域专家参与，这影响了回答的专业性和准确性。
3. 用户基础和社区文化 Quora：建立了一个鼓励严肃、有洞察力和有价值分享的文化。用户基础倾向于寻求深入讨论和有建设性的交流。 Yahoo Answers：社区文化较为松散，虽然也有有价值的交流，但可能更多地包含娱乐性或非专业性的内容。
4. 界面和用户体验 Quora：提供了一个更为现代和用户友好的界面，这可能促进了用户参与度和内容的质量。 Yahoo Answers：界面相对较旧，用户体验可能不如Quora，这也可能影响了用户参与度和内容分享的质量。 结论 尽管Quora和Yahoo Answers都旨在提供一个问答社区，但由于社区管理、用户基础、专家参与度和平台设计的差异，Quora在内容质量上通常被认为优于Yahoo Answers。然而，这并不意味着Yahoo Answers上没有高质量的内容，只是在平均水平上，Quora提供了一个更加专业和深入讨论的环境。

### 5 对手是现代语言，你的任务是要为Cobol辩护，你会如何进行？

在面对现代编程语言的竞争中为COBOL辩护，我们需要从几个关键角度来考虑其独特价值和持久影响。虽然COBOL（公共业务定向语言）可能在某些方面不如现代语言那么灵活或者有吸引力，但它仍然在许多关键领域扮演着不可替代的角色。

1. 稳定性和可靠性 COBOL是为了处理大型商业、财务和行政操作而设计的。这些系统要求极高的稳定性和可靠性，而COBOL的设计恰恰满足了这些需求。许多银行、保险公司和政府机构的关键系统至今仍在使用COBOL编写的软件，这证明了它在提供稳定和可靠服务方面的能力。
2. 处理大量数据的能力 COBOL特别擅长处理大量的数据记录，这在今天的大数据时代依然是一个非常重要的能力。COBOL的文件处理系统和数据存储模型为复杂的数据操作提供了强大的支持，这是许多现代语言难以比拟的。
3. 易于阅读和维护 COBOL使用了接近英语的语法，这使得即使是对编程不太熟悉的人也能理解其代码。这种易读性对于维护和更新庞大的、历史悠久的代码库尤其重要。随着原始开发人员退休，易于阅读的代码可以大大减轻维护负担。
4. 广泛的部署基础 尽管COBOL是一种有着几十年历史的语言，但据估计，全球仍有数百万行COBOL代码正在运行。许多核心商业操作依赖于这些系统，转向现代语言不仅代价高昂，而且风险巨大。因此，COBOL在可预见的未来仍将是许多组织IT基础设施的重要组成部分。
5. 现代化努力 认识到技术发展的需要，COBOL社区和供应商已经在进行现代化的努力，包括提供与Java和.NET等现代平台的集成，以及开发新的工具和框架来支持更敏捷的开发实践。这表明COBOL正在适应现代IT环境的需求。

结论 虽然COBOL可能无法在所有方面与现代编程语言竞争，但它在稳定性、可靠性、处理大量数据以及易于阅读和维护方面的独特优势使它在某些领域仍然不可或缺。通过持续的现代化努力，COBOL仍然为全球经济的许多关键部分提供支持。在这个快速变化的技术世界里，COBOL的持久性证明了它是一种经过时间考验的、有价值的技术资产。

### 6 10年后的你是什么样子？

_todo_

### 7 假设你是我老板，我被解雇了，你会如何通知我？

如果我是你的老板，而不得不做出解雇你的决定，我会确保这个过程尽可能地体面和尊重，同时也明确和专业。以下是我可能会采取的步骤：

1. 安排面对面会议 我会安排一个私密的、面对面的会议，确保这个消息是在一个保护隐私和尊重的环境中传达的。如果面对面不可行，我会选择一个视频通话而不是电话或电子邮件。
2. 直接而尊重地传达消息 在会议上，我会直接但尊重地告诉你：“我很遗憾地告诉你，我们不得不结束你在公司的职位。”我会尽量避免使用模糊或可能引起误解的语言。
3. 提供具体原因 我会提供具体且公正的原因，解释为什么做出了这个决定，同时确保所提供的理由是事先经过考虑和验证的。这旨在提供一定程度的闭环，帮助你理解决定背后的逻辑。
4. 提供支持 我会提供可用的资源和支持，比如职业规划服务、推荐信或是解雇补偿（如果适用）。我还会解释接下来的流程，包括任何必须完成的手续。
5. 允许对话 我会给你机会表达你的感受，提出问题，并且我会尽我所能回答这些问题。我明白这可能是一个情绪化的时刻，我会表现出同情和理解。
6. 保持专业 整个过程中，我会保持专业，确保对话的私密性，避免任何形式的负面评价或不必要的指责。
7. 关注后续 在会议结束后，我会确保所有相关的后续行动得到执行，比如更新人力资源记录、处理遗留事务和确保你知道如何领取任何应得的福利。

虽然解雇是一个困难的决定，但我会尽量让这个过程公正、透明和尽可能少造成伤害，同时也帮助你向前看，规划未来。

### 8 我想要重构一个系统，而你想要从头重写。我们来争论一下该怎么弄吧。然后我们反转角色，再争论一下。

重构的立场

* 为什么选择重构：

1. 成本效益：重构可以逐步进行，不需要大量一次性的投资。相比之下，从头重写可能需要大量的前期投资，风险更高。
2. 风险控制：通过逐步重构，我们可以在整个过程中持续运营现有系统，逐渐替换或改进系统的各个部分，从而减少对业务的干扰和风险。
3. 保留业务价值：现有系统中积累的业务知识和数据是宝贵的。重构允许我们保留这些已经验证的业务逻辑和实践，而不是在重写过程中可能重新引入错误。
4. 持续改进：重构支持持续改进的文化，鼓励定期审视和改进代码，而不是等到系统不堪重负时才采取行动。 技术债务管理：重构是管理和减少技术债务的有效方法。通过定期更新和改进代码，我们可以防止技术债务的积累。

从头重写的立场

* 为什么选择从头重写：

1. 技术架构不合时宜：如果现有系统的技术架构已经严重过时，无法满足当前和未来的业务需求，从头开始可能是更合理的选择。
2. 代码质量低下：当现有系统的代码质量极差，到了难以通过重构来改进的程度时，完全重写可能是唯一的解决办法。
3. 提高效率和性能：从头开始可以让我们利用最新的技术和架构模式，构建更高效、性能更强的系统。
4. 清理遗留系统：有时候，遗留系统中的错误和不一致性过于根深蒂固，从头开始可以提供一个干净的 slate，避免继续拖延遗留问题。
5. 业务方向变更：如果业务方向发生了根本性变化，现有系统可能无法有效支持新的业务需求。这种情况下，从头重写可以更好地对齐业务和技术目标。

角色反转

* 重构的立场（现在反对）：

1. 从头重写让我们有机会纠正过去设计上的错误和不足，为应对未来的挑战打下坚实的基础。
2. 面对快速发展的市场和技术环境，彻底的重写可以让我们更快地适应变化，采用新技术和最佳实践。
3. 随着时间的推移，重构可能最终耗费比从头开始更多的资源，特别是当需要不断修补和改进旧有设计和代码时。

* 从头重写的立场（现在反对）：

1. 从头重写可能伴随着巨大的风险和不确定性，尤其是在时间和成本估计方面。重构提供了一种更渐进、可控的方法来改进系统。
2. 重写可能导致业务运营中断或服务不稳定，而重构允许我们在不影响现有业务的前提下进行改进。
3. 在重写过程中，可能会失去原有系统中那些经过时间检验、稳定运行的业务逻辑和功能。重构则允许我们保留

### 9 老板要你对公司撒谎，你的反应是什么？

面对老板要求撒谎的情况，我会采取以下步骤来处理：

1. 评估情况 首先，我会仔细评估老板的要求究竟涉及哪些方面。是关于工作进度的小调整，还是涉及到法律、伦理或财务上的严重不实陈述？理解情况的严重性对于决定下一步行动至关重要。
2. 澄清理由 我会尝试和老板进行坦诚的对话，澄清他/她要求撒谎的具体原因。了解背后的动机可能有助于找到问题的根本原因，或是发现可以避免撒谎的其他解决方案。
3. 寻找替代方案 在了解了全部背景信息后，我会尝试提出替代方案，这些方案能够在不牺牲诚信的前提下达成目标。例如，如果问题是关于项目延期，我们可以讨论如何调整项目计划，而不是对外提供不实信息。
4. 强调诚信的重要性 我会向老板强调长期来看，诚信和透明度对公司的重要性远超过短期内通过不诚实手段获得的任何利益。损害信誉可能会对公司造成长远的负面影响。
5. 拒绝不合理要求 如果老板的要求明显不道德或违法，并且坚持要求执行，我会礼貌但坚决地拒绝。在这种情况下，维护个人的职业道德和合法权益是最重要的。
6. 寻求外部帮助 如果情况严重，涉及法律或伦理问题，我可能需要寻求外部资源的帮助，比如联系公司的人力资源部门、法律顾问，或是使用公司的举报渠道。

面对要求撒谎的情况，重要的是保持职业道德和诚信，同时采取适当的措施来保护自己的权益和公司的长期利益。在任何情况下，诚实和透明都应该是处理问题的基础。

### 10 如果你可以穿越到以前，你会给年轻时候的你什么建议？

_todo_
