PromoteJS – 全球提升 JS 文档可见度的号召

这是一篇由 Chris Williams(JSConf 的策展人)撰写的客座博客文章。我们很荣幸地支持 PromoteJS 活动,并希望大家加入我们,共同改进 JS 文档,并使 MDN 成为所有 Web 开发人员更好的资源。

PromoteJS – 全球提升 JS 文档可见度的号召

JS 并非玩具语言。这一现实才刚刚被大多数开发者所认识,而他们对 JS 的第一印象却糟糕透顶。当您搜索“JavaScript”时,会看到什么?搜索引擎结果页面顶部是维基百科文章,紧随其后的是 Java 下载页面。这可能是许多人仍然错误地认为 JavaScript 和 Java 之间存在关联的原因。其他常用搜索词(如“学习 JS”和“JS 数组”)的结果同样糟糕,甚至更糟。

JS Guide

这是普通大众接触这种语言时对 JS 的第一印象,一旦您看到这一点,就会明白为什么人们会将其视为“玩具语言”,并理解为什么 JS 会存在如此多的糟糕代码和轻视。我们把更好的教程、学习资源和文档隐藏了起来,不仅对我们自己隐藏,更重要的是对那些试图学习这门语言的人隐藏起来。新手难以学习 JS,但最终还是会采用他们从 PHP、Java、Perl、Python 和 Ruby 中获得的知识,将其近似地应用到可运行的代码中,以满足需求。然后,他们会自豪地将这些代码发布出来,并继续传播这种不规范的 JS 编码的弊病。

从这个意义上说,我们辜负了我们的设计人员和开发者。我们几乎让学习规范的 JS 变得不可能,而这门语言既有其美妙之处,也有其不足之处。有些人会说这不是我们的错,浏览器供应商应该为其实现提供 API 文档,或者标准委员会应该发布和推广它。我对这种说法嗤之以鼻。我认为,我们有责任邀请、欢迎,最重要的是正确地教育那些希望学习 JS 的人。我们,这个领域最优秀、最聪明的人,有义务帮助那些试图学习和理解这门语言复杂性的人。我们从中受益最大,因为现在进入这门语言的人将扩展、改造或接管我们刚刚开始的项目。无论库、框架,甚至是语言如何,如果每个人都能更好地掌握规范的 JS 编程,我们都会获益。就是这样。

因此,我挑战您放下您对库或框架的偏好,并撰写关于 JS 语言某个有趣方面的文章。描述您是如何查找对象上的属性的,对象和数组之间有什么区别(以及如何区分两者),任何和所有内容。如果您追求名声和点击量,就撰写关于入门级内容的文章。如果您追求尊重和深入的对话,就撰写关于不同实现之间差异的文章,并传授何时优先选择一种方法而不是另一种方法的智慧。如果写作过于耗时或您的灵感枯竭,我今天宣布启动一项新的活动,PromoteJS。通过有机式游击队 SEO,我们可以改变搜索引擎如何呈现对我们语言的常见查询的答案,并通过这样做提高规范的教育资源的可见度。PromoteJS 的初始目标是让规范的 MDN 文档成为标准 JS 开发人员查询的第一搜索结果。

为了跟踪我们的工作,我们还发布了 Are We First Yet,这是一个 node.js 应用程序,用于跟踪每个目标词语在搜索引擎页面上的排名。跟踪每天进行,以便每个人都能看到我们取得的进展,并且,如果愿意帮助这项事业,可以撰写针对这些关键词的文章。通过这两项努力,我们希望不仅能使 JS 社区,而且能使所有开发人员都能提高规范文档的可见度。在 JSConf EU 上发布这项工作后的几天里,PromoteJS 网站的访问量已达数百万次,该按钮像野火一样在社区中传播开来。我们已经大幅提高了“学习 JS”、“学习 JavaScript”和“JS 文档”等关键术语的排名,但我们需要您的帮助来继续改进所有排名。

我们需要成为我们社区的教育代言人。我们需要推广正确的方法,而不是仅仅忽视那些“不理解”的人或淡化事情。我们需要致力于教育我们的开发人员关于 JS 这门语言,并通过这样做,帮助我们所有的框架、库、聚会和会议。PromoteJS 是朝着这个方向迈出的一步,但绝不是故事的结尾,请务必经常查看该网站,因为我们会继续添加新的方法来帮助提高文档的可见度以及文档本身。

Chris Williams
JSConf 策展人

关于 Chris Williams

Chris Williams(@voodootikigod)是 JSConf US 的策展人和 OurParents 的开发副总裁。令他妻子颇为不满的是,他总是同时进行着许多副业,包括:JSConf Live、A Minute With Brendan 和 Node SerialPort。总而言之,他只是想维持生计,仅此而已。

更多 Chris Williams 的文章…

关于 Jay Patel

我努力通过确保开发和推动 Web 的人都是快乐的开发者来改善 Web。

更多 Jay Patel 的文章…


