On Thu, Mar 10, 2016 at 04:59:15AM +0530, Tejas Ravichandran wrote:
> I would like to have more insight into the Learning to Rank Project and
> preferably some prior task/project that i could work on to get myself more
> equipped to contribute for the same.
Hi, Tejas -- we spoke briefly on IRC last night, but welcome to
Xapian!
There's a lot of detail already on the project's individual wiki page
(https://trac.xapian.org/wiki/GSoCProjectIdeas/LearningtoRankStabilisation),
but if anything's unclear or you have questions about any part of it
then please do ask them.
In terms of a small task to prepare, I'd recommend:
a. Get the existing xapian-letor code building (remote its
.nobootstrap file), to make sure it actually compiles at all (one
of the disadvantages of it being marked nobootstrap is it doesn't
get automatically built by any of our test processes, so the code
may not work with the latest compiler &c).
In the state it's in, it's not useful code. (This is because the
Xapian master branch only contains commits until just before one
previous project introduced code with an inappropriate license.)
But getting it to compile is a good first step. You could also
check that you can compile
b. Look at improving test coverage for the main Xapian library. Since
unfortunately our lcov website is currently down, you'll want to
install lcov yourself and generate a test coverage report (see
https://github.com/xapian/xapian/blob/master/xapian-core/HACKING#L267
for some pointers).
The coverage report will indicate places in the core library where
we have poor test coverage. Adding tests to cover a function or
method that isn't tested at the moment will therefore improve the
quality of our test suite.
The LTR stabilisation project is going to be heavy on writing tests,
so this is a good way to prepare for it. You'll want to use the
same test harness that we use in xapian-core when you get to
xapian-letor.
J
--
James Aylett, occasional trouble-maker
xapian.org