Sunday 29 July 2012

Coding Week 7: Building Entry Point

Features which make everyone crazy about any building, structure, Code or any things is its first impression. For a building Entrance, main door and outer look plays a role, for us our body outer looks, presentation. I don't mean to say we should judge person or building by these characteristics only but saying they are mostly the last impression also isn't wrong too.


So for any organization, person,Coding making first impress worth while is the biggest aim.So is/was for me.


This week was about designing, building or adjust the outer most module Query parser for my project.As any user except a developer wont see bi-gram implementation in index what he will experience in bi-gram is Query parsed with bi-grams.So for me this is Entrance Point and exiting module to code.


Query Parser module implementation started with understanding the current code and code was very difficult and need a lot of patience.But i had a savior Sehaj Singh Kalra.He is working on improving the Query Parser this year as a GSOC project.He gave me the docs he created as part of project.And those docs are the most useful or worth reading docs in my life.Thanks for such a great help Sehaj.


I tried my hand on the code with help of ssk's docs and learned where i need to attack but still there were some grey areas.In my review meeting i decided to discuss these issues.Dan Colish,James Aylett and myself have discussion on parser and decided to do the easiest changes and move forward to other module in the evaluation meeting.Aim was to do minimal changes and move forward to evaluation module and then making changes will make sense as we will know does this change benefit us in the module.


I want to share one of my experience with parth(mentor @ xapian).Once i was working in same lab with parth and discussion one of my project with him. He Stated make a module or script with which you can play and see numerical results stating "It's always easy if you can see you result in numbers and it motivates you"(not exact but it carry the gist of what he said).So we decided to build this evaluation module and later improve all of our module using result of evaluation module.


This week we made changes to NEAR, PHRASE, ADJ, GROUP queries to include the bi-gram in them and re-factored and adjusted Weighting scheme UnigramLMWeight to LMWeight. LMWeight handles uni-gram and bi-gram Language model based on parameters.And obviously buckleup for evaluation module.

1 comment:

  1. When did you work with Parth ? Is he our senior ? . And sehaj-sk doesnt come on #xapian-india these days .

    ReplyDelete