On 1 Feb 2015 at 19:41, Anmol Sood wrote:
I saw the GSOC 2015 Boost page ( https://svn.boost.org/trac/boost/wiki/SoC2015) and the project on concurrent hash tables looks really interesting to me. I would like to know on the kind of pre-requisite skills required for the project and if I could share the progress I am making on writing code for the programming competency test here.
Firstly, you have made a great start Anmol coming here good and early. Absolutely feel free to share your progress here. I as the person marking your application and anyone else who applies probably can't help you too much with specifics, but other people here may do so if you ask in the right way. And a large chunk of a successful GSoC is asking the open source community involved for feedback and help where needed, which can include stackoverflow (tip: post a link to any SO questions here, you may get an answer on SO from someone here). Note that I'll direct any additional applicants to this thread so everyone has an equal and fair chance. You may wish to consider this aspect if posting code publicly.
Any tips/advice on helping me to get started on working for this project will be really helpful.
I'd firstly get the unit tests compiling. That library (Spinlock) has a criminal lack of documentation, what there is is all doxygen generated API reference and nothing on build config. However, Spinlock is BindLib based and therefore does not actually need Boost if you have a C++ 11 compiler and STL. Hint: look in the test directory. Next I'd follow the hints in the competency test to implement the test which ought to be fairly easy after examining rehash(), and then I'd be looking for really well thought through functional testing for the new functionality, especially testing for exception safety and thread safety in addition to use of check tools such as valgrind and ThreadSanitizer to ensure your solution is rock solid. The other functional tests already there give a good hint as to what is required, but I'll also say that the existing testing is not in my opinion sufficient, particularly in coverage. And good luck! Niall --- Boost C++ Libraries Google Summer of Code 2015 admin https://svn.boost.org/trac/boost/wiki/SoC2015