Difference between revisions of "Computing"
From Jtkwiki
Jump to navigationJump to searchLine 17: | Line 17: | ||
* Identification and description must be kept separate. | * Identification and description must be kept separate. | ||
** Primary keys should be generated where reasonably possible. | ** Primary keys should be generated where reasonably possible. | ||
+ | |||
+ | |||
+ | == Software == | ||
+ | |||
+ | An incomplete list of software that I use. | ||
+ | |||
+ | * The [http://www.r-project.org/ R] statistical computing language and system | ||
+ | * [http://www.python.org/ Python], a scripting language with a very decent level of support for object oriented programming | ||
+ | * The editors [http://www.gnu.org/software/emacs/ emacs] for larger edits, and vi for smaller edits (yes, I use both) | ||
+ | * [http://java.sun.com/ Java] | ||
+ | * [http://www.postgresql.org/ PostgreSQL], a free SQL database management system | ||
+ | * the [http://www.cmp.uea.ac.uk/~jtk/transsys/ transsys] simulator for regulatory gene networks (which I've written myself) | ||
+ | |||
+ | * |
Revision as of 07:23, 16 July 2008
Contents
Programming Principles
General
- Keep code and data strictly separate.
- Be aware of whether your programming creates executable content.
- When using random number generators, seed them explicitly to keep your results reproducible.
Debugging
- Computers are deterministic machines. All bugs can be reproduced.
Object Oriented Programming
- An instance in a computing process must represent exactly one instance in the modelling domain.
- Use random number generator objects where possible.
Databases
- Identification and description must be kept separate.
- Primary keys should be generated where reasonably possible.
Software
An incomplete list of software that I use.
- The R statistical computing language and system
- Python, a scripting language with a very decent level of support for object oriented programming
- The editors emacs for larger edits, and vi for smaller edits (yes, I use both)
- Java
- PostgreSQL, a free SQL database management system
- the transsys simulator for regulatory gene networks (which I've written myself)