2008年Dojo发生了什么事?

你们中的许多人都看过stream行的AJAX框架(Dojo,jQuery,YUI)的Google趋势图 。

图表似乎清楚地表明,对Dojo的兴趣在2008年第二季度下滑,下降了80%; jQuery捡起了这个松散的东西,最终增长到了Dojo的三倍以上。

为什么? 2008年第二季度发生了什么,拆除了对Dojo的兴趣?

(请注意,我对Dojo和jQuery的比较并不感兴趣,即使你能解释为什么比其他人更好,也很难看出为什么2008年4月突然间变得清晰起来)

免责声明:我是一个Dojo提交者,但这是我作为JavaScript内部人员的个人观点。

首先:图表是完全错误的。 仔细看图表链接,阅读“事件”。 这是与Dojo“相关”的事件列表:

  1. “为Ajax声明Dojo” – 好的,这可能是相关的

  2. “IT Dojo:在Windows Vista启动时停止运行程序[video]” – 无关紧要

  3. “IT Dojo:添加复制到和移动到命令到Windows XP资源pipe理器与此registry黑客” – 甚至没有closures

  4. “Dragon Dojo武术®被命名为NASCAR®的官方小企业,由OfficeDepot®提供” – 不准,再次错过

  5. “黑客在山景道场火花思想和修补” – 远不近

为什么? Dojo是一个通常在软件开发领域以外使用的术语,Yui(YUI–图表中的另一个JavaScript工具包)是一个非常受欢迎的日本歌唱名人,只有jQuery是一个独特的术语。

那么图表显示了什么? 可惜没有什么相关

嗯,似曾相识 是的, 我已经说过一次了 。 因此,请允许我引用自己(添加次要注释并更正链接):

关于Google趋势。 在jquery,mootols,prototype,yui和dojo这5个图书馆中,只有两个(jquery和mootools)在调查中具有远程相关的斗争机会,这主要是因为它们的独特名称。 其余的使用通用名(原型和道场)或别名(yui => Yui,非常受欢迎的日本歌手/composer php/女演员)。 所以如果你想解释一下突如其来的高峰,试试谷歌当时的新闻报道,看看涨跌是否可以用浅薄的手段来解释。

这是另一个“科学”研究的链接,毫无疑问,毫无疑问, jQuery比Marilyn Monroe,Elvis Presley更受欢迎,甚至最近赶上了Mickey Mouse : Google Trends:jquery,mootools,marilyn monroe,elvis presley,mickey mouse 。

现在回到你的问题。 图表是错误的 – 2008年没有发生任何相关的事情。一切都是在2007年下半年完成的:

  • 2007年8月20日 – Dojo 0.9宣布 。 这是以前版本的主要突破:Dojo 0.4。 马上你对Dojo的现有知识就会被抽掉70%甚至更多。
  • 2007年5月11日 – Dojo 1.0宣布 。 这个版本使得Dojo 0.4在心理上古老。

虽然从技术上来说这个突破是合理的,但从心理上来说,这对用户来说是一个重大的打击(即使在2010年,也有主要的Dojo 0.4生产应用程序)。

有些人开始学习0.9 / 1.0 API,有些人决定迁移到别的东西 – 背叛的代价和学习新的Dojo的成本几乎一样。 当时的市场有所有的老玩家和相对的新手:jQuery。 以前的Dojo用户大多数都是在抽样了其他人之后select了Dojo。 所以大多数背叛者都是从Dojo转到了jQuery,而不是其他的工具箱,而这些工具箱在开始时就已经没有了。

但这不是唯一的原因。 不知何故,人们喜欢将Dojo与jQuery进行比较。 我们来比较一下他们的社区和社交方面。

jQuery在市场营销上的performance要好得多 – 比较一下John Resig发表的博客文章与所有Dojo开发者的博客文章的比较情况,比较John在会议上发言的次数与所有Dojo演讲的总结。 事实上,道场是由擅长技术,但不善于营销的极客制造的。

社交function也很重要,因为它们可以帮助社区成长。 让我们看看为这两个工具包贡献一些随机代码。 道场有一个奇怪的项目的地方:DojoX。 jQuery有一个相当的jQuery插件。 任何人都可以为这两者做出贡献,但是对于DojoX来说,进入门槛要高得多,因为提交将被审查,如果不符合严格的标准,可以被拒绝。 一般来说,这需要很长的时间,而在jQuery的土地上,任何人都可以在任何时间和任何许可证上提交任何代码作为插件。 这使得“属于”jQuery社区更容易。

我个人认为DojoX过程产生了更好的技术效果:几乎所有随机的DojoX项目的质量都比许多jQuery插件要好。 显然有很好的支持高品质的jQuery插件,但这不是重点。 关键是,jQuery插件进程比DojoX进程更适合构build社区。

