[Debtags-devel] Re: Recent progress

Hervé Eychenne rv@eychenne.org
Tue, 1 Mar 2005 03:30:24 +0100


On Mon, Feb 28, 2005 at 03:07:25PM -0800, Erich Schubert wrote:

> > Erich, do you feel that keeping the vocabulary flexible
> > poses insurmountable practical difficulties within the
> > existing system?

> The vocabulary is a moving target currently. The problem is, unless we
> kind of make a "stable release" of the vocabulary, we will have
> trouble getting it adopted.

I don't think the problem is to have a vocabulary adopted, but rather
having the tagging principle adopted.
Let's not be too vocabulary-centric, let's be management-centric. :-)

> Also, like Herve pointed out, we need
> version tracking if we have the vocabulary change too often.

We need it _anyway_. :-)

> If we had
> like one vocabulary for sarge, and then the next one for etch, that
> would be much less of a problem.

Without timestamps it would still require a whole big check just before
every release.
Either Debian continues with its current (awfully long) release cycle
and that's way too long to reflect the potential evolution of tags,
or it gets a reasonable 9 months cycle and a complete recheck would
be required much too often.

My opinion is that a complete recheck should almost never occur, as it
is too hard (virtually impossible, given the nature of Debian and free
software in general) to make it happen.

It's a bit like installing a Debian system from scratch on a given
machine: it occurs only one time, then apt-get upgrade is all you
need. Sorry for this bad analogy. :-)

> I believe that if we make a really good vocabulary now for the first
> "official" release we will do fine for a long time. The changes that
> come first will probably be limited to a small audience.

Here is my experience: the last few times I've been looking for tools
doing some given kind of work, I couldn't even find any tag representing
the precise kind of operation I needed.
Of course, you'll ask me "what kind of tags?", but I would even say
that is not the problem. The problem is that:
- the current tags are currently missing plenty of functionnalities
  they could/should reflect, as these uses already exist but no one could
  think of reflecting them into the vocabulary as too few eyes have seen
  the taglist for now
- new technologies or uses appear regularly

If we would give full exposure to the tagging system today, with full
maintainer attention, I'm sure the taglist size would double in a few
months.  Yes, a small team cannot think about everything.

Imagine the vocabulary would be frozen for a certain time when people
really start to tag packages. I can already tell you what will happen.
A first guy would need a new tag. Oh, it cannot be added, so let's
record it (and wait til the next vocabulary release). The day after,
another guy would ask a new tag. Then another, and yet another, and
many more, etc...
One day, the vocabulary would be officially updated, and those people
would be asked to remember where they would have applied the requested
tags at that time, and make the change at last. By this time, most of
them would have lost track of the changes they had once wanted. And as
it would be another tag set, everyone would be required to check it
all again anyway. Scary...
It would never work (tm). ;-)

> For example, we are currently missing "mono" tags (I have them in my
> local vocabulary already, implemented-in::csharp and
> langdevel::csharp).
> But adding those tags is not much of an issue: the scope is clearly
> cut, and when the need for a new tag arises, often none of the
> existing packages will need to be changed.
> In the mono-case it is for example only necessary to search for
> packages that somehow depend onto the mono runtimes, and tag these.

Yes, but that is not the most common addition scenario. I need a program
to watch TV. Do we currently have a tag for that? No. I need a program
to make screen captures. Do we currently have a tag for that? No. I
need a program to do some calculation operations. Do we... ? No.
I need a program to help me manage my bookmarks. Do we... ? No.

And I could continue like that for an hour, and find only a quarter
of what the whole Debian people could find. Get it?

> >   (b) tag most of the archive to the point where debtags
> >   is really practically useful,

> and (c) a system where changes to the vocabulary are kept low (in
> number of batches), to avoid them re-checking tags all the time

You're inverting causes and consequences.
Instead of being forced to restrict the number of additions because they
would be so costly operations, I prefer to help people dealing with
new additions smoothly so that there could be more (and I said there
certainly would be many given the nature of tagging, but that's
another orthogonal matter).

> I'm currently considering writing a new web tagging application that
> makes heavy use of the "new" javascript-xml-async-technologies (like
> gmail, maps.google.com etc.) - what do you think? I will only be able
> to do this for gecko-based browsers...

I think that might be funny for you to program and for us to play
with, but I certainly don't think that that's really important at
that stage (especially considering all the changes I would suggest).
I already said what I considered to be important, but as too often all
I can do is talk because I lack time.

And we all know that free software is about fun (not "important"
things, whether their important nature is debatable or not), and that
the one who codes is always righter than the guys who talks.
So do as you please... ;-/

 Hervé

-- 
 _
(°=  Hervé Eychenne
//)  Homepage:          http://www.eychenne.org/
v_/_ WallFire project:  http://www.wallfire.org/