Privacy and messaging handles within XMPP conferences
pidgin at unreliablesource.net
Wed May 21 23:27:55 EDT 2008
On Wed, May 21, 2008 at 08:02:07PM -0700, Ka-Hing Cheung wrote:
> I agree with Mark here.
> I really don't understand when a feature ever _belongs_ in a plugin. If
> it's a worthwhile feature and one that we should allow people to turn
> off/on, the checkbox for it should not hide in the plugin dialog.
Alright everybody repeat after me. Plugins are not third-class citizens.
(One of these days I'll stop just talking about this and actually write
the blog post/essay/rant about it.)
That means that decisions about whether to put things in plugins don't
involve deciding whether it is 'worth' putting in pidgin or what the worth
of the feature is (not at the fine-grained level at least, at the macro
"this feature sucks" or "this feature is only useful to an absolute
minority of people" level decisions of worth matter).
Things can profitably be implemented as plugins when they are clearly and
cleanly modularizable and when the feature has side-effects that may or
may not be immediately clear, immediately obvious, introduce complexities
best avoided by default, or have caveats that can be more clearly
explained when not a line item in the preferences dialog. (At a start.)
My problems with the privacy checks in the core fall into a number of
those categories. Namely, it has side-effects that we are just now
discovering (how long have they been in the core now?). It is clearly
largely doable with signals (and if there are any things it can't do more
signals will fix that). It introduces complexity we are now having to deal
with and does so in ways which may or may not themselves require further
complexity, compromises, or preferences to manage.
Before anyone misinterprets me, no I'm not in the slightest arguing for a
Miranda-like devolution into a bunch of loosely bound together plugins.
If we think plugins 'hide' (and use that as a reason not to put things
there) then we should work on a way to make them more obvious again. Our
last attempt was more-or-less a spectacular failure (and one I argued
against at the time), but that isn't to say we can't come up with
something better now (not that I have any ideas though).
Making them more obvious includes improving the Plugins dialog, it
includes making them more publically noticable outside of pidgin, it
includes working on getting more third-party people involved in writing
Lastly, I'm not trying to convince anyone to remove core privacy checking,
I think that ship has sailed and I don't really care. I do think, given
that we are going to keep it, that my previous suggestion for how to fix
the current problem is likely the best idea moving forwards.
More information about the Devel