四时宝库

程序员的知识宝库

什么是 AI 架构师? — Bret Taylor(二)

[00:05:47] Google Maps 重写故事

[00:05:47] Alessio:关于 Google 的著名故事是,在 map quest quest maps 收购后的一周内,您重写了 Google 地图,那里的故事是什么?

[00:05:57] Alessio:是吗。其实是真的。是 [00:06:00] 被美化了吗?就像,这是怎么来的?有没有 Paul 以前没有分享过的细节?

[00:06:06] Bret:这在很大程度上是真的,但我会给出颜色评论。所以它实际上是前端,而不是后端,但事实证明,对于 Google 地图来说,前端是困难的部分,因为 Google 地图是。

[00:06:17] Bret:基本上是第一种真正交互式的 Web 应用程序,比如说 first ish。我认为 Gmail 确实是 Gmail,当时很多不是工程师的人可能并不欣赏它的交互性。它只是很快,但是。谷歌地图,因为你可以拖动地图,而且它有点图形化。

[00:06:38] Bret:天哪,它真的是主流,我想,它是一张地图吗

[00:06:41] Swyx:那时候的 Quest 是,你有上下的箭头,它

[00:06:44] Bret:是上下箭头。每张地图都是一张图像,你只需点击左键,然后等待几秒钟到新地图,让它也变得非常小,因为那天在计算机上生成大图像有点昂贵。

[00:06:57] Bret:所以谷歌地图在这方面确实具有创新性 [00:07:00] 。它的故事。有一家名为 Where Two Technologies 的小公司,由两个丹麦兄弟 Lars 和 Jens Rasmussen 创立,他们现在是我最亲密的朋友。他们制作了一款名为 expedition 的 Windows 应用程序,其中包含精美的地图。即使在 2000 年也是如此。

[00:07:18] Bret:因为每当我们收购或某种程度上收购他们的公司时,Windows 软件都不是特别流行,但他们对地图绘制充满热情,我们制作了一个本地搜索产品,它的受欢迎程度有点中等,有点像搜索产品的黄页。所以我们想真正进入地图绘制。

[00:07:36] Bret:我们已经开始着手了。他们的小团队似乎对此充满热情。所以我们想,快来加入我们吧。我们可以一起构建它。

[00:07:42] 技术挑战和创新

[00:07:42] Bret:事实证明,他们构建了一个 Windows 应用程序是一个巨大的祝福,因为与构建 Web 浏览器相比,您在编写本机代码时受到的技术限制更少,尤其是在没有真正交互式 Web 应用程序的情况下,它最终会结束。

[00:07:56] Bret:改变我们 [00:08:00] 希望通过应用程序达到的质量水平,因为我们想要的东西感觉像是原生 Windows 应用程序。所以,我们真的很幸运,你知道,他们不寻常的技术选择被证明是最大的祝福。所以我们花了很多时间基本上在想,如何在 Web 浏览器中制作交互式可拖动地图?

[00:08:18] Bret:您是如何逐步加载新的地图瓦片的,您知道,因为您甚至会向下拖动内容,例如当时占主导地位的 Internet Explorer,大多数浏览器一次只能从同一域中加载两张图像。所以我们最终让我们的地图瓦片服务器有这样的。

[00:08:37] Bret:40 个不同的子域,这样我们就可以像很多黑客一样加载地图和平行线。我很高兴能深入探讨

[00:08:44] Swyx:HTTP 连接之类的。

[00:08:46] Bret:他们就是喜欢,最大并行度为 2。所以如果你有一张地图,一组地图瓦片,大概有八个,所以我们只是,无论如何我们都处于浏览器的杂草中。

[00:08:56] Bret:所以有很多管道。我可以,我对浏览器的了解比 [00:09:00] 大多数人都多得多,但到最后,公平地说,这些代码上有很多胶带。如果你曾经做过一个工程项目,你不太确定从 A 点到 B 点的路径,那差不多就是。通过一次建造一个房间来建造房屋。

