SlideShare une entreprise Scribd logo
1  sur  2
Télécharger pour lire hors ligne
OK INBRE Bioinformatics Bulletin
                                      University of Oklahoma Health Sciences Center
December 2006




    Programming for Bioinformatics
    by Timothy Schmidt, M.S.


      In   previous   versions   of   this   newsletter,  we   have      Pascal, C, C++, and Java programming languages have 
focused   on   some   of   the   common   bioinformatic   tools          been widely implemented since that time.
available to the budding bioinformatician. These, and                              The bad news is, these programming languages 
many   other   applications,   could   be   thought   of   as   the      typically can, and do, take an extensive amount of time 
“core” of bioinformatics, and certainly a great deal can                 to   learn   and   master.   Furthermore,   building   a   “full­
be accomplished solely with them. But what happens                       featured” application can take years, an investment the 
when   you   need   to   address   a   question   for   which   an       typical researcher will have no interest in making. What 
application does not exist? It’s not a surprising or rare                is   frequently   needed   bioinformatics,   however,   isn’t   a 
occurrence;   original   research   projects   often   require           full featured elaborate program with a stylistic graphical 
original   analyses.   And   perhaps   just   as   importantly,          user   interface   (GUI),   but   a   simple,   efficient,   and 
many   situations   in   the   modern   biology   lab   require          accurate   method   to   manipulate   data   for   use   in   other 
manipulation of very large datasets in order to process                  applications.   Fortunately   a   programming   language 
data for use in core applications and to help organize                   (Perl)   exists   that   is   particularly   well   suited   for   these 
and interpret the results emanating from them. In these                  tasks.
circumstances it is useful for a biologist to have at least 
some basic programming skills at their disposal. Apart                   Perl
from these (often lab­specific) tasks, programming can                            Perl   stands   for   Practical   Extraction   and 
also   open   up   to   broader   applications   for   use   by   the    Reporting Language. Perl has gained widespread usage 
general biological community.                                            in the maintenance and production of Web site, and has 
                                                                         become known as the “duct tape of the Internet”. One 
Programming languages                                                    aspect   of   content   for   the   internet,   the   broad   use   and 
          The purpose of a programming language is to                    manipulation of text, is also a reason that Perl has been 
instruct   computers   on   how   to   perform   tasks.                  so   readily   put   to   use   in   bioinformatics.   The   genetic 
Programming languages differ from other languages in                     code, DNA sequence, Genbank data files, PDB (protein 
the level of specificity required. The reason for their                  database) files, etc., are all based on text (as opposed to 
rigid structure is that the target of the communication (a               numerical) data.
machine)   is   unable   to   “intuit”,   and   even   very   small               Perl   is   also   more   readily   taken   up   than   other 
trivial   errors   can   have   disastrous   effects.   There   are      programming   languages,   which   are   stricter   and   more 
literally   thousands   of   computer   languages,   with   new          structured.   “There’s   more   than   one   way   to   do   it” 
ones being introduced each year, but there have been                     (TMTOWTDI) is another common Perl acronym. The 
only a few that have gained widespread usage. The first                  leniency in Perl coding structure can be a huge time­
widely used language was FORTRAN, which was good                         saver,   but   it   also   has   costs.   It   is   sometimes   nearly 
at   handling   numeric   data,   but   COBOL   was                      impossible to debug or modify another programmer’s 
subsequently developed for business applications. The                    code, leading some to  refer to it as the Pathologically 
Bulletin (continued)
    The University of
    Oklahoma Health                       Eclectic   Rubbish   Lister.   But   the   best                          3) Perl is component­oriented; 4) Perl 
    Sciences Center                       description of Perl may be that it is the                                is easy to write and fast to develop in; 
                                          Swiss Army chainsaw of programming                                       5)   Perl   is   a   good   prototyping 
                                          languages.                                                               language…   it   often   makes   sense   to 
                                                                                                                   prototype   new   algorithms   in   Perl 
  Laboratory for Genomics and             Perl for Bioinformatics                                                  before moving them to a fast compiled 
  Bioinformatics
                                                    Perl has many other advantages                                 language;   and   6)   Perl   is   a   good 
  Edgar Scott II, M.S.
  Multicampus Bioinformatics Education    that   has   endeared   it   to                                          language for Web CGI scripting, and is 
  Specialist
                                          bioinformaticians.   It’s   free,   and                                  growing   in   importance   as   more   labs 
  Phone:
  (405) 271-2133 x32511                   available   for   almost   any   platform                                turn   to   the   Web   for   publishing   their 
  E-Mail:
  edgar-scott@ouhsc.edu
                                          (Mac,   Windows,   Linux,   etc.).                                       data.
                                          Programs that are written on the Mac                                                Because   of   Perl’s   popularity 
                                          will work in Windows, etc. This has a                                    there are many resources available on 
                                          cost… Perl has very little in the way of                                 the   Web,   and   most   can   be   found 
                                          a GUI and is predominantly used from                                     through            www.bioperl.org          and 
                                          the command line. Very few “point and                                    www.perl.com.   The   latter   is   a   site 
                                          click”   types   of   applications   are                                 maintained by O’Reilly & Associates, 
   We’ re on the Web!                                                                                              who publish the books “Beginning Perl 
                                          produced with Perl, although they can 
   See us at:                             be created  with  “helper”  applications,                                for   Bioinformatics”,   and   “Mastering 
   http://microgen.ouhsc.                 such as Perl2Exe.                                                        Perl   for   Bioinformatics”   by   James 
   edu/inbre/                                       In “How Perl saved the human                                   Tisdall.   You   can   also   find   links   to 
                                          genome project”1, Lincoln Stein listed                                   download Perl for Mac and Windows 
                                          six   reasons   that   Perl   has   become   the                         at   this   site   (Perl   comes   standard   in 
                                          most   widely   used   programming                                       Linux distributions). Finally, there are 
                                          language of bioinformatics: 1) Perl is                                   numerous sites with tutorials on how to 
                                          remarkably   good  for   slicing,   dicing,                              begin   learning   Perl   throughout   the 
