[Biodevelopers] Welcome, and starting things off ...

Joe Landman landman at scientificappliance.com
Fri Apr 12 15:52:34 EDT 2002


Thanks for joining this discussion list.  As the introductory message
implies, this group is meant to be an open forum for discussing all
topics relating to development issues for those engaged in
bioinformatics and related efforts.

I personally use a very broad definition of bioinformatics, as an
all-encompassing study of the information content of living systems, and
how the life processes make use of the information.  This means in my
mind that we are looking at classical genomics (primary structure),
computational chemistry (secondary structure, SAR, etc), computational
biophysics, and many other topics.  Even if this definition of
bioinformatics doesnt necessarily match with yours, please feel free to
contribute your thoughts and comments.

In order to try to jumpstart a discussion, I would like to talk briefly
about some of the work I am currently doing.  

My work as of late has been in designing and building scalable computing
systems (software and hardware).  I have been using SOAP and XML as well
as object oriented Perl.  Some of the issues I am running into on the
development side involve creating persistent objects to temporarily
store complex data structures on my server.  Basically the type of thing
that I would like to do is to take either a hash or an XML document such
as follows:

    <?xml version="1.0"?>
    <compute_server>
      <server>
       <host>localhost</host>
       <port>6931</port>
       <listen>10</listen>
       <protocol>http</protocol>
      </server>
     </compute_server>
     <database>
      <host>bio0</host>
      <name>jobdb</name>
      <table>rundb</table>  
     </database>
    </config>

and have this persistent across calls.  There are several "easy" ways to
do this.  One method is to "serialize" this data structure, and to store
the serialized verision.  Many "XML databases" do exactly that.  What
would be nice is to have a simple set of (Perl or Perl callable) methods
to trivially store and retrieve this structure or elements of this
structure.  I have written a wrapper above the Perl DBI to make it very
OO looking/acting, and maybe this is the route I need to take.  If
anyone has done anything related to this, I would like to hear about it.

As indicated, I am using SOAP, and the SOAP::Lite module in Perl.  This
makes building "web visible" services quite simple.  Of course, nothing
is without cost.  What I have found is that after calling a SOAP new
method to instantiate the object, I cannot use the traditional Perl OO
methods to decorate the object with attributes, that is mutators and
accessors:

    #
    # mutator
    #
    sub set_thingy
        {
    	my ($self,$thingy) = @_;
    	return $self->{'thingy'} = $thingy ;	   
        } 
    
    #
    # accessor
    #
    sub get_thingy
        {
    	my ($self) = @_;
    	if (exists($self->{'thingy'}))
    	   {
    		return $self->{'thingy'};
    	   }
    	  else
    	   {
    		return undef;
    	   }
        }

does not work anymore (works great outside of SOAP::Lite).  This is a
little bothersome, as I use these types of accessors/mutators all the
time.  Hence my need for a persistent object storage on the remote host.

On an unrelated note, I am curious as to what analysis techniques people
are using for proteomic data.  At this stage, I have seen image
processing work, various bits of data mining and regression tests, etc. 
It of course is highly dependent upon the processes being studied.  My
interests are specifically in those analyses which are computationally
demanding.

Thanks, and once again, welcome to the group!





More information about the Biodevelopers mailing list