8 条评论

  1. Tim Niiler

    实际上,javascriptkit.com 上的文档出奇地好。当我在 MDC 上找不到某些内容时,我通常会去那里查看。

    2010 年 10 月 13 日 03:51

  2. skierpage

    我会一直说,MDN 需要交互式文档,其中包含您可以点击以编辑示例代码,然后立即运行并查看更改的代码片段。这将反映 Web 的读写、参与性和趣味性。该网站上的大多数文章都写得**非常棒**,尤其是核心 JS 部分,但我更愿意去一个较小的网站,在那里我可以输入内容并玩弄示例。

    我尝试使用 Firefox 4 工具 > Web 控制台打开 https://mdn.org.cn/en/JavaScript/Guide/ 作为一种简陋的交互式学习环境。var a = 7 返回“未定义”,您粘贴的任何尾随 // 注释都会导致奇怪的错误,而 print(“The value of a is ” + a); 会弹出打印对话框!回到 w3schools.com 的糟糕的非 Bespin 试用编辑器,并试图记住一年前我玩过的某个特定于域的 JS/DHTML/CSS/canvas/SVG 沙箱教程网站。

    2010 年 10 月 13 日 04:08

  3. David Boswell

    http://www.mozilla.org 上有很多旧的 JS 文档仍然会获得流量并在搜索排名中显示。例如

    http://www.mozilla.org/js/tests/library.html

    这在 Google 搜索“JS 测试”时显示在第一位,每天大约有 20 次访问,上次更新时间是 2006 年。

    迁移这些旧文档将增加当前文档的流量,并将这些过时的文档从搜索排名中移除。如果对迁移此内容感兴趣,让我们协调以下错误

    https://bugzilla.mozilla.org/show_bug.cgi?id=459308

    David

    2010 年 10 月 13 日 10:47

  4. Snap

    非常感谢你们两位 :-)!
    这是一个很棒的想法。我经常需要编写 JS,而且我经常会感到困惑,如果不是因为 Gecko,就是因为其他浏览器的实现。因此,我尝试查看“官方文档”。我从 ECMAScript 获得了一些 PDF 文件。这不是人们期望的那样。

    我认为我们需要更好的全局文档,但也需要
    – 一个解释浏览器之间实现差异的页面,就像 quirksmode 所做的那样
    – 一个总结常见陷阱的页面
    – 在某个地方分享优秀的代码片段。不是一个 SourceForge 的克隆,而是非常常见的东西,可以弥补语言的不足之处。分析 JavaScript 框架的“工具包”代码以进行 DOM 操作、CSS 选择器和错误处理将会很有趣。

    作为基础,Brendan Eich(JS 作者)在 . 维基百科也可能有所帮助: .

    我很乐意在维基百科上分享我的发现,但我希望有经验的人可以检查我所说的话。我访问了 PromoteJS 网站,有点令人失望 - 只是一个横幅。我以为会有一些供贡献者沟通的东西:一个论坛、IRC 频道。

    ircs://moznet/js 上见

    2010 年 10 月 20 日 14:51

  5. Chris Wiliams

    @snap 请再次查看该网站,我们更新了一些您可能会觉得有用的信息。感谢您的建议。

    2010 年 10 月 22 日 08:00

  6. fossbug

    我发现这是 JS 最好的教程之一。它甚至内置了一个控制台供您尝试。比用死树好多了

    https://eloquent.javascript.ac.cn

    特别是在线版本

    https://eloquent.javascript.ac.cn/contents.html

    它足够温和,我推荐给任何初学者。不过,对于经验丰富的程序员来说,可能有点冗长。

    2010 年 10 月 28 日 04:39

  7. skierpage

    @fossbug,Eloquent JS 的内置编辑器很简单,似乎只需要对 HTML 页面进行最少的更改即可使 class=”code” 可编辑,并可以通过点击运行。MDN 开发人员应该查看一下!它感谢 http://codemirror.net/,“/* 使浏览器内代码编辑变得可以忍受 */”,其中列出了许多其他使用它的网站。

    2010 年 10 月 28 日 16:47

  8. ren1999

    那些推广和教授 JavaScript 的人做得非常糟糕。他们做了很多假设,认为提出问题的人比他们真正了解的关于实现 JavaScript 的知识更多。

    我们需要的是完整且完全简化的 JavaScript 示例,您可以从 html 到 html 标签剪切粘贴这些示例,并自己尝试。Firefox 应该开始创建一个这些示例的库。

    我的网站使用了许多几乎没有人使用的新 JavaScript 技术,而他们应该使用。
    http://kira3696.tripod.com/

    现在,这里有一位以许多人不知道的方式使用 JavaScript 的人。他使用警报框来实现,但我认为 Firefox JavaScript 小组应该采用此程序,并创建包含最佳实践的完整 html 到 html 标签示例的长列表。

    http://www.asmor.com/scripts/CombatTracker/combattracker.html

    我仍然不知道捕获输入值、将其存储在数组中并在不同表单中显示该值(使用相同的 ID)的最佳方法是什么。我问了几个月,但从未得到明确的答案。

    推广 Firefox JavaScript 编程乐趣对我们来说很容易。我们只需要有人和网站对用户友好,并知道如何使用完整的 html 到 html 标签示例进行社交教学。

    如果有人知道一些使此 CombatTracker JavaScript 程序在没有警报框的情况下变得更好的最佳实践,请给我发送电子邮件。

    2011 年 2 月 4 日 09:13

本文评论已关闭。