Developer Manual
Home
News
Tutorials
User Manual
Reference Manual
Developer Manual
Downloads
Forums
Team Members
Future Work
FAQ
Links

This manual gives guidelines for developers working on the source code for the Topographica simulator. Users will not usually need to refer to this material, unless they plan to submit significant blocks of code to the project (which is, of course, strongly encouraged!).

By default, all the text in this manual refers to program code written in the Python language. There are also some bits of C/C++ code in the simulator, which use different conventions.

General guidelines
General info on writing Python, plus Topographica-specific conventions such as guidelines for naming, comments, documentation, parameters, units, and external imports.

Object-oriented design
How to design well-structured code

Importing files and packages
How to import Topographica and external code

ALERTs
How to flag incorrect or confusing code or documentation

GUI programming
How to add functionality to the GUI

Optimization
When (and when not!) to optimize for performance, and how to do it

Revision control
How we keep track of changes to the code and other files

Refactoring/testing tips
Tips for improving existing code by refactoring

Test suite
Rationale behind unit tests; should eventually include information about how to set up tests

Releases
How to make a new public release of Topographica

Joining
Anyone interested in Topographica is welcome to join as a Topographica developer to get read/write access, so that your changes can become part of the main distribution. Just sign up for a free account at SourceForge.net, then email Jim your username and what you want to do, and he'll tell you how to proceed from there.

Hosted by: SourceForge Logo James A. Bednar (jbednar@inf.ed.ac.uk) Last update: Thu Feb 21 15:17:02 UTC 2008.