¿Cómo comenzó Perl como el idioma dominante en bioinformática?

Primero, los hechos. En 1996, el Dr. Lincoln Stein escribió un artículo titulado “Cómo Perl salvó el proyecto del genoma humano” . Su mensaje básico es que Perl proporcionó una forma rápida de desarrollar la normalización de datos entre las diversas bases de datos bioinformáticas. Los beneficios de Perl que enumera son (en resumen):

  • Buen soporte de procesamiento de texto y expresiones regulares
  • Comportamiento de “hacer lo que quiero” con respecto a los datos faltantes
  • Modularidad, específicamente los módulos Bioperl
  • Rápido para ejecutar el código (sin compilación, los scripts son cortos, etc.)
  • Creación rápida de prototipos
  • Programación web y CGI incorporada

Debo señalar a todos los entusiastas de Perl que el Dr. Stein admite fácilmente que muchos de los algoritmos desarrollados inicialmente en Perl serían más rápidos o se adaptarían mejor a un idioma diferente, especialmente a un lenguaje compilado. Como evidencia anecdótica, cuando estaba en la universidad, el departamento de Bioinformática se acercó a un estudiante que era un asistente de programación para ver si podía ayudarlos con un problema. Después de analizar su intento de Perl, se dio la vuelta y escribió un programa en OpenGL que terminó en una pequeña fracción de las muchas horas que el script de Perl había tomado el mismo problema.

Probablemente también tiene que ver con el poco tiempo que lleva aprender la codificación básica en Perl y la forma en que las funciones y la sintaxis del lenguaje están cerca de los idiomas humanos.

Hay muchas y muchas razones por las que cualquiera puede pensar que están muy bien validadas no solo en relación con Perl en Bioinformática, sino también en la profundidad de la participación que Perl tiene en otros campos como la biofísica, la ingeniería, las finanzas … etc. Una comunidad de programadores de Perl estará compuesta por muchas personas de diferentes ámbitos.

http://www.bioperl.org/wiki/How_

http://www.oscon.com/oscon2010/p

Escuela de Medicina de la Universidad de Stanford

Finalmente, escribí un artículo titulado “Perl y bioinformática” en perlmonks.org que puede ser de su interés.

Una buena cantidad de análisis en bioinformática tiene que ver con el procesamiento de texto. Cosas como extraer datos de archivos, analizar datos textuales y formatearlos para que otro programa pueda usarlos. Perl fue y es extremadamente bueno en el procesamiento de texto. Para cosas que involucran expresiones regulares, Perl es más rápido que Python por un buen margen y se prefiere si la velocidad es una prioridad.

En segundo lugar, muchas tareas de bioinformática se pueden realizar de manera efectiva con una línea Perl o awk. Por lo tanto, es fácil utilizarlo de manera predeterminada cuando solo está explorando un conjunto de datos o haciendo una tarea relativamente simple.

More Interesting

¿Cuál es la principal diferencia entre la forma bayesiana de estimación de parámetros y la regresión lineal?

¿Por qué están recibiendo tanta atención Machine Learning + Big Data?

Al entrenar y probar conjuntos de datos, ¿es posible probar un conjunto de datos completamente diferente del conjunto de entrenamiento?

¿Qué tan buena será una carrera en IA / aprendizaje automático en el futuro?

¿Cuáles son algunos conjuntos de datos etiquetados disponibles públicamente que usan Kinect para su uso en la investigación de la visión por computadora?

¿Es mejor hacer una competencia de ciencia de datos en Kaggle o crear un algoritmo comercial en Quantopian para encontrar un trabajo en finanzas cuantitativas?

¿Dónde puedo encontrar los mejores tutoriales de aprendizaje automático como principiante?

¿Cuál es la mejor manera de manejar múltiples brazos en algoritmos de bandidos?

¿Qué es la optimización de colonias de hormigas y cómo funciona en términos simples?

Cómo hacer ingeniería de características en aprendizaje automático

¿Cómo está estudiando Conner Davis el aprendizaje automático?

¿Vale la pena el curso sobre aprendizaje automático en Coursera por la Universidad de Stanford?

¿Qué idioma debo usar para tensorflow?

¿Cuál es la mejor manera para que un estudiante de CS en una universidad india obtenga una pasantía / trabajo en una compañía en el sector de Big Data y / o Machine Learning en los Estados Unidos?

¿Cuál es la función de zeropad en CNN?