Midgard and the Law of Karma

Karma: The total effect of a person’s actions and conduct during the successive phases of his existence, regarded as determining his next incarnation. (wiktionary)

Many communities struggle with the question of how to recognize their most valuable members. This is true also for Nokia’s maemo.org, the community for open source development on internet tablets. With the two latest device releases, Nokia has given hefty discounts to some members of the community, raising obvious questions on who should be entitled to such a developer device.

One part of answering that question (and managing the developer device program in general) was developing a CRM system for maemo.org including karma calculations based on community activity.

Karma is a complex concept which we decided to simplify a bit following the model we implemented for evaluating newsworthiness of incoming blog items in the Social News project:

  • count different contributions user has made
  • run those through a rating system (forum moderation, app catalog stars, social news favs, ...)
  • apply a contribution type modifier
  • add them up

…and we have karma:

Maemo-Karma-Quim

Technically the Karma system was implemented as a feature of Midgard’s net.nehmer.account profile management component. Out-of-the-box it is able to calculate Karma from various items like forum posts and blog comments inside the Midgard database. To complement that it has a quite simple plug-in architecture for Karma calculations from other systems like GForge, SVN or Bugzilla.

It will be interesting to see how Karma builds up when we start pulling it from different pieces of the open source community infrastructure and external services like Ohloh.

Technorati Tags: , ,


Read more Midgard posts.