Until people try building a desktop class application using te DOM, I think it's probably best for them to reserve judgement. Cappuccino and Sproutcore are the only ones who did it well (maybe Ext, but I don't know the API well enough), unfortunately it always lead to a leaky abstraction (I say that as core team member for Cappuccino). Then web developers come in and want to use their jQuery widgets, and are confused why it's terrible. The canvas approach is an almost pure abstraction, and should be explored thoroughly.