[BioRuby] BioRuby Wrapper for Command line application (GSOC 2011)

Алесь ales.guzik at gmail.com
Thu Apr 7 16:24:45 UTC 2011


Sorry for this dellay. I just wanted to polish timeline and better
understand for myself how will I undertake this project.

** Timeline

* getting in (4 weeks) 27 apr - 24 may

 - getting familiar with BioRuby project (2-3 weeks)
    - getting into bioinformatics basics (at least 1 week)
    - getting into project goals and project usage (1 week)
       - reading articles about BioRuby
       - reading usage documentation
       - checking out usage examples
    - getting into source codebase (1 week)
       - reading source code documentation (4 days)
       - looking through source code (2 days)
       - defining coding guidelines (1 evening)
    - getting into comunity (in parallel with above)
       - reading mailing list archive (2-3 days)
       - hanging up on IRC (all the time)

 - getting familiar with problem (1-2 weeks)
    - finding examples of applications that will be used with this wrapper
    - getting familiar with EMBOSS and ACD configuration files
    - exploring ways to define wrapper configuration

* coding-1 (7 weeks) 25 may - 11 july
 - writing specs (4 weeks)
    - defining complete API/DSL for end-users (1 week)
    - defining interface for adding new CLI tools and EMBOSS suites. (1 week)
    - defining additional specs (1 week)
 - writing code (3 weeks)
    - writing code for API generation (1 week)
    - writing code for interprocess communication and data passing (1-2 week)
   0-1 additional week to have for finishing all this stuff.

* mid-term evaluation (5 days) 11 july - 15 july
  At this moment we have complete API/DSL specs and code wich allows
us wrapping CLI applications.

* coding 2 (4 weeks) 17 july - 16 aug
 - writing ACD file parser (1-2 weeks)
 - writing automatic wrapper generation based on ACD files (2-3 weeks)

* documentation and refactoring (1 week) 16 aug - 21 aug

* final evaluation


