Any thoughts? :)

kt

--
http://www.stuckonalgebra.com
"The best Algebra tutorial program I have seen... in a class by itself." Macworld
--- Begin Message ---
On May 31, 1:46 pm, Thomas 'PointedEars' Lahn <pointede...@web.de>
wrote:
> Kenneth Tilton wrote:
> > David Mark wrote:
> >> On May 30, 11:06 pm, Kenny <kentil...@gmail.com> wrote:
> >>> I think it was a breakdown in parallel universes. In mine qooxdoo works
> >>> brilliantly.
>
> >> Based on what evidence?  I'm guessing you tried it in a handful of
> >> browsers you had handy and figured if it appeared to work in those, it
> >> must be "brilliant".  Did it ever occur to you that the authors of
> >> qooxdoo tried the same browsers before you and inserted lots of hacks
> >> and sniffs to make them appear to work?  What do you think will happen
> >> in anything older, newer or unknown to the authors?
>
> > I'll lose 0.01% of my market for a week until the ten full-time
> > engineers paid to work on qooxdoo patch it?
>

Yes, time to check up on those wily (and paid!) "engineers".

> ,-[qooxdoo-1.1-sdk/framework/source/class/qx/Bootstrap.js:554]
> |
> | getClass : function(value)
> | {
> |   var classString = Object.prototype.toString.call(value);
> |   return (
> |     qx.Bootstrap.__classToTypeMap[classString] ||
> |     classString.slice(8, -1)
> |   );
> | },

That's a completely worthless and ill-conceived function that could
only have been designed by a neophyte.  My guess is the whole mess
hinges on it.  Hope they disallowed host objects.

>
> ,-[ibid.:554]
> |
> | isString : function(value)
> | {
> |   // Added "value !== null" because IE throws an exception "Object
> | // expected"
> |   // by executing "value instanceof Array" if value is a DOM element that
> |   // doesn't exist.

This looks like the sort of confused-as-all-hell comments I saw all
over Dojo.  Skipping ahead a bit, I don't see any value instanceof
Array either.

And obviously they have not disallowed host objects for this one.

> It seems that there is a internal different between a
> |   // JavaScript null and a null returned from calling DOM.
> |   // e.q. by document.getElementById("ReturnedNull").

And there you have it.  What is "a internal different" anyway?  There
may be twelve of them, they may be paid and may well work full-time,
but these are not engineers (in any sense of the word).  Worse still,
they clearly have no experience with JS or browser scripting and
apparently can't even explain their confusion in a coherent fashion.
You could have twelve-hundred such developers working double-time, on
weekends, holidays, etc. and you'd still have no hope (for anything
but a disastrous result).

> |   return (
> |     value !== null && (
> |     typeof value === "string" ||
> |     qx.Bootstrap.getClass(value) == "String" ||

Didn't disallow host objects for the other one either, which certainly
contributed to their confusion and subsequent attempt to patch the
"imaginary DOM element" problem.

> |     value instanceof String ||
> |     (!!value && !!value.$$isString))
> |   );
> | },
>

This illustrates the often-wide gap between the perceptions of an
impressionable neophyte and the realities of their chosen code.
Twelve full-time engineers working around the clock sounds impressive
until you look at their output.

And I bet if you tried to explain the issues to them, the response
would be "show me where it fails!"  :)

Show me where this fails:-

var isIE = !!document.all;

function magic(a, b) {
  return 0;
}

/* This might look funny, but it must be
   done this way to work in all browsers
   Trust us, we are engineers. */

function addTwoNumbers(a, b) {
  return a + b + 8 + 10 - 8 - 10 - magic(a, b) + magic(b, a) * (isIE ?
2.5 : 3);
}

Passes the unit tests.  Can't be bad.  :)

Obviously, that's a made-up example, but some of the code in Dojo,
Prototype, etc. has ended up in a similar state after years of
community guesswork.  One guy screws up in one module, another module
is adjusted to compensate, then a new browser comes out that breaks
the patches, a browser sniff is added, etc.  Eventually you get a god-
awful mess of a patchwork that nobody understands (and most are
hesitant to touch) and comments, documentation, blog posts, etc. that
try to make sense of the senseless.

--- End Message ---
------------------------------------------------------------------------------

_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to