我不工作@谷歌。
这些摘自博客 Stevey's Blog Rants(现任?Google 员工)

AFAIK 谷歌非常谨慎地将语言的数量保持在尽可能小的范围内,以便他们建立大量专家组来研究他们选择的语言的语义。
这也是为了减少语言互操作性所需的组件组合爆炸——这是我工作过的其他公司的巨额税款,谷歌已经设法将这种税款总体上降至最低。



其他大公司也采用了类似的策略。维护另一种语言是一项繁琐的任务。它不仅需要与您现有的基础架构很好地融合,您还需要有语言专家可以在公司中为相同的标准制定标准,以解决安全问题等问题。
此外,仅仅因为它有一些很酷的功能就切换到另一种语言是没有意义的。我敢肯定,你可以用你的团队精通的语言实现同样的目标。
过去曾有过一些例子,人们从 erlang 切换到 python 来构建并发服务器 [1]。是的,你没看错,是为了构建并发服务器。为什么 ?只是因为整个团队都精通 Python,并且可以实现他们想要的性能/可扩展性要求,而不是使用专门用于该目的的完整外语。

[1] 我们如何以及为什么从 Erlang 切换到 Python
另一个原因是 Google 不使用标准框架。他们构建的任何东西都需要在他们的集群上以“Google Scale”运行。 (我在 Quora 上的一个关于为 Google 工作的不利方面 - 专有解决方案的线程上读到了这一点。)因此,添加更多的语言和框架会导致更多的开销。
比“他们为什么不使用 Ruby?”更好的问题。是“他们为什么要使用 Ruby?”与谷歌已经在使用和可用的语言相比,Ruby 基本上没有提供任何东西,但需要在打包、生产和培训方面进行相当大的投资(对于将在某些生产环境中处理 Ruby 的 SRE)。
几个原因:
1. 谷歌限制了他们使用的技术数量。 3 种受祝福的语言是 C++、Java 和 Python。最近 Go 加入了这个小组。
2. 向组中再添加一种语言需要大量工作,以使其支持谷歌基础设施。想想基本的代码库(即 java 的 guava 等价物),然后是大表、map 和 reduce、google fs、protocol buffers、colossus 等等......列表不断地出现。
3. ruby​​ 还是很不成熟的语言,ruby 1.8 缺少及时的编译器。这意味着它曾经(现在仍然)很慢。当您拥有大数据中心时,它会产生很大的不同,您可以将计算机数量减少 10-20%。
4. Ruby 来得太晚了。 Python 是谷歌选择的动态类型语言,在 rails 出现之前就很流行。
5. Ruby 与 python 相比缺乏任何竞争优势。 ruby 唯一可以更好的领域是元编程。当您面临全球扩展等挑战时,它是次要的。
另一方面,Python 多年来一直是一种科学/学术语言。它具有与各种问题相关的广泛库。
想想高等数学、物理、人工智能、生物信息学等...... Ruby 开源代码库主要与 Web 开发相关。
6. 谷歌现在似乎正在投资 Go,它假设结合了动态和编译语言。我想它的目标是成为终极语言,可以在所有级别的谷歌基础设施中使用。
Ruby 在谷歌中没有什么好用的地方。
与 Google 主要只使用 4 种主要语言(C++、Java、Python、JS)并不鼓励使用其他语言的原因相同......更少的语言 = 更容易集成,更容易让人们获得“代码可读性”(它就像一个徽章,允许你签入代码),更容易让其他人加入任何项目。更少的语言意味着您可以更轻松地将员工视为资源并轻松移动他们。相比之下,多语言项目不仅需要语言(这已经是一项艰巨的任务),而且还需要构建系统、测试(非常强调单元测试)、集成等等。
这是一个非常有趣的早期谷歌员工试图将 LISP 引入公司的故事:
Flownet 页面