热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2008年Dojo怎么样了?-WhathappenedtoDojoin2008?

ManyofyouhaveseenthisgraphofGoogleTrendsofpopularAJAXframeworks(Dojo,jQuery,YUI).许多

Many of you have seen this graph of Google Trends of popular AJAX frameworks (Dojo, jQuery, YUI).

许多人都看过流行的AJAX框架(Dojo、jQuery、YUI)的谷歌趋势图。

The graph seems to make it clear that interest in Dojo collapsed in the second quarter of 2008, falling by 80%; jQuery picked up the slack and ultimately grew to more than triple the size of Dojo.

该图表似乎表明,在2008年第二季度,对Dojo的兴趣下降了80%;jQuery弥补了这个不足,最终增长到Dojo的三倍多。

Why? What happened in Q2 2008 that demolished interest in Dojo?

为什么?2008年第二季度发生了什么事情,打消了人们对Dojo的兴趣?

(Note that I'm not really interested in a comparison of Dojo vs. jQuery; even if you can explain why one is better than the other, it's hard to see why that suddenly became clear to the world in April 2008.)

(注意,我对Dojo和jQuery的比较不是很感兴趣;即使你能解释为什么一个人比另一个人更好,也很难理解为什么在2008年4月这个问题突然变得清晰起来。

5 个解决方案

#1


145  

Disclaimer: I am a Dojo committer, but this is my personal view as a Javascript insider.

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

First of all: the graph is absolutely and completely incorrect. Look at the chart link closely, and read "events". This is the list of events "related" to Dojo:

首先,这个图是完全不正确的。仔细看图表链接,读“事件”。这是与Dojo相关的事件列表:

  1. "Declaring Dojo for Ajax" — ok, it may be relevant.

    “为Ajax声明Dojo”——好的,它可能是相关的。

  2. "IT Dojo: Stop programs from running when Windows Vista starts [video]" — irrelevant.

    “IT Dojo:当Windows Vista启动时停止程序运行[视频]”-不相关。

  3. "IT Dojo: Add Copy To and Move To commands to Windows XP Explorer with this registry hack" — not even close.

    “IT Dojo:添加拷贝到Windows XP Explorer中,并将命令移动到Windows XP Explorer中”——甚至不关闭。

  4. "Dragon Dojo Martial Arts® Named 'Official Small Business of NASCAR®, Courtesy of Office Depot®'" — nope, missed again.

    “龙Dojo武术®名为“纳斯卡的官方小企业®,由办公用品®’”——不,又错过了。

  5. "Hacker Dojo in Mountain View sparks ideas and tinkering" — nowhere near.

    “黑客道场在山景城的想法和修补”-远远没有接近。

Why? Dojo is a generic term used mostly outside of software development area, Yui (as YUI — the other Javascript toolkit in the chart) is an extremely popular Japanese singing celebrity, and only jQuery is a unique term.

为什么?Dojo是一个通用术语,主要在软件开发领域之外使用,Yui(作为Yui——图表中的另一个Javascript工具包)是一个非常流行的日本歌手名人,只有jQuery是一个独特的术语。

So what does the graph show? Unfortunately nothing relevant.

那么这个图表显示了什么呢?不幸的是没有相关。

Hmm, déjà vu. Yes, I already said it once. So allow me to quote myself (adding minor annotations, and correcting the link):

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

Regarding Google Trends. Out of 5 libraries in question [jquery, mootols, prototype, yui, and dojo] only two (jquery and mootools) have a fighting chance to be remotely relevant in the survey mostly due to their unique names. The rest use either a generic name (prototype and dojo) or alias to something else (yui => Yui, extremely popular Japanese singer/songwriter/actress). So if you want to explain sudden spikes try to Google for news stories of that time to see if ups and downs can be explained without superficial means.

关于谷歌趋势。在受到质疑的5个库中(jquery、mootols、prototype、yui和dojo)中,只有2个库(jquery和mootools)有机会远程参与调查,这主要是因为它们的名称各不相同。其余的使用一个通用名称(原型和dojo)或其他的别名(yui => yui,非常流行的日本歌手/歌曲创作者/演员)。所以,如果你想解释一下突然的尖峰信号,试着去谷歌看一下那个时候的新闻故事,看看是否可以不用表面的方法来解释起起落落。

Here is a link to another "scientific" study that proves without any doubt that jQuery is more popular than Marilyn Monroe, Elvis Presley, and even overtook Mickey Mouse recently: Google Trends: jquery, mootools, marilyn monroe, elvis presley, mickey mouse.

下面是另一项“科学”研究的链接,毫无疑问,jQuery比玛丽莲·梦露、猫王埃维斯·普雷斯利更受欢迎,最近甚至超越了米老鼠:jQuery、mootools、玛丽莲·梦露、猫王埃维斯·普雷斯利、米老鼠。

Now back to your question. The chart is wrong — nothing relevant happened in 2008. Everything was done in the second half of 2007:

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

  • 8/20/2007 — Dojo 0.9 is announced. This was the major break with the previous version: Dojo 0.4. Immediately your existing knowledge of Dojo was decimated by 70% or more.
  • 8/20/2007 -宣布Dojo 0.9。这是与先前版本Dojo 0.4的重大突破。您对Dojo的现有知识立即减少了70%甚至更多。
  • 11/5/2007 — Dojo 1.0 is announced. This release made Dojo 0.4 psychologically ancient.
  • 11/5/2007 -宣布Dojo 1.0。这个版本使Dojo 0.4在心理上显得很古老。

While technically the break was justified, psychologically it was a major blow to users (there are major Dojo 0.4 applications in production even now in 2010).

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

Some people started learning 0.9/1.0 API, some decided to migrate to something else — the cost of defecting was almost the same as the cost of learning new Dojo. The market at that time had all old players and a relative newcomer: jQuery. Majority of former Dojo users chose Dojo for a reason after sampling others. So most defectors went from Dojo to jQuery rather than to other toolkits, which was not available when they settled on Dojo in the beginning.

一些人开始学习0.9/1.0 API,一些人决定迁移到其他的东西——投稿的成本几乎与学习新Dojo的成本相同。当时的市场上有所有的老玩家和一个相对较新的玩家:jQuery。大多数以前的Dojo用户在对其他用户进行采样后选择Dojo是有原因的。因此,大多数叛逃者从Dojo转向jQuery,而不是其他工具包,这在他们刚开始选择Dojo时是不可用的。

But it is not the only reason. Somehow people like to compare Dojo to jQuery. Let's compare their communities and social aspects.

但这并不是唯一的原因。人们喜欢将Dojo与jQuery进行比较。让我们来比较一下他们的社区和社会方面。

jQuery was/is much better at marketing — just compare how many blog posts were produced by one John Resig vs. blog posts of all Dojo developers taken together, compare how many times John gave a talk at conferences vs. all Dojo talks taken together. The truth is Dojo is made by geeks who may be good at tech, but not good at marketing.

jQuery在市场营销方面做得更好——只需比较一下John Resig与所有Dojo开发人员的blog文章一起生成的博客文章的数量,比较一下John在会议上发言的次数与所有Dojo会话一起生成的次数。事实上,Dojo是由极客制作的,他们可能擅长技术,但不擅长营销。

Social features are important too because they help grow the community. Let's take a look at contributing some random code to both toolkits. Dojo has a place for odd projects: DojoX. jQuery has a somewhat equivalent jQuery Plugins. Anybody can contribute to both, but for DojoX the barrier of entry is much higher because a submission will be reviewed, and can be rejected if it doesn't meet strict criteria. In general it takes a lot of time, while in jQuery land anybody can submit any code as a plugin at any time and with any license. It makes it easier to "belong" to the jQuery community.

社会特征也很重要,因为它们有助于社区的发展。让我们看一下为这两个工具包提供一些随机代码。Dojo有一个用于零星项目的位置:DojoX。jQuery有一个类似的jQuery插件。任何人都可以对两者做出贡献,但对于DojoX来说,进入门槛要高得多,因为提交的内容会被审查,如果不符合严格的标准,也可以被拒绝。一般来说,这需要花费大量的时间,而在jQuery领域,任何人都可以在任何时候以插件的形式提交任何代码,并获得任何许可。它使“属于”jQuery社区更容易。

In my personal opinion the DojoX process produces better technical results: almost any random DojoX project is of better quality than many jQuery plugins. Obviously there are very well supported high quality jQuery plugins, but it is not the point. The point is that the jQuery Plugins process is better at building a community than the DojoX process.

在我个人看来,DojoX过程产生了更好的技术结果:几乎任何随机的DojoX项目都比许多jQuery插件具有更好的质量。显然,有非常受支持的高质量jQuery插件,但这不是重点。关键是jQuery插件进程比DojoX进程更擅长构建社区。

Targeted markets are different too. jQuery targets relatively simple things: add some Javascript magic to regular web sites, do some "progressive enhancement", "use this snippet" kind of things, and so on. Dojo with its modular system, the build/packaging tools, and OO/AOP provisions appeals to the web app crowd. Guess what market has more people. One of implications is simple: Dojo is used extensively in IT, which doesn't bring any public recognition ⇒ even the "secondary buzz" from developers of such systems is smaller than it should be for Dojo.

目标市场也不同。jQuery针对相对简单的事情:向常规web站点添加一些Javascript魔法,做一些“渐进式增强”,“使用这个代码片段”之类的事情,等等。Dojo及其模块化系统、构建/打包工具和OO/AOP条款吸引了web应用程序人群。猜猜哪个市场有更多的人。影响之一是简单:Dojo是广泛使用,不带任何公共识别⇒甚至从开发者的“二次buzz”这样的系统小于应该为Dojo。

Another bitter truth is that the Dojo Community dropped the ball back in 2007: documentation was in disarray, blog posts were rare and mostly about obscure technical stuff for advanced programmers, rather than tutorials "see how easy it is to do simple things". The forum was practically shut down by spammers. The 0.4/0.9 break hurt Dojo's search engine visibility — people looking for new stuff found mostly 0.4 stuff, which was of no use for them.

另一个痛苦的事实是Dojo社区在2007年又犯了错误:文档混乱,博客文章很少,主要是关于高级程序员的晦涩的技术内容,而不是教程“看看做简单的事情有多容易”。这个论坛几乎被垃圾邮件发送者关闭了。0.4/0.9的中断损害了Dojo的搜索引擎的可见性——寻找新内容的人发现的大多是0.4的内容,这对他们来说毫无用处。

So there you have it: Q2 2008 is the wrong place in time to study. Look at H2 2007. And see why jQuery has more mass appeal than Dojo or any other "competitor".

所以你就知道了:2008年第二季度不是学习的好时机。2007年看H2。看看为什么jQuery比Dojo或其他“竞争者”更具有大众吸引力。

But let's go to "now".

现在让我们进入“现在”。

In my unscientific experience Dojo has a sharp inflow of new users — I see much more people using Dojo, and I know of much more projects started with Dojo. It started somewhere in the middle of 2009. The reasons for that as I see it:

在我的非科学经验中,Dojo有大量的新用户——我看到更多的人使用Dojo,我知道还有更多的项目是从Dojo开始的。它开始于2009年年中。我认为原因是

  1. Many problems mentioned above are fixed or being fixed.

    上面提到的许多问题已经被解决或正在被解决。

  2. The #dojo channel on freenode is extremely vibrant, and other web-based resources are more relevant than ever.

    freenode上的#dojo频道非常活跃,其他基于web的资源比以往任何时候都更相关。

  3. Being a mostly American phenomenon Dojo finally started to go international.

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

Special care is taken now to ensure that users of older Dojo versions are not left in the cold. For example, reacting to the last security advisory, all published versions of Dojo were updated: from 0.4 to the current 1.4. I am sure that the 0.4/0.9 split is not going to be repeated again, when Dojo goes to 2.0 in the future: evolution rather than revolution is more socially acceptable.

现在特别注意确保旧Dojo版本的用户不会被遗忘。例如,对于最后一个安全咨询,所有发布的Dojo版本都更新了:从0.4到当前的1.4。我确信,当Dojo在未来走向2.0时,0.4/0.9的拆分不会再次重复:进化而不是革命更能被社会接受。

I believe that Dojo technocrats finally understood social implications of their technical decisions, changes were made, the community is alive and well.

我相信,Dojo技术专家最终理解了他们的技术决策所带来的社会影响,做出了改变,社区依然活跃。

Is Dojo going to "beat" jQuery at numbers any time soon? While technically Dojo looks like a clean superset of jQuery and then some, and both can be used in the same "progressive enhancements" market, Dojo is unlikely to upset jQuery. See above about targeting different markets, and remember that fighting other toolkits is not even a goal for geeks, who work on Dojo, — they are focused on making Dojo even more useful in a broad spectrum of scenarios, and on building their own community. Ultimately it is up to users to make a decision on what they want based on their needs.

Dojo会很快在数字上“打败”jQuery吗?虽然Dojo在技术上看起来像一个干净的jQuery超集,但两者都可以在相同的“渐进式增强”市场中使用,但Dojo不太可能让jQuery失望。请查看上面关于针对不同市场的介绍,请记住,与其他工具包作斗争甚至不是从事Dojo工作的极客的目标——他们专注于使Dojo在更广泛的场景中更有用,并构建自己的社区。最终取决于用户根据他们的需要来决定他们想要什么。

Update: I hope nobody will make a conclusion that "Dojo dropped the ball and jQuery just happened to be here". Nothing like that. jQuery had a lot going for it especially on the conceptual level. We love jQuery and wish it the best. It is the benchmark to compare our efforts in building other toolkits.

更新:我希望没有人会得出这样的结论:“Dojo掉了球,jQuery刚好在这里”。什么也没有发生。jQuery有很多优势,尤其是在概念层面。我们喜欢jQuery,希望它最好。它是比较我们构建其他工具包的努力的基准。

#2


24  

Gamers got tired of playing "Super Smash Bros Dojo:"

玩家厌倦了玩“超级粉碎兄弟Dojo:”

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

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

enter image description here

#3


12  

Maybe job trend tells the real story: indeed job trend

也许工作趋势揭示了真相:

But Dojo jobs seem to be better paid. enter image description here

但是Dojo工作似乎报酬更高。

#4


4  

I'm also an occasional dojo committer, and even with a clarifying "Javascript" in the trends search, you get jquery leading:

我也是一个偶尔的dojo提交者,即使在趋势搜索中有一个明确的“Javascript”,您也会得到jquery的引导:

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

http://www.google.com/trends?q=jquery,dojo Javascript +,yui + Javascript&ctab = 0 geo =所有日期=各种= 0

That said, I believe they serve different audiences. Dojo (and now Google's Closure) are "full-strength" toolkits with tremendous depth and tooling, designed to be used by engineers for gmail-scale applications.

也就是说,我相信他们为不同的观众服务。Dojo(现在是谷歌的闭包)是“全功能”的工具包,具有极大的深度和工具,设计用于gmailscale应用程序的工程师。

JQuery is designed to be used by designers to spice up a page.

JQuery是设计人员用来为页面增添色彩的。

You can use dojo's selectors api to do JQuery-style coding, just as you can use JQuery facilities to do more "application-like" development.

您可以使用dojo的选择器api进行JQuery样式的编码,就像您可以使用JQuery工具进行更多“类似于应用程序”的开发一样。

My guess is that there are far more designers and web pages than there are engineers and web applications.

我的猜测是,设计师和网页的数量远远超过工程师和web应用程序的数量。

#5


3  

The Mikey Mouse chart linked above has a different range. Here it is without the YTD parameter, which paints a different view: jQuery still has not reached Elvis' pinnacle back in 2007. Additionally, comparing with a real generic term shows generic terms do not "lose". Cat dominates. (http://www.google.com/trends?q=jquery%2C+cat%2C+dojo%2C+elvis+presley%2C+mickey+mouse)

上面链接的Mikey鼠标图表有一个不同的范围。这里没有YTD参数,它描绘了一个不同的视角:jQuery在2007年还没有达到Elvis的巅峰。此外,与真正的通用术语相比,通用术语不会“丢失”。猫占主导地位。(http://www.google.com/trends?q=jquery%2C dojo % 2 +猫% 2 c + c +猫王普雷斯利% 2 c +米奇+鼠标)

That being said, I do love Dojo and jQuery. Thanks and gratitude are due to both project teams for making the rest of our lives so much easier. Eugene, thank you for taking this opportunity to provide useful insight into the Dojo project. Gavin, I agree with your perspective on the target audiences for each of the tools. There need not be just one.

也就是说,我确实喜欢Dojo和jQuery。感谢和感谢这两个项目团队让我们的生活变得更轻松。尤金,感谢您利用这个机会对Dojo项目提供有用的见解。Gavin,我同意你对每个工具的目标受众的看法。不需要只有一个。


推荐阅读
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 本文深入探讨了Java多线程环境下的同步机制及其应用,重点介绍了`synchronized`关键字的使用方法和原理。`synchronized`关键字主要用于确保多个线程在访问共享资源时的互斥性和原子性。通过具体示例,如在一个类中使用`synchronized`修饰方法,展示了如何实现线程安全的代码块。此外,文章还讨论了`ReentrantLock`等其他同步工具的优缺点,并提供了实际应用场景中的最佳实践。 ... [详细]
  • 如何高效启动大数据应用之旅?
    在前一篇文章中,我探讨了大数据的定义及其与数据挖掘的区别。本文将重点介绍如何高效启动大数据应用项目,涵盖关键步骤和最佳实践,帮助读者快速踏上大数据之旅。 ... [详细]
  • 本文探讨了基于点集估算图像区域的Alpha形状算法在Python中的应用。通过改进传统的Delaunay三角剖分方法,该算法能够生成更加灵活和精确的形状轮廓,避免了单纯使用Delaunay三角剖分时可能出现的过大三角形问题。这种“模糊Delaunay三角剖分”技术不仅提高了形状的准确性,还增强了对复杂图像区域的适应能力。 ... [详细]
  • 在第二课中,我们将深入探讨Scala的面向对象编程核心概念及其在Spark源码中的应用。首先,通过详细的实战案例,全面解析Scala中的类和对象。作为一门纯面向对象的语言,Scala的类设计和对象使用是理解其面向对象特性的关键。此外,我们还将介绍如何通过阅读Spark源码来进一步巩固对这些概念的理解。这不仅有助于提升编程技能,还能为后续的高级应用开发打下坚实的基础。 ... [详细]
  • 本文详细介绍了 com.apollographql.apollo.api.internal.Optional 类中的 orNull() 方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 一个建表一个执行crud操作建表代码importandroid.content.Context;importandroid.database.sqlite.SQLiteDat ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 本文详细介绍了在CodeUp平台中实现大数进制转换的技术方法。具体而言,该问题要求将一个最多包含30位数字的十进制非负整数转换为二进制表示。输入数据包含多行,每行包含一个不超过30位的十进制非负整数。通过高效的算法设计,确保了大数转换的准确性和性能。 ... [详细]
  • AIX编程挑战赛:AIX正方形问题的算法解析与Java代码实现
    在昨晚的阅读中,我注意到了CSDN博主西部阿呆-小草屋发表的一篇文章《AIX程序设计大赛——AIX正方形问题》。该文详细阐述了AIX正方形问题的背景,并提供了一种基于Java语言的解决方案。本文将深入解析这一算法的核心思想,并展示具体的Java代码实现,旨在为参赛者和编程爱好者提供有价值的参考。 ... [详细]
  • 蓝桥杯物联网基础教程:通过GPIO输入控制LED5的点亮与熄灭
    本教程详细介绍了如何利用STM32的GPIO接口通过输入信号控制LED5的点亮与熄灭。内容涵盖GPIO的基本配置、按键检测及LED驱动方法,适合具有STM32基础的读者学习和实践。 ... [详细]
  • 投融资周报 | Circle 达成 4 亿美元融资协议,唯一艺术平台 A 轮融资超千万美元 ... [详细]
author-avatar
丶玛骝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有