[BioRuby] Bio-projects comparison
Moses M. Hohman
mmhohman at northwestern.edu
Tue Nov 28 02:51:20 UTC 2006
Hi Alex,
Thanks for your thoughtful reply. Ruby's open class definitions are
certainly helpful. I think you've made me realize (even more) that
I'm not sure what exactly it is I'm proposing. I'll shut up about it
until I've thought about it more thoroughly and have a concrete
suggestion.
I certainly understand the allure of being able to install the
kitchen sink and not worry about the details. I guess I'd say make
that path easy, but allow people to get around it if they want to
(which is what you're saying, too, if I understand you). Anyway, I'll
think about it some more : )
Moses
On Nov 27, 2006, at 5:25 PM, Alex Gutteridge wrote:
>> I should clarify my point: My concern is not about disk space, but
>> rather that I might want to be able to select separately which
>> restriction site library and which sequence manipulation library I
>> wanted to use. With any openbio project currently it's all or
>> nothing, so as a result people are not encouraged to develop a better
>> sequence library, for example (not that I'm complaining specifically
>> about the sequence library, I'm just giving an example). That is,
>> because the sequence manipulation part of bioruby is "already
>> written", no one will write another one. In some ways this is good,
>> because people can just use existing software, but in other ways this
>> slows down the pace of innovation. I would imagine someone could
>> improve on the design of one or two libraries in any of the openbio
>> projects, but people generally don't. It'd be nice to have some kind
>> of way of doing this in bioruby, IMHO, something like plugins in
>> Rails. And, I think this could distinguish bioruby from other openbio
>> projects.
>
> I'm not sure if you're saying there is a psychological barrier to
> writing new/replacement BioRuby libraries, or a technical one.
> Perhaps I am misunderstanding you, but there is nothing stopping
> someone writing a Bio::Sequence (as an example) replacement -
> either as a separate class (e.g. Bio::NewSequence), by resetting
> the whole Bio::Sequence class, or just redefine individual
> Bio::Sequence methods on the fly:
>
> [alexg at powerbook]/Users/alexg(10): irb -r bio
> irb(main):001:0> module Bio; class Sequence; def to_s
> irb(main):002:3> 'foo'
> irb(main):003:3> end; end; end
> => nil
> irb(main):004:0> bar = Bio::Sequence.new('BAR')
> => "BAR"
> irb(main):005:0> bar.to_s
> => "foo"
>
> It can't be made much more plug-in-able than that.
>
> If you're talking about a psychological barrier to writing
> replacement libraries then I'd have to disagree. Anyone with the
> skills to write a new Bio::Sequence class wouldn't/shouldn't be put
> off by the fact that there's already one out there. Allowing people
> to pick and choose modules to download just makes the process more
> complicated for new users. If I've never used BioRuby before, how
> do I know whether to get Bio::Sequence or Bio::NewSequence?
>
> Dr Alex Gutteridge
> Post-Doctoral Researcher
>
> Bioinformatics Center
> Institute for Chemical Research
> Kyoto University
> Gokasho, Uji, Kyoto 611-0011
> Japan
>
>
>
More information about the BioRuby
mailing list