[dojo-contributors] DDD 2010 - Pulsar

Eugene Lazutkin eugene at lazutkin.com
Mon Oct 18 13:18:00 EDT 2010

Hash: SHA1


On 10/18/2010 08:11 AM, Bill Keese wrote:
>   Thanks Eugene!   A few thoughts/questions that we can talk about on 
> Tuesday:
> 1) What does the concept of "base" mean in the brave new world of 
> requireJS?   Is there still something akin to the dojo namespace (albeit 
> not really a global variable)?    I do see the main-browser.js file 
> which combines a few modules.    Or, are you talking about treating base 
> like a package, same as Tom's proposal for dojox packages, and then 
> putting the other core files like dojo.fx into separate packages?

I want to package the base as one unit, which makes all services
available under one name. Probably a familiar example would be helpful:

// user's code
define(["dojo"], function(dojo){
  var container = dojo.create("div",
        {className: "panel"}, dojo.body());
  var tmpl = dojo.replace("<em>Hello, {0}!</em>", [name]);
  dojo.place(tmpl, container);

Or something to this effect.

Other core files, and Dijit, and DojoX packages/modules are peers of
dojo logically. For example, a dijit infrastructure can be a separate
package, and all widgets will depend on it. Obviously it should be
discussed, and at the very least we should come up with name schema, and
the way to present it to users as a unified toolkit.

> 2) When you said "influenced by EmbedJS" I figured you meant having 
> alternate files based on browser capability (ex: query.js for browsers 
> that support querySelectorAll() [well] and a larger query-ie.js for 
> IE6-8), but I don't see that.   Not sure what the influence is.

That, and using smaller files to improve granularity, and to use simpler
versions of some things, e.g., simpler query modules. We'll talk about
it in details during DDD.

> 3) I wonder if we should branch from 1.x so that GIT can help us merge 
> 1.x fixes into 2.0, or if we should just do it by hand.   Core isn't 
> changing much nowadays except for dojo.store.

I think manual transfer will do just fine due to the stability of Dojo
1.x' base.

> 4) hard to tell what you changed exactly, besides removing deprecated 
> functions and switching to requireJS format.

Like I mentioned, up to this point it was a straight up port. In order
to deviate from Dojo 1.x I want to get your input/blessing.

> 5) plugd.connectlive() and dojox.NodeList.delegate() are similar

Yes. I listed both for completeness.

> 6) dijit's plan is depending on that trigger code, so hopefully we will 
> add it into base

It will be in the base.



> On 10/17/10 11:07 PM, Eugene Lazutkin wrote:
> As promised I started to prototype the upcoming Dojo 2.0 Base AKA
> "Pulsar". You can find it there: http://github.com/uhop/pulsar
> (warning: work in progress, extremely far from finished).
> While not everything is in place, you can look at what's available to
> get a feel. As of now it is a straight port of existing Dojo Base
> modules, no controversial decisions were made at this point. ;-) It is
> based on RequireJS --- newly accepted Dojo Foundation project
> (congrats!). EmbedJS by Uxebu was a big input. Some DojoX and plugd
> modules are considered as candidates for some functionality.
> At this point and in the near future Pulsar is not positioned as a
> final product. It is more of a playground to try out different ideas.
> Nothing is set in stone. Any code in it will be benchmarked for
> performance and size impact. Ideally we can grow it to be the base,
> but be prepared that it can be discarded and we will start anew.
> I plan to have an informal presentation/town hall/round table-type
> discussion during DDD, so we can talk about philosophy of the change
> --- goals, possible solutions, alternatives, and other pertinent
> details. I need all input and all help I can get --- please come
> prepared by thinking about this problem, what should be changed in
> Dojo, what should be added, and what should be preserved. Any
> practical/constructive ideas are welcomed. Non-technical ideas (visual
> design, marketing, PR) are welcomed too. Feedback from your projects,
> which can suggest or confirm changes, would be invaluable as well.
> Let's make Pulsar the community-driven project --- only together we
> can do something great.
> Special attention is paid to mobile web apps. If you are mobile
> developers, be prepared to talk about your experiences.
> Clearly the base, while important, is just a small part of Dojo 2.0.
> IMHO, the most important action would be in the loader (RequireJS at
> the moment), additional packages (the base is a mere package), the
> package manager, and the future package marketplace. Those big things
> will make or break Dojo 2.0 and we cannot afford to screw it up. If
> you have any positive ideas, real world experience, or constructive
> criticism relevant to those areas --- please share!
> See you all in at Palm!
> Cheers,
dojo-contributors mailing list
dojo-contributors at mail.dojotoolkit.org
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/


More information about the dojo-contributors mailing list