Website Reference                         twisting,   wringing,   smoothing,                                       Web, and googling for “Perl tutorial” 
                                          summarizing   and   otherwise   mangling                                 should get you started on the path to 
1.http://www.bioperl.org/wiki/How_
Perl_saved_human_genome 
                                          text…   Perl's   powerful   regular                                      programming in Perl!
                                          expression   matching   and   string 
                                          manipulation   operators   simplify   this 
                                          job in a way that isn't equaled by any 
                                          other   modern   language;   2)   Perl   is 
                                          forgiving…biological   data   is   often 
                                          incomplete, fields can be missing, etc.; 



                                         About Us…


                                          The OUHSC Laboratory for Genomics and Bioinformatics is a full-service genomics facility offering DNA sequencing (small- and large-scale

                                          projects), microarray design and hybridization and other services, including bioinformatics support. Edgar Scott is the INBRE Multicampus

                                          Bioinformatics Education Specialist, responsible for fostering the development of bioinformatics education on 14 undergraduate campuses in

                                          the state of Oklahoma, and coordinating INBRE-related bioinformatics activities with the INBRE Bioinformatics Core. The University of

                                          Oklahoma is an equal opportunity institution. This publication is printed and issued by the University of Oklahoma; the cost of $150 was paid

                                          by OK INBRE.

Contenu connexe

Similaire à December06Bulletin

Python Intro For Managers
Python Intro For ManagersPython Intro For Managers
Python Intro For Managers
Atul Shridhar
 
Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...
Carmen Sanborn
 

Similaire à December06Bulletin (20)

Bioinformatica p1-perl-introduction
Bioinformatica p1-perl-introductionBioinformatica p1-perl-introduction
Bioinformatica p1-perl-introduction
 
Group1_PERL.pptx
Group1_PERL.pptxGroup1_PERL.pptx
Group1_PERL.pptx
 
Intro
IntroIntro
Intro
 
Intro
IntroIntro
Intro
 
Future of PERL in IT
Future of PERL in ITFuture of PERL in IT
Future of PERL in IT
 
introduction to Perl _ the programming language.pptx
introduction to Perl _ the programming language.pptxintroduction to Perl _ the programming language.pptx
introduction to Perl _ the programming language.pptx
 
Perl Myths 200909
Perl Myths 200909Perl Myths 200909
Perl Myths 200909
 
Programming languages in bioinformatics by dr. jayarama reddy
Programming languages in bioinformatics by dr. jayarama reddyProgramming languages in bioinformatics by dr. jayarama reddy
Programming languages in bioinformatics by dr. jayarama reddy
 
Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)Perl Myths 200802 with notes (OUTDATED, see 200909)
Perl Myths 200802 with notes (OUTDATED, see 200909)
 