目标市场也不同。 jQuery的目标相对简单:在常规网站中添加一些JavaScript魔法,做一些“渐进式增强”,“使用这个片段”等等。 Dojo的模块化系统,构build/打包工具和OO / AOP规定吸引了networking应用人群。 猜猜市场上有更多的人。 其中一个含义很简单:Dojo被广泛用于IT,这并没有带来公众的认可⇒甚至来自这种系统的开发者的“次要嗡嗡声”也比Dojo应该小。

另一个令人痛心的事实是,Dojo社区在2007年放弃了这个决定:文档混乱,博客文章很less,大多数是关于高级程序员的难以理解的技术内容,而不是教程“看简单的事情是多么容易”。 论坛几乎被垃圾邮件发送者closures。 0.4 / 0.9的突破伤害了Dojo的search引擎可见度 – 寻找新东西的人大多发现了0.4个东西,这对他们来说毫无用处。

所以你有这个问题:2008年第二季是错误的时间去学习。 看看2007年下半年。看看为什么jQuery比Dojo或任何其他“竞争对手”有更大的吸引力。

但是,让我们去“现在”。

在我的不科学的经验中,Dojo的新用户大量涌入 – 我看到更多的人使用Dojo,而且我知道更多以Dojo开始的项目。 它开始于2009年中的某个地方。我看到的原因是:

  1. 上面提到的许多问题是固定的或者是固定的。

  2. freenode上的#dojo频道非常有活力,其他基于networking的资源比以往任何时候都更有意义。

  3. 作为一个主要的美国现象,道场终于开始走向国际。

现在要特别注意确保老Dojo版本的用户不会受到冷落。 例如,对最后一个安全build议作出反应,所有已发布的Dojo版本都被更新:从0.4到现在的1.4。 我敢肯定,当Dojo未来达到2.0时,0.4 / 0.9的分裂将不再重复:革命而不是革命在社会上是可以接受的。

我相信道场技术官僚最终理解了他们的技术决定的社会影响,做出了改变,社区还活着。

Dojo是否会在很短的时间内以数字“击败”jQuery? 从技术上讲,Dojo看起来像jQuery的一个干净的超集,然后是一些,两者都可以在相同的“渐进式增强”市场中使用,但Dojo不太可能会让jQuery难过。 请参阅上文有关定位不同市场的内容,并记住与其他工具包的对抗甚至不是针对Dojo工作的极客们的目标 – 他们专注于使Dojo在广泛的场景中更加有用,并构build自己的社区。 最终,用户可以根据自己的需求做出自己想要的决定。

更新:希望没有人会得出这样的结论:“Dojo掉球了,jQuery恰好在这里”。 没有那样的事。 jQuery特别在概念层面上做了很多工作。 我们爱jQuery,并希望它是最好的。 这是比较我们build立其他工具包的努力的基准。

游戏玩家厌倦了玩“超级粉碎兄弟道场”

http://www.google.com/trends/correlate/search?e=dojo&t=weekly

在这里输入图像说明

也许工作趋势讲述了真实的故事: 确实是工作趋势

但是Dojo的工作似乎收入更好。 在这里输入图像说明

我也是一个偶然的道场提交者,甚至在趋势search中澄清“javascript”,你会得到jQuery的领先:

http://www.google.com/trends?q=jquery,dojo+javascript,yui+javascript&ctab=0&geo=all&date=all&sort=0

也就是说,我相信他们服务于不同的观众。 Dojo(现在是Google的Closure)是具有巨大深度和工具的“全function”工具包,旨在供工程师用于gmail规模的应用程序使用。

JQuery的devise是为了让devise者使用一个页面。

可以使用dojo的select器API来执行JQuery风格的编码,就像您可以使用JQuery工具来执行更多“类似于应用程序”的开发一样。

我的猜测是,有更多的devise师和网页比工程师和Web应用程序。

上面链接的Mikey鼠标图有不同的范围。 这里没有YTD参数 ,这个参数描绘了一个不同的视图:jQuery在2007年还没有达到埃尔维斯的顶峰。另外,与真正的通用术语相比,通用术语不会“丢失”。 猫占主导地位。 ( http://www.google.com/trends?q=jquery%2C+cat%2C+dojo%2C+elvis+presley%2C+mickey+mouse

这就是说,我喜欢Dojo和jQuery。 感谢和感谢是由于两个项目组让我们的余生更加容易。 尤金,感谢您借此机会对Dojo项目提供有用的见解。 加文,我同意你对每个工具的目标受众的看法。 不一定只有一个。