Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

17 years later, Perl still seems to be the go-to tool in bioinformatics.


In my personal experience, I see no new Perl scripts these days. Python has completely replaced Perl for new code.


If you say something like this you also need to quantify your personal experience. Does it consist of a 3 person department? Or one school with a pretty big bio informatics department? Or do you contract out to many different schools?

In my experience as a global contractor, there are at least big players who use Perl exclusively, and in Perl irc channels i see bio informatics people very regularly.


I would hope that any one person's "personal experience" is not taken so seriously that it needs to be quantified.

UCSC has switched from teaching Perl to teach Python in intro bioinformatics classes (they get 5-10 new PhD students a year, plus at least that many masters students, I think?). Nobody that I encountered at my postdoc institution used Perl, maybe about 60 people who programmed, and I knew enough of ~20 people's habits to know their programming choices. R, Python, and C/C++ were commonplace, with a few weirdos using Ruby, and of course lots of shell, awk, and sed glue to keep it all together. The Broad has been somewhat successful on shoving Java into people's pipelines with GATK and Picard, but it's not a welcome addition to many people's habits, and I haven't encountered any significantly used project around next gen sequencing that is based in Perl. For example, in the RNA world, all the common tools like Tophat, Mapsplice, and ChimeraScan all use Python in ways that Perl would have been used 10-15 years ago.

I have active collaborations with about five different labs that also have in-house informatics for everything from microarrays, to ChIP-Seq, to RNA-seq, exome to whole-genome resequencing, and nobody uses Perl for any of it.

That said, it's really easy to collaborate with lots of informatics people and never even need to know what they use internally. What's this about contracting in bioinformatics? I've never encountered such a thing.


It seems the main difference here is that you're mainly talking to people in the USA, while i talk mainly to people in Europe.

As for contracting: Oftentimes bioinformatics people will realize that they're not good programmers at all and call in people to help make their code less of a rat's nest and learn from them at the same time. It happens quite often here in Europe.


One point of evidence can be the BioPerl and BioPython communities. On github there are currently 111 stars and 57 forks for BioPerl while there are 350 stars and 179 forks for BioPython.

BioPerl: https://github.com/bioperl/bioperl-live

BioPython: https://github.com/biopython/biopython


Fair point. I do suspect that this is in part due to a difference in user demographics.

People using BioPerl just use it to get something done and don't care to join the larger community. In Perl we call it the DarkPAN.

Meanwhile anyone wishing to use Python will at least have needed to make an effort to learn the language, since there is nothing else quite like it; and as such probably more likely to invest further effort.

But, i do admit that this is conjecture.


I see a mix. I use Python, but during undergrad one of the required classes taught Perl. Now at a different university, the local bioinformatics group does a "Perl for Biologists" class, and I know at least one lab that still writes new stuff in Perl to stay consistent with legacy code.


Do the classes teach "Modern Perl" e.g. Moose, DBIx, Critic ?


The undergrad class was back in 2011 and just went through the basics using Learning Perl, 5th Edition. I haven't personally been to the workshop here, but from their schedule it looks like they spend several sessions on basic programming concepts then spend one on OOP and hop to BioPerl, interacting with FTP sites, then "practical examples". The lab I know that uses Perl does use Moose though.


Does python have a comparable library/framework to bioperl?



Thank god. May the snoopy-cursing syntax rest in pieces.


My most sincere apologies to lovers of the snoopy-cursing syntax. In return, I only ask that you refrain from anything remotely nearing programming language design.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: