Programming Contributions
Are you a Java or C# programmer? Would you like to contribute some time to the Encog project? We are always looking for volunteers, and at all skill levels. You do need to be proficient with Java or C#, but you by no means need to be an AI expert. We are, of course, glad to have AI experts help! But we usually have tasks available that do not require advanced knowledge of AI.
Suggesting New Features
Is there a new feature that you would like to see added to Encog? If you think you might be able to program it yourself, let us know! If it fits in the general direction for Encog we will work with you to get it added to Encog. If there is a feature you want added, but are not interested in working on, please post it to the forums as a suggestion. Frequency of requests often drives the direction of the next Encog release.
New Encog Versions - AI Tasks
The AI portion of Encog is always expanding and adding new features. We are particularly interested in adding new neural network architectures. If you are knowledgeable of AI and mathematics this may be the project for you. Knowledge of Java or C# programming is needed as well.
New Encog Versions - Bot Tasks
The bot portion of Encog allows information to be harvested from HTML documents, and the Internet. If you have knowledge of HTML and Network programming, as well as a good background in C# or Java, this may be the project for you.
New Encog Versions - Natural Language Processing Tasks
Natural language processing is a new feature of Encog. It will draw upon Encog's existing neural network and bot infrastructure. We don't have many projects in this area at this point, as the foundation is still being put together. But if you are interested in this area consider helping with the AI or Bot section, and check back, as this area will be opening up at some point.
New Encog Versions - Infrastructure Tasks
Are you interested in learning about AI, but have not yet gained any significant AI/Neural Network/Bot programming experience? If you are a skilled Java or C# programmer you can help with infrastructure related projects on Encog. This includes the considerable infrastructure code that is used in Encog, but not as mathematically intense or complex as some of the more advanced ares of Encog. This can be a great way to learn more about AI programming and will help you build AI experience that might be useful towards working on the AI related areas of Encog.
Unit Tests
Another area of Encog that does not require as much advanced AI knowledge is unit test creation. With multiple contributors and varying skill sets and experience with Encog, unit tests are absolutely critical. Unit tests allow us to instantly check and see how well Encog is working. This allows us to guard against regression errors as new features are introduced. To create unit tests you should have a good understanding of Java or C#.
C# or Java Translation
Do you know Java or C# well enough to translate from one language to the other. Encog simultaniously releases versions in both C# and Java. New features can come from either the Java or C# side. At this time most new features appear on the Java side first, so we generally have more need for Java code to be translated to C#. We do not just do a simple translation. We try to make the code appear as much like C# or Java code as possible. This involves correct capitalization schemes, using properties, and other unique features of either Java or C#.
Donating Existing Working Encog Compatible Code
Have you created a new class that works with Encog. Perhaps a new training method or layer type? Consider donating it to the Encog project. Even if it needs some polish to be used in the formal Encog project, we are willing to work with you to get it included, if it meets with the overall direction of Encog.
Examples
Encog could always use more examples of how to use its many features. If you know Encog and C# or Java well enough to write an example this could be an interesting project for you.
Bug Fixing
Bugs are always a part of Encog. We try to minimize them as much as possible. However, once a bug is reported it is important to isolate and fix this bug. Bug fixing sometimes requires advanced AI knowledge, depending on the area that the bug was found in. Some bugs are in the Encog workbench or other infrastructure code.




Comments
Future of Library
I think Encog would benefit from running as a WF project (http://msdn.microsoft.com/en-us/library/ee342461.aspx). I am currently researching how the library runs, and hopefully I will contribute in the future.