Hello everyone, I'm Sanuj Sharma, a final year undergraduate student in department of Electronics and Communication at Indian Institute of Technology - Guwahati, India. My project for GSoC 2016 project is ''NEW PARAMETER FRAMEWORK AND PLUGIN BASED ARCHITECTURE FOR SHOGUN" <https://github.com/shogun-toolbox/shogun/wiki/GSoC_2015_plugin>. I plan to accomplish the following by the end of the project:
- Plugin based architecture for Shogun. This is important because shogun's codebase is massive and old, so it requires major refactoring. By keeping a light base shogun library plugins can be installed on top of that which would make the installation process easy, the development process much easier and would also allow 3rd party plugins for Shogun. Björn has started making a mock up for the same which can be found here <https://github.com/shogun-toolbox/dynaplugz> which I also plan to contribute to. First step would be to finalize the plugin architecture for shogun base library (which would take time as we will experiment with multiple things) and then I would start migrating old code in the form of plugins. - New internal parameter framework and string-based parameters in the API exposed to end users who use Shogun via scripting languages like Python, Lua, R etc. This can be done by using Tags for speed and type-safety in C++ code and some SWIG hacks which I'm not sure about right now. This idea is taken from Sergey's excellent design draft <https://github.com/shogun-toolbox/shogun/wiki/New-parameters-framework-and-plugins> written at NIPS ;) I'm trying to do a proof of concept here <https://github.com/sanuj/shogun-plugin-arch> (Tags are working but SWIG is still left). Brief summary about my parameter framework prototype. <https://gist.github.com/sanuj/3a343c8a31c4e9a4c657> - I also look forward to writing the ultra-cool cookbook pages (I have already written a few) and helping shogun with any other stuff that is required. I will be available most of the part of day on IRC according to Indian Standard Time. Things I like include deep learning, bio(genetics), books, online courses....etc ;) I also have a blog (sanuj.github.io) which is blank currently but i plan to post new things after my end-semester exams which end on 7th May. The next step is to make SWIG work with my prototype and I'll update you guys as soon as I do it. Looking forward, Sanuj
