Contributing to Shark¶
The Shark library is an open-source software project and welcomes contributions from external developers. For this reason, the following process for external contributions to the Shark library and for being appointed as a Shark core developer has been established:
- Submit your patch to the Shark review board instance at https://nisys.dyndns.biz:8081 (see the development environment tutorial for more information).
- Select ‘SharkCoreDevelopers’ as review group.
- Whenever the core developers issued a “Ship it”:
- Contact any member of the group SharkCoreDevelopers by email, noting down your review number and ask him to commit your patch to the Shark repository.
That’s it :-) Whenever an external developer has ten or more patches shipped with Shark, he/she might apply to become a Shark core developer at admin@shark-project.sourceforge.net .
Please feel free to work on one of the open issues listed below:
ToDo List¶
Automatically generated entries¶
This is a list of all .. todo::
items in all of the
sphinx documentation
Todo
The application examples page will be part of the full, official Shark release.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/showroom/showroom.rst, line 10.)
Todo
describe basics of algorithm: working set selection, shrinking and update step.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/algorithms/quadratic_programs.rst, line 29.)
Todo
write this section
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/algorithms/quadratic_programs.rst, line 178.)
Todo
TG: should it be Type1 feature1; Type2 feature2; ??? mt: i second this question
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/batches.rst, line 230.)
Todo
mt: undef pointname also?
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/batches.rst, line 247.)
Todo
implications of this? is there a task in the tracker? etc.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/kernels.rst, line 160.)
Todo
math here? mt: yes please! :)
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/kernels.rst, line 258.)
Todo
i think we need some more explanation on the expected size of weights, especially since we don’t have type checks in the code of weightedParameterDerivative (maybe these should be added, too). in any case, the workings of weightedParameterDerivative should be explained more, or link to some tutorial where this is done.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/kernels.rst, line 292.)
Todo
i think what is missing here is a comment on the normalization conventions. i can’t even quite figure them out on my own from the code. it seems that for losses, when the type passed to eval is data-of-something, then the result is normalized by the number of samples, and if i use the batch interface of eval, it is not normalized, correct? so, using the data interface is a statement that one wants normalization and otherwise on always does it oneself? i am aware that this could also go down to where the eval-interfaces are explained, but i think it should be at a more prominent place actually.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/losses.rst, line 69.)
Todo
i think the descriptions in the right table need some update. for example, the one for CrossEntropyIndependent does not make sense;
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/losses.rst, line 231.)
Todo
ADD TUTORIAL
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/optimizers.rst, line 189.)
Todo
give the exact equations for all criteria in the table. also check the code again if they all really adhere to the Prechelt paper, i.e., .
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/library_design/stopping_criteria.rst, line 82.)
Todo
TG: Present one simple and one involved use case? Or is this the wrong place?
OK: We need one tutorial for Kernels and Models which explain how these derivatives can actually b calculated. Maybe introduce your nice scalar product syntax which makes the calculation a breese.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/optimization/conventions_derivatives.rst, line 194.)
Todo
Insert sufficiently detailed description of the whole package-making process here.
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/for_developers/issuing_a_release.rst, line 15.)
Todo
explain the new tut2rst and tpp to cpp workings. (iinm, the tpp to cpp happens when doing ccmake . in the shark_source dir.)
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/for_developers/managing_the_documentation.rst, line 116.)
Todo
Write this section!
(The original entry is located in /Users/igel/Shark/doc/sphinx_pages/rest_sources/tutorials/concepts/data/import_data.rst, line 176.)