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...*
