I'm confused by the "componentization" of the web UI. If I have a need for a component, should I write my own jquery-ui plugin or should I write, if I use Backbone.Marionette, a MarionetteComponent ?

Both are be reusable, isolated unit of view and behaviour. So they are conceptually fighting and compete at same level.

So I don't actually see when to create one or the other. jQuery seems to be more universal, but developers tends to write MarionetteViews/Component.