[maemo-community] Reforming Karma

From: Andrew Flegg andrew at bleb.org
Date: Fri Oct 3 13:06:58 EEST 2008
On Fri, Oct 3, 2008 at 9:39 AM, Dave Neary <dneary at maemo.org> wrote:
> Andrew Flegg wrote:
>
[IRC karma]
>>
>> 0.0001 karma point per line, or something? Perhaps a log scale for
>> those who have *way* too much time.
>
> +1 on a log or power rule. sqrt is fine, not quite as brutal as log2.
>
> N       sqrt(N) log2(N)
> 1       1       1
> 5       2       3
> 10      3       4
> 50      7       6
> 100     10      7
> 1000    31      10
> 10000   100     14

I like sqrt(N), but probably X * sqrt(K * N), rather than X * K *
sqrt(N) (where K is small to take into account number of lines IRC
need more to be considered valuable), and X is the overall weighting
of IRC contribution.

>> But that's a scaling factor. Introducing a maximum's saying "we value
>> this contribution, but - once you've done it X times - you might as
>> well stop".
>
> Just so I'm not misunderstood - this is a maximum number of points per
> blog entry, not a maximum number of blogging points, that I'm proposing.

Ah, OK. That's a *very* different proposition and not something I'm
intrinsically opposed to, then :-)

Might overcomplicate the coding and introduce more bugs: the number of
blog posts which get >~15 faves are very small (I can't remember any
in recent memory), and this can be dealt with just be a scaling factor
for blogs?

> It would be nice to depreciate karma over time but right now it's not
> incremental - you don't get new karma points for what you did this last
> week, every night your entire karma contribution is recalculated (this
> takes about 90 minutes for everyone these days, I believe).

Right, so to do a proper "half-life" all the plugins would have to be
aware of the date on which the karma was earned. Tricky.

> The easiest thing to do if we did incremental karma would be to multiply
> everyone's existing karma by a factor (say 0.8) on a given date every
> year. That way, stuff you did 2 years ago is worth only 0.64 times what
> you do today. But since the system doesn't' work that way, and I believe
> it'd be a big job to convert it to that, I don't think the return on
> investment is there.
>
> Not knowing midgard, I'm guessing here, but if we did store karma in a
> database table, we could duplicate the table on a given date, and
> generate a second list "karma points this year" by subtracting karma at
> the beginning of the year from karma on a given day? Seems like that
> wouldn't be too hard, and would give a way of seeing current activity,
> but without depreciating old karma.

There's another reason to move to incremental karma (but not just a
user -> value mapping, but a user -> value_for_blogs,
value_for_products, etc.): this batch process has had problems and
doesn't scale well. Moving to a table would mean that changing the
calculation method for a factor would become harder and mean
rebuilding the index, but that should happen less frequently than just
tweaking the way the factors are combined.

Cheers,

Andrew

-- 
Andrew Flegg -- mailto:andrew at bleb.org  |  http://www.bleb.org/
maemo.org Community Council member

More information about the maemo-community mailing list