Project Management?
Aug 14

This is my first attempt on Open Science and this diary will store all the ups and downs of the process. InFasta is a software idea I had a couple of years ago, a open-source program that would do whatever you want to a FASTA file (or multiple files).

It started as a C++/wxWidgets package, but time run out of me and I haven’t been able to continue developing it. Now it will resurface as a Python/wxPython cross-platform application, fully open source. This time I will have Keith Hughitt along the way, and we are going to prove (or not) if Python has batteries included.

We already decided some of the functionality but to make this as actual Open Science project, the community input is more than desired. We don’t think we will publish it, but have the intention to create a lightweight cross-platform open-source package that can be useful for at least on researcher out there.

10 Responses to “An Open Science (?) bioinformatics software development”

  1. Ian Says:

    What does "Whatever you want …" mean? In other words, what kinds of things do you want to do to fasta files? ORF identification? Restriction enzymes? Homology searches? Maps? What niche is this trying to fill?

  2. admin Says:

    Hi Ian

    I don’t see a niche to fill. I believe the application could cover as much as possible, from simple manipulations of FASTA files (like merge, split, etc) to advanced stuff such as you mentioned. It might be difficult to implement some features, or maybe would take too long, so we can use already released programs (mainly command line) in order to achieve what we desire.

    I think there is need out there for a open-source application that would do some basic (and advanced) things on sequence files. All available packages are closed source, even though providing some limited features for free.

    The intention of this blog is to gather input from potential users and show our progress along the way. Maybe we would be able to value more the outside input in the development.

  3. Ian Says:

    The BioPython modules (aren’t they open-source?) do much of what you describe already (admittedly with poor documentation). I worry that you are trying to reinvent the wheel, and that your energy would be better spent enhancing (or documenting!) BioPython.

  4. nuin Says:

    Hi Ian

    In a way it will be a reinventation, but one thing that BioPython (as most of the Bio*) is the graphical interface. When I mentioned available packages I was referring to programs like Geneious and CLC Workbench, which are graphical, cross-platform and closed source.

    As I said, if it too demanding to incorporate one feature that is already available the best strategy is to use the one available.

  5. Ian Says:

    Depending on what you’re aiming to do I might be able to contribute. I’m far from an expert but I have some experience with Python/wxPython (see XPlasMap, [MacOSX only, and still beta], which includes some basic handling of FastA as well as GenBank files).

  6. nuin Says:

    I will add you to the group. Welcome aboard.

  7. dalloliogm Says:

    Can I give you some little hints?
    - write some use cases (see wikipedia) for the application;
    - do unit tests of your code as much as you can;
    - re-use biopython modules, which are already tested and documented.

  8. dalloliogm Says:

    Well, ok, can I partecipate also?
    I will help preparing the UML schemas and documentation.

  9. nuin Says:

    Hi Giovanni

    I think I saw your messages on the wxPython list. Thanks for the comment. I understand in part your ideas and I explain why.

    I think use cases are important and it is not implemented a lot in small bioinformatics labs. In our case, it is a “simple” project and the idea is to start the right way and have everything documented. That’s the idea of having a collaboration project and a software to manage the process.

    Regarding unit tests it is something needed for, let’s say, the background part of the project but I don’t see many ways to test the GUI with unit tests.

    The BioPython use or not is a key point here. Do we actually need all the features of BioPython? Or our Fasta procedures are so simple that we need to focus more on the GUI itself? As I mentioned before, we are not going to reinvent the wheel if something much better is out there, but in a way if it simple to implement and allows everyone working in the project to learn one thing or another that would be great.

  10. nuin Says:

    Sorry, I saw your comment after I left the reply. Sure you can come up board. Send me an email with your preferred email address and I will include you in the list.

Leave a Reply