[dojo-contributors] what is the raison detre for dojo 2.0.

Ken Benjamin kenbenjamin at kenbenjamin.net
Thu Oct 11 05:18:21 EDT 2012


I agree, we are not "at war" with any other toolkit, nor should we be but
that does not mean that we are not competing.



One of the comments mentioned that we might "not have the resources" to
rework parts of the toolkit. Those resources come from having a broad user
base and the shortage of those resources are the harbinger of future
decline into irrelevance or narrow adoption by only those organizations
with the resources to actively support the toolkit. Not knowing the full
Dojo contributor landscape, I'm speculating here that we are already
dependent upon a few very committed large supporters, predominantly IBM.



In some sense this a huge plus and adds needed continuity and stability. It
also comes at a price. Large organizations tend to be interested in large
customers. This is particularly in the case of IBM whose focus is on large
organizations exclusively. Here's why this matters:



The web is a dynamic place with incredibly low barriers to entry for
content and application creation. Anyone can pick up a book on HTML and
make something out of it. Some of these people will advance in their
skills, creating more complex apps, working for small companies to
implement new websites and apps, and just a few of those may develop
professional programming skills and move into the large corporations.



Dojo, as it stands today, attracts that last, limited set of people: those
who know what is involved in creating a complex app, want a comprehensive
solution, understand at least a little about software lifecycle, are
concerned about on-going support, and take licensing into consideration.



If I'm a newbie to the whole Web 2.0 app development world, what toolkit
would I choose? The answer today is clearly jQuery. Why? It looks nice
(yes, this really does make a huge difference), is easy to get started
with, has lots users, and lots of documentation.



Where will I turn years later when I have more skills and have a new
project? Back to my old friend, jQuery, tried and true.



Dojo is, in fact, in competition with jQuery and all the rest. We cannot
overlook that fact, though we can treat it as coop-etition to some degree.
Open-source does not comport well with cut-throat.



I would like to see Dojo move to position itself as more accessible to
beginners while providing a solid pathway to their growth into more
sophisticated apps and methods, all of which Dojo currently facilitates.



Right now, our job is hard. We have to convert people from the simplicity
and prettiness of jQuery to the relative complexity and richness of Dojo.
I'd rather we could be the natural first step up from HTML. Declarative
markup with auto-require is that easy step. Add some animation, better
theming tools, and simple tutorials and we're there.



The tools are there. We can do everything jQuery can do, and much more, but
we don't make it simple. We assume people understand object-oriented
Javascript (mostly they don't). We make Dojo for the professional
programmer, not the budding script kiddie that Joe's Diner hired to build
their website. I don't see why we can't capture both sets.



Appeal to the beginners and enable the experts. Provide an on-ramp to Web
2.0 (and Web 3.0, whatever that means) that leads directly to the
super-highway that is Dojo. Add some signs so people don't just happen to
take the scenic jQuery Parkway because it was the only on-ramp they saw and
the scenery was nice, even if the destination wasn't where they might have
ultimately wanted to go.



One last point here. We must remember what we are building. Tools. Tools
have no purpose other than to help create something useful. It is what we
can build with the toolkit that matters and we can't forget that in our
lust to forge a better hammer.



Forget the technology. Focus on answering this question:



How does Dojo make my life better?

In other words, what is the benefit to me. Tools are just the how. I want
to know what you are going to give me. Why Dojo?



To my mind Dojo offers:



The ability to create both simple and complex applications

A single source for all (or nearly all) the parts I might need

A single learning curve (entirely too steep at the moment but getting
better)

Simple methods to start (declarative) and all the power I might need
(programmatic / dojo libs)

A robust and helpful support community (but we need books)

A well-integrated API with tools that all work together

The ability to easily make small, or large changes to any of the tools to
better meet my needs

Compatibility with other (AMD) tools if I they better suit my needs

Stability that comes from backing by big names, like IBM

A builder that shrinks my app from BIG and SLOW loading to tiny and fast



What is currently missing:



Easy (I mean really easy) getting started with Dojo guides, both
programmatic using dojo/query, animation, stuff you might want on a
webpage, not in an app.

Better examples / easier to read docs for Build

ThemeRoller, or equivalent and some designer created styles to go with it.

Dojo book(s) - why isn't someone writing (re-writing) one for the AMD 1.x
line? I suspect it'll be around for years to come (no, I'm not
volunteering).



First impressions matter and Dojo is intimidating for the beginner, not
particularly beautiful (Mobile is an exception and very nice, Claro is
highly functional and attractive in a 2003 kind of way). Show me what I can
build with Dojo. Have a showcase (in addition to what we have already) with
at least screenshots of what I can make using Dojo. Inspire me with ideas.



Oh, and what about a "Developed with Dojo" icon / link / tagline people can
use, if they want.



Dojo should continue to be what Dojo has always been. It's raison d'être
remains to help you build high quality, useful web applications in the most
efficient manner possible.



One toolkit to rule them all has a lot of appeal, so long as it does it
well, and continues to be open-minded and accepting of new ideas. Dojo has
the potential to be all that.



