BIRCH/Developer resources

From Bioinformatics.Org Wiki

< BIRCH(Redirected from Agile Birch Development)
Jump to: navigation, search



This page will discuss the development paradigms and development background with respect to BIRCH. It is intended to act as a log of major development ideas, as well as an introduction to new BIRCH developers.

The History of BIRCH

BIRCH, an acronym for Bio-Informatics Research Command Hierarchy started off in the command line, terminal days of computing. It was originally a set of command-line tools that were organized into a folder (forming the "BIRCH"). It was the brainchild of bio-informatics researcher and software developer Brian Fristensky.

As it is often required to send output from one program into another, and to set a number of parameters for these various programs, a set of c-shell scripts were written to form these data pipelines, and some-what automate the process.

As BIRCH progressed into its graphical stage, GDE (Genetic Development Environment) was used to automate the creation of a C-based GUI from a set of menu files, specifying things like what commands should be run and how the parameters should be input graphically.

As GDE began to deprecate, and platform dependence became a concern, a java implementation of GDE was created largely by Graham Alvare called bioLegato. In the summer of 2010, GDE was fully deprecated and work began on a new menu language for bioLegato to allow for further expansion.

The future of BIRCH

This is an abstract topic, an area to throw up new ideas and spark debate and hopefully intrigue.

Developers and users alike should post their ideas here, to keep everyone's views of BIRCH in focus.

BIRCH/Developer resources/Dale's Ideas

BIRCH/Developer resources/Graham's ideas

Developer resources

Version control


Mandatory reading for BIRCH developers:

Git Reading material, in order of priority

Git referencce material:

Troublesheeting/ FAQ

Getting used to Unix

Unix has an intricate permission and group ownership. By default all files created will have fairly locked down permissions. Please change this by adding the following line to your .bash_profile and/or your .profile file:

umask 0002

Also, if you are doing work on the psgendb account, please add the following line to change your default group from student to psgendb:

newgrp psgendb

After making these changes, all files should be created with 664 permissions, and should be accessible to the "psgendb" group.

BIRCH/Developer resources/IST Unix&Linux resources

Python Development

Java Development

This author has been primarily doing python development, someone else should write this section!


Linux: I recommend using "gtk-recordmydesktop" for screencasting on linux. Note however that this outputs an OGV (ogg-vorbis/theora) file, where most applications demand an AVI.

To convert an ogg to an avi, I recommend mencoder:

mencoder /path/to/the/source/ogv/file.ogv -o /path/to/the/avi/output/file.avi -ovc lavc -oac pcm

Tutorials and documentation

Personal tools
wiki navigation