User:Miriya52/week7 midterm

Refer to project glossary for acronyms and definitions. Week 7: Midterm Report, January 16-20


 * Weekly reports up to date.
 * Patches published and accepted (or equivalent for non-coding projects).
 * Regular meetings with mentors.
 * If there is a delay in expected deliveries, plan updated accordingly.
 * Full-time routine established

For the first 7 weeks of the internship, I worked on adding GIFT support to Pyslet, a python package that implements some of the Learning Education and Training (LET) standards, including IMS QTI. The reasoning behind implementing GIFT support with the existing Pyslet structures is that it is better to work with a richer object structure and it could be integrated for conversion to and from the other Pyslet supported standards.

To add GIFT support, I am working on parsing a GIFT formatted text to the same structure as pyslet QTI. Some features of QTI that I am not implementing are:
 * The QTI standards is richer in feature set and more complex than GIFT, specifying user interface and a greater variety of question types. I am only looking to implement a subset of the QTI structures for GIFT.
 * The existing Pyslet modules were written for Python 2, with Python 3 compatibility modules added. I am just writing my addition in Python 3 and ignoring unicode compatibility checks.
 * I am following a Test-Driven Development approach, in which I write a unittest or set of unittests and work on the code to pass the unittests. I have most of the structures tests passing, and now working on the parser which is significantly different.

During week 6, I attended the Wikimedia Developer Summit which gave me insight to how the Wikimedia development team is organized and works on the various Wikimedia products.

Midterm Deliverable: GIFT parser implemented to parse a basic functionality, a comment. Plan to submit as pull request to Pyslet package.