Ken B







-----Original Message-----
From: dojo-contributors-bounces at mail.dojotoolkit.org [mailto:
dojo-contributors-bounces at mail.dojotoolkit.org] On Behalf Of Dylan Schiemann
Sent: Thursday, October 11, 2012 6:04 AM
To: dojo dev.
Subject: Re: [dojo-contributors] what is the raison detre for dojo 2.0.



-----BEGIN PGP SIGNED MESSAGE-----

Hash: SHA1



Frankly, I don't care at all about competing with other toolkits. I'm tired
of hearing about how we can win the war. Why are we at war, rather than
working hard to grow with the community at large?



Rather than focusing on building the one walled garden yet completely open
toolkit to rule them all, Dojo and the Dojo Foundation should be thinking
about how we can take our knowledge and make both our toolkit and any
others that share our open ideals better.



What I personally care about is creating a collection of tools (a

toolkit) that continues to make it simpler to build well architected and
highly performant apps, and that is easy to split up and scale up.



The focus needs to be on the APIs and tools and features that we need to
deliver on, and growing our community by becoming part of the bigger
community. We didn't start Dojo to win the war, we started Dojo to change
the web and make it more open and collaborative.



We need to focus on building an amazing foundation, pushing things forward,
and people will continue to notice. We've had a lot more interest lately as
people take another look at Dojo, and interesting group of new people that
have become involved, or that want to see where

2.0 goes to see how they can help.



One idea I've had involves sort of having the foundation be a bit less
about silo-ed projects, and more about areas of interest that one or more
projects can come together to collaborate on.



For example, this might look something like:



* Utilities

* Modules

* Language improvements and shims

* UI (widgets, themes, mobile, effects, vector graphics, etc. ... this one
is probably too big)

* Data/MVC

* Server-side integration/REST/Real-time



with the idea being to encourage projects with overlap to more easily
collaborate across projects where it makes sense. People could either be
involved with projects, or just involved in an area of interest, or both.
It might make the foundation a more inviting place to encourage
collaboration, etc.? But more importantly I think, it would encourage
projects to perhaps share some common APIs, so that each microtoolkit isn't
reinventing the wheel.



The goal for Dojo 2.0 should not be to try and take on the weight of the
world and do everything, but should be to provide the right set of tools
and community and vision so that our users can do everything with Dojo as
part of that story.



Until we have that, I don't care about the competition, because it frankly
doesn't matter and it's the wrong place to put the attention of an open
source project as we're trying to plan towards 2.0.



Looking at the various suggestions, those from Colin, Rick Waldron, & James
Burke mesh most closely with what I think our priorities should be for 2.x,
as well as what I wrote of course.



Regards,

- -Dylan



on 10/10/12 8:39 PM (GMT-07:00) Rawld Gill said the following:

> Great point on packaging/distribution.

>

> I think the issue of *how* we release is yet another key view slice
through what we are trying to accomplish. We did discuss this a little
today, including the idea that one of our release artifacts in the future
could be a single-script, loaderless package that could compete with the
microlibs/jquery.

>

> --Rawld

>

>

>

>> -----Original Message-----

>> From: dojo-contributors-bounces at mail.dojotoolkit.org [mailto:dojo-

>> contributors-bounces at mail.dojotoolkit.org] On Behalf Of Adam L.

>> Peller

>> Sent: Wednesday, October 10, 2012 6:56 PM

>> To: dojo dev.

>> Subject: Re: [dojo-contributors] what is the raison detre for dojo 2.0.

>>

>> Sorry I missed the meeting.

>>

>> I don't like the odds of predicting what the right areas are to focus

>> on.  My hope for Dojo 2.0 is that we can fix the

>> packaging/distribution problem in a way that makes us more flexible,

>> so we don't get stuck with one release of one set of plugins, or tie

>> our future to decisions we make now.  Instead, we can have

>> independent pieces with independent release cycles, which can thrive

>> or die, people can use what they need, can do a major revision (3.0)

>> when they need to, work with other toolkits, etc. That's an

>> oversimplification of a very difficult problem, but we're in a much

>> better position to do this now with AMD, github, volo/cpm, etc., and
getting that right may matter more than what we initially release for 2.0.

>>

>> -Adam

>>

>>

>

> _______________________________________________

> dojo-contributors mailing list

> dojo-contributors at mail.dojotoolkit.org

> http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors

-----BEGIN PGP SIGNATURE-----

Version: GnuPG v1.4.9 (Darwin)

Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/



iEYEARECAAYFAlB2RTkACgkQ1E2HcBNypM7vBwCgoQVHEkatOzQ7XcCQhpsXqQSI

LdsAnjzzJ95wPrMGLzE+67qQ+qPwI6cf

=crU6

-----END PGP SIGNATURE-----

_______________________________________________

dojo-contributors mailing list

dojo-contributors at mail.dojotoolkit.org

http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.dojotoolkit.org/pipermail/dojo-contributors/attachments/20121011/0863e508/attachment-0001.htm 


More information about the dojo-contributors mailing list