Inheritance Versus Roles - The In-Depth Version
Inheritance Versus Roles - The In-Depth VersionInheritance Versus Roles - The In-Depth Version
Inheritance Versus Roles - The In-Depth Version
 
Introduction to perl
Introduction to perlIntroduction to perl
Introduction to perl
 
Python Intro For Managers
Python Intro For ManagersPython Intro For Managers
Python Intro For Managers
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesBUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
 
groovy & grails - lecture 1
groovy & grails - lecture 1groovy & grails - lecture 1
groovy & grails - lecture 1
 
Minimal reason to learn Perl
Minimal reason  to learn PerlMinimal reason  to learn Perl
Minimal reason to learn Perl
 
Third and fourth generation programming language
Third and fourth generation programming languageThird and fourth generation programming language
Third and fourth generation programming language
 
2012 12 12_adam_v_final
2012 12 12_adam_v_final2012 12 12_adam_v_final
2012 12 12_adam_v_final
 
OOP Comparative Study
OOP Comparative StudyOOP Comparative Study
OOP Comparative Study
 
Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...
 

Plus de tutorialsruby

<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>
tutorialsruby
 
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
tutorialsruby
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
tutorialsruby
 
Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0
tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
tutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
tutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
tutorialsruby
 

Plus de tutorialsruby (20)

<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>TopStyle Help & <b>Tutorial</b>
TopStyle Help & <b>Tutorial</b>
 
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
The Art Institute of Atlanta IMD 210 Fundamentals of Scripting <b>...</b>
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0Standardization and Knowledge Transfer – INS0
Standardization and Knowledge Transfer – INS0
 
xhtml_basics
xhtml_basicsxhtml_basics
xhtml_basics
 
xhtml_basics
xhtml_basicsxhtml_basics
xhtml_basics
 
xhtml-documentation
xhtml-documentationxhtml-documentation
xhtml-documentation
 
xhtml-documentation
xhtml-documentationxhtml-documentation
xhtml-documentation
 
CSS
CSSCSS
CSS
 
CSS
CSSCSS
CSS
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
 
HowTo_CSS
HowTo_CSSHowTo_CSS
HowTo_CSS
 
HowTo_CSS
HowTo_CSSHowTo_CSS
HowTo_CSS
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheets
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

