Hi All,

I wanted to write everyone to let you know that there never will be a
better nor easier time to finally get your feet wet and contribute to an
open source project.

First Some Background:

HTM.java (https:///github.com/numenta/htm.java) is an official port of the
NuPIC (Numenta Platform for Intelligent Computing), over to the Java
programming language. It is a community driven project, while at the same
time part of Numenta.org and is a 100% compliant with all NuPIC unit tests
and conventions - yielding a 1-to-1 correspondence with all methods and
algorithms found in the native Python offering.


The Opportunity! :

HTM.java could use the build out of more Encoders!

A couple of days ago, work was completed on the base Encoder class and
ScalarEncoder together with the ScalarEncoderTest. Yesterday, in addition,
the CategoryEncoder was completed. This forms the basis for the addition of
more encoders to be easily added to the project.

What makes this easy is that all (most) of the encoders derive from the
Encoder base class and there are two more encoders already completed that
can be used as a guide to help the enterprising developer create more
encoders.

There are "issues" (tasks) created at:
https://github.com/numenta/htm.java/issues which outline the encoders that
would be nice to add to the project along with some description of what's
required (not much!). By downloading the NuPIC Python code together with
the htm.java project, and comparing the encoders residing in the python
directory: nupic/nupic/encoders with the already completed encoders in the
htm.java project under src/main/java/org/numenta/nupic/encoders; you will
easily see the correlation between the two, and begin to get some idea of
how to create a new one.


Some Tips:

Please keep to the same basic coding style as what's already present there.
In addition, it's usually easiest to develop both the test and the encoder
class at the same time and run the Python version at each step to compare
output. I'm personally not familiar with any other IDE other than Eclipse,
but I know with Eclipse PyDev plugin, both the NuPIC Python code and the
Java code can be run side by side at the same time! You can find
information on the  the Python plugin here: http://pydev.org

If you would like to contribute, please contact:

David Ray
[email protected]

-or-

Matt Taylor
[email protected]

or talk to us both on the public numenta community browser chat site at:
https://gitter.im/numenta/public

Happy Hacking!

David

-- 
*We find it hard to hear what another is saying because of how loudly "who
one is", speaks...*

Reply via email to