Thursday, 30 August 2012

GSoC Concluded


This week Google Summer of Code concluded. It was great learning experience working under openSUSE and getting to know people here especially my mentor Michal Hrusecky, whose brilliance helped me sail through GSoC. But unlike GSoC, the Karma plugin still has a long route to travel before it approaches completion. I have chalked out the following things to work upon in the coming weeks.

  1. Talk to the artwork team and improve upon the badges and come up with cooler and more creative ones. ;)
  2. Karma user rank Calculation does not fare well with current elgg and PHP version, so find out a better way to calculate ranks.
  3. Karma OBS implementation is not very clean. Run some tests to improve it. Also it takes a whole lot of time to complete searching for packages that have been updated latest, so, find out a better plan.
  4. The twitter implementation is not able to reward protected users on Twitter, try to fix that.
  5. Work on allowing people to iframe their karma stats on their blogs like on Ohloh suggested by Michal.

Till then you can review Karma on Connect and let me know how you feel about it. You can also find the documentation here.

Thursday, 16 August 2012

Karma weekly report and minor fixes.


This is my report for the last week, developing the Karma plugin for Connect.

There are 2 things I have added to karma in the last week. First off, Karma widget shows who all gave away kudos to you. For each kudo, there is one extra point added to your score. Also, each user can give away only a limited amount of kudos in a day, which is maximum of, 2 or whatever multiple of 500 your total score is.


Next, Karma widget also shows user rank. This is the rank of a user based on total karma score attained. This rank is purely score based irrespective of whether karma is developer or marketing type. I have kept the Rank calculation also a part of the cron script, so that means ranks are calculated every 5  minutes.


Also, during this time Marguerite Su, chinese wiki admin pointed out that wiki score calculated during karma score updation didn't include localed wikis. So I corrected the wiki and planet openSUSE part to include localed wiki and global posts.


I also fixed some minor bugs with wiki score calculation and kudos calculation.

I have started off with the documentation, though not much has been done, I  will now concentrate solely on that.

Saturday, 4 August 2012

Karma statistics available through Connect's API


In my previous post, I mentioned about allowing karma statistics to be available through Connect's API.  So, that is done. The method karma.details which requires a GET call, passing the username of the user, called only after authenticating with the api, returns user score in each respect, i.e score on fixinng bugs, making posts, tweeting, build service commits and wiki edits. It also returns user badge and the last karma update time of the user.


I plan to deploy the second version of the Karma plugin as soon as my mentor Michal Hrusecky, who is away currently, gets back. Also, if you have any ideas to give across or want to comment on how you liked or disliked the karma plugin, do leave a comment, I will work on it and improve it in the second version itself.


Next, I am starting off with the documentation. Hope to finish this asap, not much time left for the pencils down date. 

Friday, 3 August 2012

Karma rewards Wiki Edits


This my report of the work done in the past few days.


Another feature that has been added to the karma plugin is rewarding people on making Wiki edits. Karma fetches all wiki edits made by each user on Connect using their username and rewards them. Starting from the last 10 wiki edits, all are rewarded. For now there isn't any criteria to judge the significance of each wiki edit, because since openSUSE wiki is aimed at providing information regarding openSUSE and its distribution so each one is important to openSUSE and deserves to be rewarded.


During the past few days I also played with the existing karma widget a little, now it gives more information regarding the user's score, why a certain badge is awarded to you and what percentage of the maximum score is your score. I realized all these details wouldn't be of any use to others who are viewing your profile so I have segregated who sees what and made these details available only to the owner of the Karma.


After my mentor reviews the work done till now,  next I'll work on documentation and allow karma statistics to be available through Connect's API.