[00:09:14] Bret:嗯,最后没有太多的架构凝聚力。然后我们收购了一家名为 Keyhole 的公司,后来成为 Google earth,就像那三个一样,它也是一个原生 Windows 应用程序,独立的应用程序,很棒的应用程序,但有了它,我们获得了所有这些卫星图像的许可。因此,在 2005 年 8 月,我们增加了。

[00:09:33] Bret:Google 地图的卫星图像,这增加了代码库的复杂性。然后我们决定要支持 Safari。那时还没有手机。所以 Safari 就像 Mac 上新生的浏览器。事实证明,幕后有很多决策,在某种程度上受到这个 Windows 应用程序的启发,比如大量使用 XML 和 XSLT 等等。

[00:09:54] Bret:这些技术在两千年代曾短暂地流行起来,现在每个人都讨厌 [00:10:00] 原因。事实证明,所有 XML 功能和 Internet Explorer 都不支持 Safari。所以人们就像重新实现 XML 解析器一样。就像一堆狗屎。

[00:10:11] Bret:我不得不说你这边的一句话。是的,的

[00:10:12] Alessio:当然。

[00:10:13] Bret:所以。它从这个每个人都引以为豪的精美优雅的应用程序变成了可能拥有数百 K JavaScript 的应用程序,这听起来什么都没有。现在我们谈论的是人们有调制解调器,你知道,不是所有的调制解调器,但这是一件大事。

[00:10:29] Bret:所以感觉很慢。加载需要一段时间,而且它不像一个很棒的代码库。就像一切都很脆弱。所以我就得到了。对此感到非常沮丧。然后一个周末,我确实重写了所有内容。当时 JSON 这个词还没有被创造出来,只是为了给你一个感觉。所以都是 XML。

[00:10:47] Swyx:是的。

[00:10:47] Bret:我们用的是现在所说的 JSON,但我刚才说的是,让我们使用 eval,这样我们就可以快速解析数据。而且,再说一次,它实际上是 JSON,但当时还没有它的名字。所以我们 [00:11:00] 只是说,让我们。从服务器传递 JavaScript 并对其进行评估。然后有人就重构了整个事情。

[00:11:05] Bret:而且,我并不是个天才。这就像,你知道的,如果你知道你希望你一开始就知道的一切,而我知道所有的功能,因为我是 JavaScript 的主要作者之一。我就是喜欢,我只是喝了很多咖啡,整个周末都熬夜。

[00:11:22] Bret:然后我,我想我建立了一点名声,很长一段时间都没人知道这件事。然后,创建 Gmail 的 Paul 和我最终也与他一起创办了一家公司,毕竟这一切在播客上讲述了这一点,现在它已经很大了,但基本上是真的。我确实重写了它,这是我最自豪的事情。

[00:11:38] Bret:我认为 JavaScript 人很欣赏这一点。就像所有谷歌地图的 un G 压缩包大小一样。当我重写时,它是 20 K G 拉链。对于整个应用程序来说,它要小得多。它下降了大约 10 倍。谷歌上发生了什么?谷歌是一家相当主流的公司。所以,我们的使用量飙升,因为事实证明它更快。

[00:11:57] Bret:在 Google 的规模上,仅仅更快就值得 [00:12:00] 个百分点的增长。那么如何

[00:12:03] Swyx:您有很多现代工具吗?与测试套件一样,没有编译器。

[00:12:07] Bret:实际上,这不是真的。我们只做了一件事。所以我实际上认为 Google,我,你可以。下载它。有一个,Google 有一个 closure 编译器,一个 closure 编译器。

[00:12:15] Bret:我不知道是否有人还在使用它。不见了。是的。是的。它有点失宠了。是的。嗯,直到最近,它仍然比大多数 JavaScript 压缩器更好,因为它更像是它对变量和事物进行了更多的重命名。大多数人现在使用 ES build 只是因为它很快,闭包编译器构建在 Java 上,而且速度非常慢等等。

[00:12:37] Bret:但是,我们确实有这个,就是这样。好。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接