Easy BLAST tool - SequenceServer
Contributing to open source is quite an exciting journey. I embarked upon this mission recently with few contributions to SequenceServer - A BLAST tool, which lets you set up custom BLAST+ server to perform BLAST queries with your own database locally through a web interface. For those who are not familiar with BLAST or Basic Local Search Alignment Tool [paper] - it is an algorithm which allows quick comparison of biological sequence information which are long strings consisting of amino acids (in case of proteins) or nucleotides (in case of nucleic acids). It is exceedingly used by biologists all over the world to study newer organisms, discovery of genes and finding similarity between proteins and so on. One can see a working instance of the tool at Ant Genomes website, maintained by one of the developers and Professor at Queen Mary University London, Yannick Wurm. He's also the overseerer of the project.
The program has already completed its major part of development and its stable version is readily available for use. However, there were many issues or feature requests that were pending and can be worked upon. I got in touch with the maintainers and submitted three pull requests for small few bugs and a feature. It was not a big task but I was quite motivated with this small experience of working with the community, engaging with the developers and obviously working with git. Also, since the tool is written in Ruby, I had to spend some time brushing up the concepts of Ruby and understanding the code structure, and methodologies followed for the development. Ruby is a concise and appealing language which is not very tough to understand once you are in with the flow. Anyway, I plan to continue my contribution to sequenceserver for quite some time and also encourage you to take a look if you are even just a little bit of Biology enthusiast.
I will talk more about BLAST algorithm in general in my next post.
[paper] | : http://www.blastalgorithm.com/ |