[Biophp-dev] Bioinformatics.org's PHP
Dong Gregorio
biophp-dev@bioinformatics.org
Thu, 10 Apr 2003 11:54:55 +0800
>If Greg doesn't mind, I can also upload the sample code he sent me
>somewhere for perusal (or he can do it himself presuming I get
>"adding developers to the project" worked out...)
Yes, I guess we should Greg's advice and have folders for each
developer alongside a shared folder. Later on, we can move to
integrate our works.
>>I, on the other hand, am one of those people who insists on >compiling up from source myself for maximum optimization, and I
>tend to include every "optional" feature that I think I MIGHT use >someday...but then again, I recognize that I am a strange person, >and MOST people don't do that...
Well, I used to do that with my FreeBSD server, and found out
that the more optional features I put in, the harder it was to
maintain the system and keep it secure. Since then, I have
learned NOT to put features that I don't need.
>> Personally, I think (Bio)PHP is better suited for web apps. It
>> suffers from two limitations when it comes to developing (non-web)
>> applications: 1) it falls short in its OO features, 2) it's a lot slower
>> than compiled languages like Java (although there is the
>> Zend PHP compiler, but its steep price is a definite turn off!).
>
>Well, I would tend to counter with "better than WHAT for web apps?",
Better than most of 'em, I'd say! Well, one advantage of PHP over
say Perl is that PHP is a lot easier to learn and the code is a lot
readable. I do not want to start a "religious war" of languages
here, but whoever said that Perl is a write-once language should
be canonized a saint/prophet.
By the way, this is coming from someone who knows Perl too. =)
Database access in PHP is a breeze compared to Java's clumsy
jdbc::yourdatabase::etc URL string, which gave me a lot of
headache. =)
>funcion REALLY did...), but I know Python is supposed to be much more
>strongly Object Oriented. I don't know that this is a MANDATORY >issue, though - after all, a lot of the "famous" tools (e.g. >clustal) seem to be written in plain old C. On the other hand, I >also get the impression that PHP5 will be addressing many of the OO >shortcomings that people complain about.
To cite two examples, PHP4 does not support data protection.
You can get/set class properties without going through any
get/set methods you might have written.
Another limitation is that PHP4 does not support multiple
inheritance. I originally wanted to try a setup where a
Sequence class was a child class of BOTH the NUCLEIC ACID
class and the PROTEIN CLASS, but couldn't do it.
While I am no die-hard OO person (sometimes the OO hierarchy
can get ridiculously complicated like your DOG::ACTIVITY::
SINGING::SONGPARSER::XML or UNIVERSE::MILKY WAY GALAXY::
SOLAR SYSTEM::EARTH::USA::IDAHO::YOURSTREET::YOURDRIVEWAY),
OO has its advantages (code reuse, easier maintenance) and
I look forward to seeing stronger OO features in PHP5.
>It's that specific idea that makes me so intrigued about PHP's >support for access to Java classes, and the possibility of >a "BioJavaPHP" (Doo dah, doo dah) sub-project
Or a BioPerlPHP or a BioPythonPHP perhaps? BioCobolPHP?
>> Oh well, but that's just my opinion.
>How dare you have an opinion!?!? Shame on you! You should only >have the same opinion as everyone else! Oh, wait a minute, this >isn't propietary software. Never mind. :-)
Hahaha... sorry, I thought there was only ONE PHP WAY in Redmond.
>I wouldn't want to have people waiting for an hour while their >browser waits for a BioPHP-based script to do an identification, >multiple alignment, and phylogenetic tree of 50 18S rDNA sequences.
Ah yes, now we go the topic of human-computer interface (just
a fancy term for "how the hell are people gonna use BioPHP?")
Since you and Greg have more bio experience than I do, I would
like to know how bio people would use BioPHP, as you see it.
Perhaps you can come up with a list like this:
1) To search for bio data from a variety of sources using
one interface/web page; (ONLINE)
2) To write custom-made algorithms for sequence alignment,
gene prediction, etc. (OFFLINE)
3) To be a teaching aid/tool for people who want to learn
bioinformatics. (ONLINE/OFFLINE)
Et cetera, et cetera. The list would be a significant input
into the design of BioPHP. How about it guys?
Regards,
Serge
Need a new email address that people can remember
Check out the new EudoraMail at
http://www.eudoramail.com