On Thu, Apr 7, 2011 at 5:33 PM, Francesco Strozzi
<francesco.strozzi at gmail.com> wrote:
> Hi Ales,
> did you had the chance to update your proposal on BioRuby Wrapper for the
> GSoC ? Deadline is tomorrow for student application and we think with this
> proposal we could be able to get some interesting results. But for your
> application to have a better chance to be considered and evaluated you
> should provide an updated timeline (even a draft but a bit more detailed)
> with the activities and tasks broken down into weeks.
> If you need some help or advise please write here on the Maling List and we
> will provide our contributions.
> Cheers
> Francesco
>
> On Wed, Apr 6, 2011 at 11:48, Raoul Bonnal <bonnal at ingm.org> wrote:
>>
>> Hello Ales,
>>  thank you for submitting your proposal,
>> like Michal:
>> I quote here the discussion with Chris and Christian, if you could write a
>> better time line in form of days/weeks with tasks/objectives I think it
>> would be better:
>>
>> this is the quote from Christian and Chris
>>
>> Hi, Michal:
>>
>> I think your project plan needs to be much more detailed.
>>
>> It might be best in a format similar to the template/example below:
>>
>> Prior to coding ("community bonding period"):
>> -Familiarize myself with BioRuby code base
>> -Learn about graphics within/from Ruby
>> -Discuss ... with mentors/BioRuby community
>> -...
>> -Learn about git, set up my repository
>>
>>
>>
>> Week 1:
>> Goal: Develop necessary utility classes for ...
>> Anticipated problems: None
>>
>> Weeks 2 and 3:
>> Goal: Develop class to visualize intron/exon structures...
>> Anticipated problems: Such and such might not ...
>> Alternatives: If XYZ turns out not feasible, I plan to ... instead
>>
>> Week X:
>> Goal: Unit tests for ...
>>
>>
>>
>> Week Y:
>> Documentation ...
>>
>> Hope this helps,
>>
>> Christian Zmasek
>> ----
>> Michał,
>>
>> In general, the proposal should answer the questions below, but should
>> also have a rough timeline on how you would go about coding the project,
>> creating deliverables for the community for testing, etc. This should come
>> with the input of your possible mentor for the project or from others in the
>> bioruby community.
>>
>> The timeline is a little problematic, but the OBF mentors can further
>> discuss that.  One thing that will cause a problem is that there is a
>> significant amount of time (about one month) for community bonding, so any
>> coding on a significant project in that period will be tricky.
>>
>> chris
>>
>>
>>
>> ----- Original Message ----
>> > From: Michał Koziarski <michalkoziarski at gmail.com>
>> > To: bioruby at lists.open-bio.org
>> > Sent: Tue, April 5, 2011 10:24:22 AM
>> > Subject: [BioRuby] GSoC - project "Represent bio-objects and related
>> > information with images"
>> >
>> > I've completed my application. Chris Fields suggested that I should
>> > write  it
>> > up, he hasn't specified what parts exactly though. If you have any
>> >  advice
>> > about it, please let me know.
>> >
>> > I use some of my answers to  questions asked here in the application, I
>> > hope
>> > that's not a problem: I  didn't see much point in rewriting it, since
>> > the
>> > meaning would be the  same.
>> >
>> > I don't include the first point, about the address, since it's a  public
>> > ML
>> > and I don't think it's important here.
>> >
>> > I am basing the  application on the OBF's template, which I enclose too.
>> >
>> >
>> >   1.  Why you are interested in the project you are proposing and are
>> >    well-suited to undertake it.
>> >   2. A summary of your programming  experience and skills.
>> >   3. Programs or projects you have previously  authored or contributed
>> > to,
>> >   in particular those available as  open-source, including, if
>> > applicable,
>> any
>> >   past Summer of Code  involvement.
>> >   4. A project plan for the project you are proposing,  even if your
>> >   proposed project is directly based on one of the  proposed project
>> > ideas
>> for
>> >   member projects.
>> >   5. Any  obligations, vacations, or plans for the summer that may
>> > require
>> >    scheduling during the GSoC work period.
>> >
>> >
>> >
>> >   1.       I find the problem of representing computer data in format
>> >    readable by humans interesting, partially because it's so
>> > significant:  we
>> >   could have the best algorithms, the fastest computers, but the  output
>> would
>> >   be useless if we wouldn't be able to read it.  Additionally, I love
>> > the
>> idea
>> >   of writing code for organisation such  as OBF: it makes me think that
>> > I do
>> >   have, even slightest, impact on  science. I must also admit that
>> > working
>> > with
>> >   Ruby is very tempting, I  really enjoy writing Ruby code.
>> >   2.      I have fairly  strong Ruby knowledge, I have been using it for
>> >   about a year and a  half. There were no really big projects there
>> > though,
>> > the
>> >   biggest  I've got was probably small LAN IM. Nevertheless, I use Ruby
>> > on
>> >   daily  basis and I am familiar with most of its, even complex,
>> > features.
>> >         Also, from the beginning of this year I work as a RoR
>> >  developer.
>> >   I've worked on a bigger, team project and now I am  developing one
>> > solo.
>> > I've
>> >   learned a lot here: working with version  control systems, developing
>> > in
>> >   team, operating on other people's  code, testing... not to mention
>> > further
>> >   developing my Ruby  knowledge.
>> >        Other than that, I know C++ pretty  well: it was my first
>> > language
>> >   and I still use it whenever I see fit.  I also have some basic Python
>> > and
>> C#
>> >   knowledge.
>> >   3. I can't  say much more than what I've written in previous
>> > paragraph.
>> >   4. 1.  Getting familiarized with BioRuby objects, mainly with the way
>> > they
>> >    hold data.
>> >   2. Deciding with features should be visualized.
>> >    3. In case of presence data with different format but same way of
>> >    visualization, implementing a mechanism converting data to unified
>> format.
>> >   4. Writing a module responsible for creating graphical  representation
>> > of
>> >   data.
>> >   5. Final testing.
>> >   6.  Writing a documentation.
>> >   5.      Possibly short  vacation (less than one week) around beginning
>> > of
>> >   July.
>> >         Also, I am from Poland, which means that my summer  vacations
>> > starts
>> >   from July. Because of that I won't be able to focus  only on the
>> > project
>> >   until than. What I can do, however, is to start  coding earlier. I
>> > would
>> > like
>> >   to familiarize myself with documentation  before bonding period starts
>> (I've
>> >   already began to do it), and when  it does start coding right away.
>> > Thanks
>> > to
>> >   that I should have just as  much time as if I started in May.
>> >        Other than that  I am all about the project.
>> >
>> >
>> > Also, since as I've told I would probably  have to start coding a little
>> > earlier, I am trying to slowly browse the  documentation. It's a big
>> > project
>> > though, and I don't know what's important.  Do you have any suggestions
>> > about
>> > that? Are there parts that would be  especially relevant to the project?
>> > Or
>> > maybe even better, are there any  easier tasks to complete? I learn best
>> > by
>> > exercise, so that would be great.  I've looked up at github's issues
>> > page,
>> > but haven't found anything like what  I am talking about. Maybe I just
>> > didn't
>> > know on what I was  looking?
>> > _______________________________________________
>> > BioRuby Project -  http://www.bioruby.org/
>> > BioRuby mailing list
>> > BioRuby at lists.open-bio.org
>> > http://lists.open-bio.org/mailman/listinfo/bioruby
>> >
>>
>> _______________________________________________
>> BioRuby Project - http://www.bioruby.org/
>> BioRuby mailing list
>> BioRuby at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioruby
>>
>> On 06/apr/2011, at 11.27, Алесь wrote:
>>
>> > Hello. My name is Ales and I'd like to implement BioRuby wrapper for
>> > command line applications as my Google Summer of Code 2011 project.
>> >
>> >
>> > 1. Your complete contact information, including full name, physical
>> > address, preferred email address, and telephone number, plus other
>> > pertinent contact information such as IRC handles, etc.
>> >
>> > Ales Guzik
>> > 4th year student at Belarusian State University of Informatics and
>> > Radioelectronics.
>> > Belarus, Minsk, P.Brovki st. 3-1 46
>> > ales.guzik at gmail.com
>> > +375 25 902 8190 (Belarus)
>> > +1 650 336 5853 (Google Voice)
>> > skype: ales-guzik
>> > IRC, twitter, facebook, github etc.: nekotwi
>> >
>> > 2. Why you are interested in the project you are proposing and are
>> > well-suited to undertake it.
>> >
>> > This project is interesting for me because it requires metaprogramming
>> > - thing I most like in ruby and
>> > because it's BioRuby - project I wanted to get familiar with long time
>> > ago.
>> > I use Ruby more than 2 years for most of my university tasks and daily
>> > linux scripting. 2 month ago I
>> > started working as Ruby on Rails developer. I have pretty good
>> > experience in ruby metaprogramming which
>> > is needed for this project.
>> >
>> > 3. A summary of your programming experience and skills.
>> >
>> > I have well experience in C, know but not heavily used C++ and Qt,
>> > long time ago learned some Erlang,
>> > have coded some C# at university but dislike it, played a bit with
>> > Android/Java programming.
>> > Know and sometimes use Scheme(Racket), now learning some Perl 5.
>> > Started learning Ruby somewhere in the beginning of 2nd university
>> > year and liked it very much.
>> >
>> > 4. Programs or projects you have previously authored or contributed
>> > to, in particular those available as open-source, including, if
>> > applicable, any past Summer of Code involvement.
>> >
>> > I haven't yet contributed to opensource projects (except for some tiny
>> > projects by myself) but really want to.
>> >
>> > 5. A project plan for the project you are proposing, even if your
>> > proposed project is directly based on one of the proposed project
>> > ideas for member projects.
>> >
>> >  1) Get familiar with source code, use cases and documentation of
>> > BioRuby and BioRuby-ngs
>> >  2) Define specs and write rspec tests for this CLI application wrapper
>> >  3) Code to make all tests pass
>> >  4) Optimize code for processing BIG ammounts of information
>> >  5) Refactor
>> >  6) Document undocumented parts
>> >
>> > 6. Any obligations, vacations, or plans for the summer that may
>> > require scheduling during the GSoC work period.
>> >
>> > I work as rails programmer 30 hours a week. It's like 8:00 - 14:00
>> > GMT+2 DST monday - friday, so I can code for
>> > my project 14:30 - 22:00 or even more. It will be like this in june and
>> > august.
>> > In july I'll be at military training. I'll have time and internet
>> > access but can't tell my schedule for now.
>> >
>> > --
>> > Regards,
>> > Ales Guzik
>> > ------------------------------------------------------------
>> > e-mail: ales.guzik at gmail.com
>> > skype: ales-guzik
>> > tel: +375 25 9028190
>> > _______________________________________________
>> > BioRuby Project - http://www.bioruby.org/
>> > BioRuby mailing list
>> > BioRuby at lists.open-bio.org
>> > http://lists.open-bio.org/mailman/listinfo/bioruby
>>
>> --
>> Ra
>>
>> linkedin: http://it.linkedin.com/in/raoulbonnal
>> twitter: http://twitter.com/ilpuccio
>> skype: ilpuccio
>> irc.freenode.net: Helius
>> github: https://github.com/helios
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> BioRuby Project - http://www.bioruby.org/
>> BioRuby mailing list
>> BioRuby at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioruby
>
>
>
> --
>
> Francesco
>
>



-- 
Regards,
Ales Guzik
------------------------------------------------------------
e-mail: ales.guzik at gmail.com
skype: ales-guzik
tel: +375 25 9028190




More information about the BioRuby mailing list