我周末浏览了 Ken Kocienda 的一条推文
我不认识 Ken,所以对他过于严厉感到有点抱歉。但我对自己的看法没有改变。在我看来,说“网络浏览器用于查看文档”现在很愚蠢,并且暗示这是“计算历史上最大的错误转向”感觉像是“你在网络开发方面的职业生涯是无效的”,当人们贬低我的工作时,我臭名昭著地 无法接受。
无论如何,重点是愚蠢的。Ken 在 Twitter-dot-com 上发布了这条推文,然后附上了招聘信息的链接。我希望我们都能看到 Ken 实际上是在利用网络不仅仅是文档查看器的特性来传播他的信息并帮助自己。这感觉就像说“汽车很糟糕”,然后开车去杂货店一样。
船已起航。网络的功能非常丰富,远远超出了查看文档的范围。我知道争论的点在于这是一个错误,而不是网络浏览器目前无法做到更多。如果这是真的,那么你想让网络做什么?开始剥离功能?我们应该将浏览器简化为文档查看器吗?也许我们只是把钥匙交给 Facebook,然后他们就会告诉我们应该做什么(哈哈)。
一个超级强大的开放网络是极好的。这意味着我们可以在开放网络上的开放标准上构建事物,而不是在围墙花园中的专有技术上构建事物。这是构建事物的最佳场所。仅 URL 就是在网络上构建的理由。
但是,要做到正确仍然需要一些细致入微的考虑。我喜欢 Noam Rosenthal 的“小熊粥” “网络是否应该公开硬件功能?”,该文章从讨论 Alex Russell 的 “平台邻近理论” 开始。
我与作者对保持开放网络相关的热情以及对网络功能增强速度过慢会导致网络变得无关紧要的担忧产生共鸣。我的不喜欢应用商店和其他围墙花园也加剧了这种担忧。但作为一个用户,我可以理解相反的观点——当我不知道我正在浏览的网站能够或不能做什么时,我有时会感到困惑,我发现平台限制和审核令人欣慰。
也许我们只是放慢速度,谨慎地做事。好的慢。 慢,像炖牛肉一样。
我们现在正在这样做,即使是偶然的。谷歌的进步非常迅速。苹果说等等,这里存在安全问题。还有一点反过来。我想指出其他起作用的力量,但我想我们现在只剩下两个主要的浏览器供应商了。并不是要贬低 Mozilla,但他们对网络平台做出的选择目前对网络的势头影响不大。
那么这个网络的开放性在哪里呢?
是的,它们很好,但它们也正在被 WHATWG 重新定义,基本上与上述相同的人。
我认为这里被批评的问题是,复杂性(即创建新网络浏览器的进入门槛)是由主要参与者决定的,如第一段引言中所述。我们有标准化组织,但它们当然不是自给自足的,而且它们通常只是同一批人以不同的名义存在。
更不用说新的 URL 规范有一个漂亮的方框,其中包含“特殊”和“非特殊”URL。尝试开发新的东西(比如双子星协议)吧,但它是“非特殊的”,你知道的。
我认为当公司控制权过大时,进行批评是公平的,但网络中有很多开放的东西。有一个开放的标准化流程。为所有浏览器提供动力的代码是开源的。互联网是一个开放的地方(我们需要努力保护它)。
此刻,您可以购买一个域名并在数千个主机中的一个上设置一个 Web 服务器,以发布几个供应商的浏览器可以加载的网页。
所有这一切,都不需要苹果或谷歌的任何批准。如果苹果或谷歌不喜欢你的页面,他们需要通过法律途径将其关闭。
是的,网络底层的工作应该更加开放,这是一个问题。我希望有更多来自更多供应商的浏览器——这也是一个问题。但不要低估参与网络的开放性。
我相信蒂姆·伯纳斯-李最初的意图是所有网页都可以在浏览器中编辑。因此,即使从一开始,意图也超出了浏览器仅仅是一个查看器的范围。
我同意 Ken 的看法。当然,我使用现代网络,但我真的非常讨厌 JavaScript 及其使用方式。
您尝试过关闭 JS 吗?您可能会认为大多数网站在没有 JS 的情况下无法使用且已损坏——没有交互元素,一切都被冻结,就是这样?事实是,几乎没有网站会显示任何内容,除了空白的白色页面。
您是否注意到纯 CSS 技巧通常是伟大的,运行流畅,而 CSS+JS 效果在某种程度上更糟糕,在旧硬件上可能很滞后?
我认为仅仅为了显示静态文本页面而使用 JS 从根本上讲是错误的,这就是我们讨论它的原因。
我不知道。这有点像在名字里。超文本传输协议。
我已经做了 20 年的网络开发了。我热爱我的工作以及网络所取得的成就。Http 和浏览器显然不是为了做他们现在做的事情而设计的。说将 http 变成应用程序通信协议是一个错误的转向是一个有效的观点,并且浏览器因为从文档查看器过渡而变得一团糟。
嗯……不要听起来陈词滥调,但“意外”已被证明是创新的支柱。想象一下飞跃——JS 可以多线程……CSS 可以计算……等等。
需求存在。平台存在。退一步似乎只是盲目地教条主义而且非常浪费。
但这忽略了 30 年的进步和功能。这就像说“车轮最初不是为了用在过山车上而设计的,所以这不是一个好的用途”。开发人员推动了网络的可能性,浏览器制造商推动了网络的可能性,我们现在已经远远超出了 HTML 发明时可能达到的水平。
是的,它就在名字里:超文本。这不仅仅是 ASCII 字符或 PDF。
HyperCard 在很大程度上被认为是超文本——人们用它构建了各种类似应用程序的东西。
电子表格通常被认为是文档,而不是超文本。即使您只考虑数字,其中也包含大量的交互性和反应性。
有些文档是交互式应用程序,而不是静态内容。
表单在 HTML 中已经存在 30 多年了。网络旨在做我们一直以来塑造它去做的事情。
马克·安德森(第一个图形浏览器 Mosaic/Netscape Navigator 的创建者)在 1995 年说:“浏览器将成为操作系统”。Chrome OS 已经实现了这一点(在某种程度上)。我记得这一点,因为它改变了我大学期间的学习方向。
这个人可能需要先检查一下历史。
是的,猫咪,现在放松,没关系。你识别了一些巨魔,识别了你对巨魔的弱点,识别了缺陷,识别了愚蠢,但要表达这篇文章……放松。
正如我在我的回复中提到的那样(https://twitter.com/chuck_martin/status/1355373159772393473?s=20),更大的问题不在于浏览器是否是操作系统(它不是),而在于人们仍然以“文档”的方式思考。
我喜欢我可以使用 http(s…因为现在谁不使用 TLS?) 请求来控制我的系统,以访问我设计的 API 并创建基于 Web 的 GUI,只需几个小时——最多几天。如果浏览器只是文档查看器,我将不得不为我的每个 API 创建自己的资源查看器,或者一个能够定位所有 API 的资源查看器,这将是一个新的浏览器……