December06Bulletin

  • 1. OK INBRE Bioinformatics Bulletin University of Oklahoma Health Sciences Center December 2006 Programming for Bioinformatics by Timothy Schmidt, M.S. In   previous   versions   of   this   newsletter,  we   have  Pascal, C, C++, and Java programming languages have  focused   on   some   of   the   common   bioinformatic   tools  been widely implemented since that time. available to the budding bioinformatician. These, and  The bad news is, these programming languages  many   other   applications,   could   be   thought   of   as   the  typically can, and do, take an extensive amount of time  “core” of bioinformatics, and certainly a great deal can  to   learn   and   master.   Furthermore,   building   a   “full­ be accomplished solely with them. But what happens  featured” application can take years, an investment the  when   you   need   to   address   a   question   for   which   an  typical researcher will have no interest in making. What  application does not exist? It’s not a surprising or rare  is   frequently   needed   bioinformatics,   however,   isn’t   a  occurrence;   original   research   projects   often   require  full featured elaborate program with a stylistic graphical  original   analyses.   And   perhaps   just   as   importantly,  user   interface   (GUI),   but   a   simple,   efficient,   and  many   situations   in   the   modern   biology   lab   require  accurate   method   to   manipulate   data   for   use   in   other  manipulation of very large datasets in order to process  applications.   Fortunately   a   programming   language  data for use in core applications and to help organize  (Perl)   exists   that   is   particularly   well   suited   for   these  and interpret the results emanating from them. In these  tasks. circumstances it is useful for a biologist to have at least  some basic programming skills at their disposal. Apart  Perl from these (often lab­specific) tasks, programming can  Perl   stands   for   Practical   Extraction   and  also   open   up   to   broader   applications   for   use   by   the  Reporting Language. Perl has gained widespread usage  general biological community. in the maintenance and production of Web site, and has  become known as the “duct tape of the Internet”. One  Programming languages aspect   of   content   for   the   internet,   the   broad   use   and  The purpose of a programming language is to  manipulation of text, is also a reason that Perl has been  instruct   computers   on   how   to   perform   tasks.  so   readily   put   to   use   in   bioinformatics.   The   genetic  Programming languages differ from other languages in  code, DNA sequence, Genbank data files, PDB (protein  the level of specificity required. The reason for their  database) files, etc., are all based on text (as opposed to  rigid structure is that the target of the communication (a  numerical) data. machine)   is   unable   to   “intuit”,   and   even   very   small  Perl   is   also   more   readily   taken   up   than   other  trivial   errors   can   have   disastrous   effects.   There   are  programming   languages,   which   are   stricter   and   more  literally   thousands   of   computer   languages,   with   new  structured.   “There’s   more   than   one   way   to   do   it”  ones being introduced each year, but there have been  (TMTOWTDI) is another common Perl acronym. The  only a few that have gained widespread usage. The first  leniency in Perl coding structure can be a huge time­ widely used language was FORTRAN, which was good  saver,   but   it   also   has   costs.   It   is   sometimes   nearly  at   handling   numeric   data,   but   COBOL   was  impossible to debug or modify another programmer’s  subsequently developed for business applications. The  code, leading some to  refer to it as the Pathologically 
  • 2. Bulletin (continued) The University of Oklahoma Health Eclectic   Rubbish   Lister.   But   the   best  3) Perl is component­oriented; 4) Perl  Sciences Center description of Perl may be that it is the  is easy to write and fast to develop in;  Swiss Army chainsaw of programming  5)   Perl   is   a   good   prototyping  languages. language…   it   often   makes   sense   to  prototype   new   algorithms   in   Perl  Laboratory for Genomics and Perl for Bioinformatics before moving them to a fast compiled  Bioinformatics Perl has many other advantages  language;   and   6)   Perl   is   a   good  Edgar Scott II, M.S. Multicampus Bioinformatics Education that   has   endeared   it   to  language for Web CGI scripting, and is  Specialist bioinformaticians.   It’s   free,   and  growing   in   importance   as   more   labs  Phone: (405) 271-2133 x32511 available   for   almost   any   platform  turn   to   the   Web   for   publishing   their  E-Mail: edgar-scott@ouhsc.edu (Mac,   Windows,   Linux,   etc.).  data. Programs that are written on the Mac  Because   of   Perl’s   popularity  will work in Windows, etc. This has a  there are many resources available on  cost… Perl has very little in the way of  the   Web,   and   most   can   be   found  a GUI and is predominantly used from  through  www.bioperl.org  and  the command line. Very few “point and  www.perl.com.   The   latter   is   a   site  click”   types   of   applications   are  maintained by O’Reilly & Associates,  We’ re on the Web! who publish the books “Beginning Perl  produced with Perl, although they can  See us at: be created  with  “helper”  applications,  for   Bioinformatics”,   and   “Mastering  http://microgen.ouhsc. such as Perl2Exe. Perl   for   Bioinformatics”   by   James  edu/inbre/ In “How Perl saved the human  Tisdall.   You   can   also   find   links   to  genome project”1, Lincoln Stein listed  download Perl for Mac and Windows  six   reasons   that   Perl   has   become   the  at   this   site   (Perl   comes   standard   in  most   widely   used   programming  Linux distributions). Finally, there are  language of bioinformatics: 1) Perl is  numerous sites with tutorials on how to  remarkably   good  for   slicing,   dicing,  begin   learning   Perl   throughout   the  Website Reference twisting,   wringing,   smoothing,  Web, and googling for “Perl tutorial”  summarizing   and   otherwise   mangling  should get you started on the path to  1.http://www.bioperl.org/wiki/How_ Perl_saved_human_genome  text…   Perl's   powerful   regular  programming in Perl! expression   matching   and   string  manipulation   operators   simplify   this  job in a way that isn't equaled by any  other   modern   language;   2)   Perl   is  forgiving…biological   data   is   often  incomplete, fields can be missing, etc.;  About Us… The OUHSC Laboratory for Genomics and Bioinformatics is a full-service genomics facility offering DNA sequencing (small- and large-scale projects), microarray design and hybridization and other services, including bioinformatics support. Edgar Scott is the INBRE Multicampus Bioinformatics Education Specialist, responsible for fostering the development of bioinformatics education on 14 undergraduate campuses in the state of Oklahoma, and coordinating INBRE-related bioinformatics activities with the INBRE Bioinformatics Core. The University of Oklahoma is an equal opportunity institution. This publication is printed and issued by the University of Oklahoma; the cost of $150 was paid by OK INBRE.