User:Adi.iiita/Gsoc2014/Report

Project title: Catalogue for Mediawiki Extensions

Goals for first half
As mentioned in the project schedule, the first half of the project aims to accomplish the following goals -
 * Devising a plan to integrate user feedback system into Wikiapiary.
 * Working with templates and SMW to integrate a rating system.

Communication plan

 * IRC has been used so far for daily communication.
 * Asynchronously, mails and mailing list of Wikiapiary is used to discuss plans and take opinions.

Lessons learnt

 * Not to get stuck on a particular task and keep things simple for the first version
 * Strict use of Github for code review
 * Important to learn Semantic Mediawiki well to perform efficiently on the project.

Work done

 * Understand the functioning of wikiapiary.
 * Read the documentation and code for the bots that collect data for wikiapiary.
 * Work on deciding the appropriate choice of rating extension.
 * Communicate with mentors to devise a plan.

Week 1:

 * Familiarized with Semantic Mediawiki.
 * Learned the working of the extension Semantic Rating.
 * Worked with the Wikiapiary developer community to finalize in a point to point manner, the exact use case of the rating extensions. This involves not only using user rating but also counting intrinsic factors like code compatibility, maintainability, extension popularity etc. to come up with a really meaningful rating scheme.

Week 2:

 * Objective of this week was to implement rating system on my own wiki counting most of the use cases as they are on Wikiapiary.
 * I worked through templates and Semantic forms to create rating system using "Two-step process".
 * I further enhanced it using "One step process" to automate the job to page creation.
 * Learnt in depth about Semantic templates, forms and other elements and successfully came up with a rating system.

Week 3:

 * Created templates for rating system.
 * Created properties and forms.
 * Tested and other magic keywords to include in the page rating system.
 * Deployed a full working rating system on my local wiki with Semantic Rating extension.

Week 4:

 * Got edit rights on wikiapiary.
 * Replicated templates and forms to suit the format of wikiapiary.
 * Slight change in plans as to deploy Review templates in Namespace of User rather than Namespace of Extensions was suggested.
 * Following up made changes and successfully deployed rating system on wikiapiary.

Week 5:

 * Started writing script for syndication of ratings from wikiapiary to mediawiki.
 * Read documentation for using API.
 * Made the script from scratch to login and edit pages on mediawiki.