From: David Mark on
David Mark wrote:
[...]

> if(typeof dojo == "undefined"){
> dojo = {

And how could I forget. The final (they don't venture in here often)
lunatic touch. Based on some incomplete data and nonsensical
conclusions (something about being faster in IE) from a contributor
called "bill", they rushed to commit a change that removed the
declaration of this global (as well as a few others).

I tried to stop them, but they were intent to somehow improve their
performance without the "major hassle" of dealing with my renovated
version. The "no time, we're all busy" excuse comes up a lot with this
bunch. I say, if they don't have the time, why are they trying at all?
Who needs more half-baked blobs of JS at this point?

Furthermore, I think it bears mentioning that their "attr" method is
considerably worse than jQuery's (and that's really saying something).
And virtually all of Dojo (particularly the widgets) relies on it. For
those who aren't familiar with "attr", it uses a mix of get/setAttribute
(which are broken in many versions/modes of IE) and property access in a
seemingly random fashion that can only result from patchwork programming
by observation. Their bug-tracker is full of complaints about it, but
they apparently never spotted the pattern. Back when I was still
speaking to the owners, I was told their developers were all over my
attributes primer (this, after they had whined their way out of my
advice). I replied that the document has a copyright on it so they best
not try to lift it (not that they could carry it anyway). Last I heard,
they were preserving the old one for "compatibility" (LOL) and working
on a companion piece. Just when you thought it was safe to go back in
the DOM. :)
From: Andrew Poulos on
On 6/05/2010 5:05 PM, David Mark wrote:
> David Mark wrote:
> [...]
>
>> if(typeof dojo == "undefined"){
>> dojo = {
>
> And how could I forget. The final (they don't venture in here often)
> lunatic touch. Based on some incomplete data and nonsensical
> conclusions (something about being faster in IE) from a contributor
> called "bill", they rushed to commit a change that removed the
> declaration of this global (as well as a few others).
>
> I tried to stop them, but they were intent to somehow improve their
> performance without the "major hassle" of dealing with my renovated
> version. The "no time, we're all busy" excuse comes up a lot with this
> bunch. I say, if they don't have the time, why are they trying at all?
> Who needs more half-baked blobs of JS at this point?

As a personal anecdote, I visited a friend of mine who works at a fairly
high-powered development house (lots of highly paid and skilled
developers who work on projects that cost $100s of thousands). They
recently got a javascript project to maintain/update a "web app" that
was build on top of dojo.

Well I learnt very quickly not to mention dojo in the presence of the
people working on the project. The mood instantly changes to murderous
(not helped by "told you so" attitude ;-) )

I don't know if its dojo or just the way this project was originally
built but everyone is regretting taking on the project. Still it doesn't
make me want to suggest using it to anybody.

Andrew Poulos
From: David Mark on
Andrew Poulos wrote:
> On 6/05/2010 5:05 PM, David Mark wrote:
>> David Mark wrote:
>> [...]
>>
>>> if(typeof dojo == "undefined"){
>>> dojo = {
>>
>> And how could I forget. The final (they don't venture in here often)
>> lunatic touch. Based on some incomplete data and nonsensical
>> conclusions (something about being faster in IE) from a contributor
>> called "bill", they rushed to commit a change that removed the
>> declaration of this global (as well as a few others).
>>
>> I tried to stop them, but they were intent to somehow improve their
>> performance without the "major hassle" of dealing with my renovated
>> version. The "no time, we're all busy" excuse comes up a lot with this
>> bunch. I say, if they don't have the time, why are they trying at all?
>> Who needs more half-baked blobs of JS at this point?
>
> As a personal anecdote, I visited a friend of mine who works at a fairly
> high-powered development house (lots of highly paid and skilled
> developers who work on projects that cost $100s of thousands). They
> recently got a javascript project to maintain/update a "web app" that
> was build on top of dojo.
>
> Well I learnt very quickly not to mention dojo in the presence of the
> people working on the project. The mood instantly changes to murderous
> (not helped by "told you so" attitude ;-) )

I'm not surprised. :)

>
> I don't know if its dojo or just the way this project was originally
> built but everyone is regretting taking on the project.

Likely a little bit of both. Imagine building a house with a hammer
made of jello and a water color of a saw. There's just no right way to
do it. You either admit that from the beginning or eventually go mad
trying to make it work.

> Still it doesn't
> make me want to suggest using it to anybody.
>

Don't suggest it to anyone you don't want to kill you. ;)
From: David Mark on
David Mark wrote:
> Andrew Poulos wrote:
>> On 6/05/2010 5:05 PM, David Mark wrote:
>>> David Mark wrote:
>>> [...]
>>>
>>>> if(typeof dojo == "undefined"){
>>>> dojo = {
>>> And how could I forget. The final (they don't venture in here often)
>>> lunatic touch. Based on some incomplete data and nonsensical
>>> conclusions (something about being faster in IE) from a contributor
>>> called "bill", they rushed to commit a change that removed the
>>> declaration of this global (as well as a few others).
>>>
>>> I tried to stop them, but they were intent to somehow improve their
>>> performance without the "major hassle" of dealing with my renovated
>>> version. The "no time, we're all busy" excuse comes up a lot with this
>>> bunch. I say, if they don't have the time, why are they trying at all?
>>> Who needs more half-baked blobs of JS at this point?
>> As a personal anecdote, I visited a friend of mine who works at a fairly
>> high-powered development house (lots of highly paid and skilled
>> developers who work on projects that cost $100s of thousands). They
>> recently got a javascript project to maintain/update a "web app" that
>> was build on top of dojo.
>>
>> Well I learnt very quickly not to mention dojo in the presence of the
>> people working on the project. The mood instantly changes to murderous
>> (not helped by "told you so" attitude ;-) )
>
> I'm not surprised. :)
>
>> I don't know if its dojo or just the way this project was originally
>> built but everyone is regretting taking on the project.
>

Forgot to mention. Tell them to email or IM. I can make it all better. ;)

Preventing developers from wasting massive amounts of time going down
blind alleys with Dojo "proper" (or jQuery or whatever) is what I've
been up to the last few months. There will be some promotional material
on cinsoft.net about this shortly. As for Dojo, I have rewrites of
every module and basically saw it all during the development process.
And you wouldn't believe what these people were faced with before they
found me (wrong answers and lousy patches at ten times the prices).