Scientist Solutions: Life Science Discussions
 Refer a Friend    Link To Us    Bookmark Us       

      
 » Home » Bioinformatics » Software Developers » What is your programming language of choice, and why?

Other Topics
11/21/2008 09:32 PM
Ullman algorithm
11/21/2008 09:03 PM
protein structure alignme ...
11/21/2008 09:12 PM
computes molecular superp ...
11/21/2008 09:50 PM
computes molecular superp ...
11/21/2008 09:08 PM
computes molecular superp ...
11/20/2008 04:54 PM
Most suitable docking too ...
11/20/2008 04:13 PM
Most suitable computer la ...
11/18/2008 01:26 AM
AutoDock
11/17/2008 02:35 PM
free softwares
11/17/2008 11:06 AM
SAS Programing
9/9/2008 12:51 PM
What is the most common b ...
9/2/2008 08:27 PM
how to find a motif, whic ...
8/24/2008 12:16 PM
How to start? (PDB Viewer ...
8/4/2008 11:04 PM
Transcription Factor moti ...
11/15/2007 03:40 PM
Sequence Search Solution
9/3/2007 08:27 PM
Bioinformatic Software De ...
9/3/2007 08:44 PM
Database Poll
3/26/2007 08:47 PM
Scibuntu (ubuntu linux di ...
3/14/2007 03:28 PM
Transcription Factor moti ...
2/14/2007 06:23 AM
Bioinformaticians looking ...
8/9/2006 09:39 PM
extremely fast Smith-wate ...
4/20/2006 02:38 PM
Database Poll, What DBMS ...
4/19/2006 01:19 PM
Inference engine for comp ...
2/22/2006 10:56 PM
about the coupling of GPC ...
12/7/2005 01:37 PM
Software Development
6/21/2005 03:27 PM
Error in using SeqIOTools
6/14/2005 04:13 PM
PERL
1/13/2005 10:32 PM
HT-GO-FAT
Subscribet to topic
Add Reply  Add New Topic  Add New Poll
bottom of page RSS Feed 

Topic Feed

 

What is your programming language of choice, and why?

 [View Printable]
ryan_m

Frog Laureate

See
Similar
Scientists





Group: Moderators
Posts: 279
Joined: May 06, 2006







 Go to homepage of ryan_m Send a personal messsage to ryan_m Reply with a quote from this post Go to the top of the page

Mine? Perl. And the reasoning is mainly that it is fast to develop in and it seems to allow access to the most pre-written bioinformatics code (BioPerl, EnsEMBL API). I know some of the more computationally-oriented people out there probably use C/C++ or Java. I have also spoken with some people who are now switching from Perl to Python. Does anyone want to comment on this?

.........................

 Posted May 28, 2006, 16:21 PM
bgood

Frog Laureate

See
Similar
Scientists





Group: Moderators
Posts: 154
Joined: Apr 12, 2006







 Go to homepage of bgood Send a personal messsage to bgood Reply with a quote from this post Go to the top of the page

I think people too often get religous about this particular discussion - myself included.. To decide what language to use, you should evaluate the strengths and weaknesses of the language in relationship to your understanding of the language and the task at hand..

That being said, the sheer amount of publicly available libraries, source code, and APIs that are available for Java make it really hard to advocate another language. The only ~good argument I've heard against it is in the case that you need to absolutely maximize the efficiency of the applications that you write, in which case people still manage to get the best performance out of pure C. In personal experience, these problems are rare - and usually are quite easily solved with additional cheap hardware.

I've never really understood the argument that Perl is somehow easier than Java.. Its just as easy to get a simple unsharable, one off file parser written in Java as it is in Perl - (it will just be longer and much more understandable). And of course, if you ever want to get to the point where you either share your code with another pary or actually produce an application for a non-programmer user, I don't think a better solution exists than Java.

The anti-Perl sentiment here is the legacy of my first three years experience in bioinformatics.. - much of which was spent attempting to get other people's perl hacks to run .. This left me with a bitter feeling that there must be a better way.

Java is better.

BUT, web services are better than Java, because they let you write in whatever language you wish but still interoperate seamlessly with other code written in whatever language the authors like. High time for a service oriented architecture to penetrate into bioinformatics.. See the
BioMOBY and Taverna projects for active work in this area of bioinformatics.




.........................

Posted May 28, 2006, 21:18 PM
jonatmudd

Frog Laureate

See
Similar
Scientists





Group: Member
Posts: 28
Joined: Oct 07, 2005







 Send a personal messsage to jonatmudd Reply with a quote from this post Go to the top of the page

i am a matlab junkie myself.

i know it is sometimes slow and clunky (and expensive!), but it is a small price to pay to use all of its wonderful features.

coding can be done super quickly and handle large data sets.

of course C++ is faster, cheaper, but developing and debugging code is sometimes not worth the hassle for me.
plus, when it comes to graphics, matlab is king for ease of use

.........................

Posted Mar 20, 2007, 21:52 PM
LabGeek

Frog Egg

See
Similar
Scientists





Group: Member
Posts: 3
Joined: Sep 21, 2007







 Send a personal messsage to LabGeek Reply with a quote from this post Go to the top of the page

I have been coding as a hobby for nearly thirty years now; started out in Basic, moved to C, C for Windows, then VC++ about 12 years ago. For most Win apps I believe MFC/VC is the way to go, and is my personal favourite. As someone mentioned, programming languages tend to have 'fanatical' devotees at times, similar to the PC/Mac debates.

In the end, all that matters is the result. None of my customers have ever asked me what language I used to code their app!

.........................

Posted Dec 11, 2007, 14:17 PM
ryan_m

Frog Laureate

See
Similar
Scientists





Group: Moderators
Posts: 279
Joined: May 06, 2006







 Go to homepage of ryan_m Send a personal messsage to ryan_m Reply with a quote from this post Go to the top of the page

Here is an article outlining the strengths and weaknesses of Perl and hence, where it should and should probably not be applied. It is not bioinformatics-centric but it definitely applies in this field. There are certainly many bioinfo tasks that are accomplished with perl but where another language would definitely be better suited.

Ryan

.........................

Posted Jan 26, 2008, 20:10 PM
bgood

Frog Laureate

See
Similar
Scientists





Group: Moderators
Posts: 154
Joined: Apr 12, 2006







 Go to homepage of bgood Send a personal messsage to bgood Reply with a quote from this post Go to the top of the page

Here is an article that compares 6 different languages (Perl, Python, C, C++, C#, and Java) on performance on typical bioinformatics tasks such as executing a BLAST search.

http://www.biomedcentral.com/1471-2105/9/82/abstract

Unsurprising results: "Implementations in C and C++ were fastest and used the least memory. Programs in these languages generally contained more lines of code. Java and C# appeared to be a compromise between the flexibility of Perl and Python and the fast performance of C and C++."

Unsurprising conclusion: ".. a developer should choose an appropriate language carefully, taking into account the performance expected and the library availability for each language"

Wow.. Perl is ~really slow for global alignment (using their code, environment etc.)



More data here

http://www.bioinformatics.org/benchmark/results.html

.........................

Posted Feb 12, 2008, 16:20 PM
wenjun

Frog Egg

See
Similar
Scientists



View Blogs


Group: Admin
Posts: 3
Joined: Aug 10, 2007







 Go to homepage of wenjun Send a personal messsage to wenjun Reply with a quote from this post Go to the top of the page

Perl has been invented for many years. It's scripting language. No need to compile as long as the server has setup, you can change and run. Since it has so many years, there are a lot of programming code samples out there for free to use.

To me, I don't like scripting language. I won't use it unless I have to or for other reasons. It's not productive and hard to debug. But I'm sure there are many benefits with them. Today, to be a software developer, understand a solid pure language is a must. Scripting languages are plus. For many cases, if you know C++ very well, you can pretty much stick with it. But for a web developer, you need more and more and have to catch up all the time. Anything related to web, it changes so fast. As a web developer, depends on the projects, you need to know web sever language, JavaScript, CSS, HTML, database, XML, SSL, AJAX, web services and more. If you ever want to become a good web developer, make sure you know all of them.

I'm pretty much a web developer, but I enjoy it. I agree Ben's thought for web services. It's the best way to allow retrieving information across different platforms. The only bottle neck is the internet speed. The speed has restricted large data transferring and performance of the web services. Currently it's best for process at background. If someday the internet speed wouldn't be an issue, I believe the web services will be used a LOT!

.........................

Posted Jul 09, 2008, 19:03 PM
top of page Add Reply  Add New Topic  Add New Poll

Forum Jump