SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
UNIVERSITY OF MIAMI
                            DEPARTMENT OF BIOLOGY

Biostatistics
Course Title       Perl Programming Lab
Term               Spring 2009
Number             BIL 575
Credits            1
Class Meeting      Tue, 11:00-1:50PM Room Cox 108

Instructor Information
Name/Title         Dr. Patricia Buendia
Department         Biology
Office location    234 A
Phone              305-284-3523
E-mail             pbuendia@bio.miami.edu
Web Page           http://www.bio.miami.edu/pbuendia

Laboratory Objectives
The Perl programming lab is for students who have little or no programming experience. The
objective of the lab is to teach students to write computer code that will automate and speed
up their genetic and genomic data analysis and provide new ways to explore the data to
advance knowledge discovery in biology. Each lab will start with a 40 minutes lecture in
which we discuss new syntax and programming elements and the rest of the time will be spent
on hands-on programming assignments using real genetic/genomic/proteomic data sets.
Students will be monitored and will get help in completing their assignments. Students are
encouraged to bring their own data sets for analysis during the last portion of the semester.
Students will learn to use Perl regular expressions, arrays and hashes, Perl packages to read
XML files with gene data, file handling routines, learn to call external programs and to use
the Bioperl toolkit. The Bioperl toolkit provides additional modules to allow Perl programs
access and process gene and genome sequence data. Some of the functions offered by Bioperl
are Blast, conversion of sequence formats, sequence alignments, calculation of selection
pressure, among many others.

About Perl:
In a popular Perl book, “Programming Perl” (published by O'Reilly Media), the programming
language is described as: "Perl is a language for getting your job done." Perl has several
mottos that convey aspects of its design and use. One is "There's more than one way to do it."
(TIMTOWTDI, usually pronounced 'Tim Toady'). Others are "Perl: the Swiss Army



                                              1
Chainsaw of Programming Languages". A stated design goal of Perl is to make easy tasks
easier and difficult tasks possible.

Textbook
No textbook is required.
I will post links to files with instructions and code on the course’s web site.

There are many free online resources:

Perl Tutorials
    • Programming Perl: http://www.unix.com.ua/orelly/perl/prog3/index.htm
    • O’Reilly Beginner's Introduction to Perl: http://www.perl.com/pub/a/2008/04/23/a-
        beginners-introduction-to-perl-510.html
    • A Perl Tutorial http://www.civeng.carleton.ca/Courses/Grad/1994-
        95/82.562/perl/index.html
    • Essential Perl: http://cslibrary.stanford.edu/108/EssentialPerl.html
    • Perl regular Expression for the common man
        http://www.anaesthetist.com/mnm/perl/Findex.htm#regex.htm
    • Steve Litt's Perls of Wisdom
        http://www.troubleshooters.com/codecorn/littperl/index.htm
    • Perl FAQ http://faq.perl.org/
There are hundreds of other tutorials and students may find their own preferred ones. In most
cases all you need to do is “google” for something related to your Perl problem. For example
if you need to know how to search for an element in a Perl array, google for “perl array
search”.

BioPerl Tutorials
   • BioPerl Wiki - Howto:Beginners http://bioperl.org/wiki/HOWTO:Beginners
      The Beginners' instructions in the BioPerl Wiki covers the basic use of Bio::Seq and
      Bio::SeqIO with first steps of BLAST (however we haven't installed BLAST yet).
   • BioPerl Tutorial http://www.bioperl.org/Core/Latest/bptutorial.html
      The excellent and comprehensive work of many BioPerl authors.
   • A BioPerl course http://www.pasteur.fr/recherche/unites/sis/formation/bioperl/
      A comprehensive course at the Institut Pasteur. Contains structured chapters covering
      the essential aspects of BioPerl, sample data and example code, as well as references
      to the BioPerl tutorial.

Recommended Textbooks:
   • Beginning Perl for Bioinformatics by James Tisdall
   • Programming Perl (3rd edition) by Larry Wall (Author), Tom Christiansen (Author),
     Jon Orwant (Author)




                                                2
Lab Outline
   1. Hello World: an introduction to Perl programming. How to run a Perl program. Variables and
       data types and the importance of syntax.
   2. Input/output and more syntax
   3. Algorithms, control statements and loops
   4. More control statements and loops
   5. Subroutines
   6. Comparing files. Combining and extracting data from different files
   7. More Input/output: Process multiple files at once using open dir and readdir
   8. BioPerl and object-orientation. Assignment: Count number of sequences in a Fasta file using
       loops and then using Bioperl.
   9. Searching for conserved motifs in a multiple alignment.
   10. Using hash tables to store and sort motifs.
   11. Reading splicing graphs in XML format.
   12. Programming and debugging in Perl using a IDE (Eclipse with Epic) for Windows.
   13. Use Bioperl to run sequence alaignments, calculate the KaKs ratio of selective pressure,
       among other tasks.
   14. Blast: Setting up a local sequence database and running blast queries from Perl

We will be using ActivePerl for Windows and a simple text editor for most of the course and the IDE
for the last few classes.

The topics per date will be determined during the semester.

Attendance
This is a participatory course and you must be in the lab to succeed.

Lab Etiquette
Out of respect for your fellow students, and me, I request that you turn up to class on time,
stay in class for the full period, avoid unnecessary noise or chatter and turn off your cell
phone.

Assignment Guidelines
All lab assignments are to be completed during the lab and submitted after the lab or on the
next lab meeting. If the assignment is not handed in on the due date, a grade of 0 will be
assigned. If an assignment is late due to an unforeseen circumstance please notify the
instructor.
All assignments will be evaluated using the following criteria:
    • Clean and correct syntax
    • Correct result

In this lab, the assignments are designed to have you practice writing your own programming
code. While collaborations between students are permitted and helping each other is



                                                 3
encouraged, it is each student’s responsibility to ensure that the submitted assignments
represent their own personal work.



Grading Policy
                                                             percent of
                     Grading Criteria           number
                                                               total
                       Attendance                               10%
                     Lab Assignments               ~13          90%


 Final Grading Scale A (A-, A, A+)     B (B-, B, B+)     C (C-, C, C+)    D (D-, D, D+)
  Percentage Score      90-100            75-89             60-74            50-59




                                           4

Más contenido relacionado

La actualidad más candente

Advanced java programming-contents
Advanced java programming-contentsAdvanced java programming-contents
Advanced java programming-contentsSelf-Employed
 
Webinar: Learn Perl - The Jewel of Scripting Languages
Webinar: Learn Perl - The Jewel of Scripting LanguagesWebinar: Learn Perl - The Jewel of Scripting Languages
Webinar: Learn Perl - The Jewel of Scripting LanguagesEdureka!
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to javaSujit Majety
 

La actualidad más candente (8)

Advanced java programming-contents
Advanced java programming-contentsAdvanced java programming-contents
Advanced java programming-contents
 
Core java online training
Core java online trainingCore java online training
Core java online training
 
1.introduction to java
1.introduction to java1.introduction to java
1.introduction to java
 
Core java course syllabus
Core java course syllabusCore java course syllabus
Core java course syllabus
 
Webinar: Learn Perl - The Jewel of Scripting Languages
Webinar: Learn Perl - The Jewel of Scripting LanguagesWebinar: Learn Perl - The Jewel of Scripting Languages
Webinar: Learn Perl - The Jewel of Scripting Languages
 
Core java1
Core java1Core java1
Core java1
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
00 intro to java
00 intro to java00 intro to java
00 intro to java
 

Destacado (8)

drmaatutggf12
drmaatutggf12drmaatutggf12
drmaatutggf12
 
fms9_cwp_php_en
fms9_cwp_php_enfms9_cwp_php_en
fms9_cwp_php_en
 
Fall_2008_CS601_W1_Tyngsboro
Fall_2008_CS601_W1_TyngsboroFall_2008_CS601_W1_Tyngsboro
Fall_2008_CS601_W1_Tyngsboro
 
IJTC%202009%20JRuby
IJTC%202009%20JRubyIJTC%202009%20JRuby
IJTC%202009%20JRuby
 
tutorial21
tutorial21tutorial21
tutorial21
 
080620-16461915
080620-16461915080620-16461915
080620-16461915
 
User_Manual
User_ManualUser_Manual
User_Manual
 
netbeans
netbeansnetbeans
netbeans
 

Similar a Perl%20SYLLABUS%20PB

Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual Abdul Hannan
 
Creativity vs Best Practices
Creativity vs Best PracticesCreativity vs Best Practices
Creativity vs Best PracticesSupun Dissanayake
 
OS Syllabus.docx
OS Syllabus.docxOS Syllabus.docx
OS Syllabus.docxkiamiel
 
Results may vary: Collaborations Workshop, Oxford 2014
Results may vary: Collaborations Workshop, Oxford 2014Results may vary: Collaborations Workshop, Oxford 2014
Results may vary: Collaborations Workshop, Oxford 2014Carole Goble
 
Oops in PHP By Nyros Developer
Oops in PHP By Nyros DeveloperOops in PHP By Nyros Developer
Oops in PHP By Nyros DeveloperNyros Technologies
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyarsasikalaD3
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyarsasikalaD3
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyarsasikalaD3
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyarsasikalaD3
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyarsasikalaD3
 
Ti1220 Lecture 1: Programming Linguistics
Ti1220 Lecture 1: Programming LinguisticsTi1220 Lecture 1: Programming Linguistics
Ti1220 Lecture 1: Programming LinguisticsEelco Visser
 
Technology thingamijigs tesol 3 15-handouts
Technology thingamijigs tesol 3 15-handoutsTechnology thingamijigs tesol 3 15-handouts
Technology thingamijigs tesol 3 15-handoutsCynthia Schuemann
 
GPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask LearnersGPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask LearnersYoung Seok Kim
 
Pal gov.tutorial4.session5.lab ontologytools
Pal gov.tutorial4.session5.lab ontologytoolsPal gov.tutorial4.session5.lab ontologytools
Pal gov.tutorial4.session5.lab ontologytoolsMustafa Jarrar
 
Machine Learning
Machine LearningMachine Learning
Machine Learningbutest
 

Similar a Perl%20SYLLABUS%20PB (20)

Chemlab
ChemlabChemlab
Chemlab
 
Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual
 
Creativity vs Best Practices
Creativity vs Best PracticesCreativity vs Best Practices
Creativity vs Best Practices
 
OS Syllabus.docx
OS Syllabus.docxOS Syllabus.docx
OS Syllabus.docx
 
Results may vary: Collaborations Workshop, Oxford 2014
Results may vary: Collaborations Workshop, Oxford 2014Results may vary: Collaborations Workshop, Oxford 2014
Results may vary: Collaborations Workshop, Oxford 2014
 
Oops in PHP By Nyros Developer
Oops in PHP By Nyros DeveloperOops in PHP By Nyros Developer
Oops in PHP By Nyros Developer
 
130704798265658191
130704798265658191130704798265658191
130704798265658191
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyar
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyar
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyar
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyar
 
Python training centre in adyar
Python training centre in adyarPython training centre in adyar
Python training centre in adyar
 
Ti1220 Lecture 1: Programming Linguistics
Ti1220 Lecture 1: Programming LinguisticsTi1220 Lecture 1: Programming Linguistics
Ti1220 Lecture 1: Programming Linguistics
 
Technology thingamijigs tesol 3 15-handouts
Technology thingamijigs tesol 3 15-handoutsTechnology thingamijigs tesol 3 15-handouts
Technology thingamijigs tesol 3 15-handouts
 
01.intro
01.intro01.intro
01.intro
 
Biol102 syllabus
Biol102 syllabusBiol102 syllabus
Biol102 syllabus
 
GPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask LearnersGPT-2: Language Models are Unsupervised Multitask Learners
GPT-2: Language Models are Unsupervised Multitask Learners
 
Pal gov.tutorial4.session5.lab ontologytools
Pal gov.tutorial4.session5.lab ontologytoolsPal gov.tutorial4.session5.lab ontologytools
Pal gov.tutorial4.session5.lab ontologytools
 
Research paper
Research paperResearch paper
Research paper
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 

Más 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 – INS0tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269tutorialsruby
 
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa0602690047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269
0047ecaa6ea3e9ac0a13a2fe96f4de3bfd515c88f5d90c1fae79b956363d7f02c7fa060269tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008tutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheetstutorialsruby
 
cascadingstylesheets
cascadingstylesheetscascadingstylesheets
cascadingstylesheetstutorialsruby
 

Más 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
 

Último

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Perl%20SYLLABUS%20PB

  • 1. UNIVERSITY OF MIAMI DEPARTMENT OF BIOLOGY Biostatistics Course Title Perl Programming Lab Term Spring 2009 Number BIL 575 Credits 1 Class Meeting Tue, 11:00-1:50PM Room Cox 108 Instructor Information Name/Title Dr. Patricia Buendia Department Biology Office location 234 A Phone 305-284-3523 E-mail pbuendia@bio.miami.edu Web Page http://www.bio.miami.edu/pbuendia Laboratory Objectives The Perl programming lab is for students who have little or no programming experience. The objective of the lab is to teach students to write computer code that will automate and speed up their genetic and genomic data analysis and provide new ways to explore the data to advance knowledge discovery in biology. Each lab will start with a 40 minutes lecture in which we discuss new syntax and programming elements and the rest of the time will be spent on hands-on programming assignments using real genetic/genomic/proteomic data sets. Students will be monitored and will get help in completing their assignments. Students are encouraged to bring their own data sets for analysis during the last portion of the semester. Students will learn to use Perl regular expressions, arrays and hashes, Perl packages to read XML files with gene data, file handling routines, learn to call external programs and to use the Bioperl toolkit. The Bioperl toolkit provides additional modules to allow Perl programs access and process gene and genome sequence data. Some of the functions offered by Bioperl are Blast, conversion of sequence formats, sequence alignments, calculation of selection pressure, among many others. About Perl: In a popular Perl book, “Programming Perl” (published by O'Reilly Media), the programming language is described as: "Perl is a language for getting your job done." Perl has several mottos that convey aspects of its design and use. One is "There's more than one way to do it." (TIMTOWTDI, usually pronounced 'Tim Toady'). Others are "Perl: the Swiss Army 1
  • 2. Chainsaw of Programming Languages". A stated design goal of Perl is to make easy tasks easier and difficult tasks possible. Textbook No textbook is required. I will post links to files with instructions and code on the course’s web site. There are many free online resources: Perl Tutorials • Programming Perl: http://www.unix.com.ua/orelly/perl/prog3/index.htm • O’Reilly Beginner's Introduction to Perl: http://www.perl.com/pub/a/2008/04/23/a- beginners-introduction-to-perl-510.html • A Perl Tutorial http://www.civeng.carleton.ca/Courses/Grad/1994- 95/82.562/perl/index.html • Essential Perl: http://cslibrary.stanford.edu/108/EssentialPerl.html • Perl regular Expression for the common man http://www.anaesthetist.com/mnm/perl/Findex.htm#regex.htm • Steve Litt's Perls of Wisdom http://www.troubleshooters.com/codecorn/littperl/index.htm • Perl FAQ http://faq.perl.org/ There are hundreds of other tutorials and students may find their own preferred ones. In most cases all you need to do is “google” for something related to your Perl problem. For example if you need to know how to search for an element in a Perl array, google for “perl array search”. BioPerl Tutorials • BioPerl Wiki - Howto:Beginners http://bioperl.org/wiki/HOWTO:Beginners The Beginners' instructions in the BioPerl Wiki covers the basic use of Bio::Seq and Bio::SeqIO with first steps of BLAST (however we haven't installed BLAST yet). • BioPerl Tutorial http://www.bioperl.org/Core/Latest/bptutorial.html The excellent and comprehensive work of many BioPerl authors. • A BioPerl course http://www.pasteur.fr/recherche/unites/sis/formation/bioperl/ A comprehensive course at the Institut Pasteur. Contains structured chapters covering the essential aspects of BioPerl, sample data and example code, as well as references to the BioPerl tutorial. Recommended Textbooks: • Beginning Perl for Bioinformatics by James Tisdall • Programming Perl (3rd edition) by Larry Wall (Author), Tom Christiansen (Author), Jon Orwant (Author) 2
  • 3. Lab Outline 1. Hello World: an introduction to Perl programming. How to run a Perl program. Variables and data types and the importance of syntax. 2. Input/output and more syntax 3. Algorithms, control statements and loops 4. More control statements and loops 5. Subroutines 6. Comparing files. Combining and extracting data from different files 7. More Input/output: Process multiple files at once using open dir and readdir 8. BioPerl and object-orientation. Assignment: Count number of sequences in a Fasta file using loops and then using Bioperl. 9. Searching for conserved motifs in a multiple alignment. 10. Using hash tables to store and sort motifs. 11. Reading splicing graphs in XML format. 12. Programming and debugging in Perl using a IDE (Eclipse with Epic) for Windows. 13. Use Bioperl to run sequence alaignments, calculate the KaKs ratio of selective pressure, among other tasks. 14. Blast: Setting up a local sequence database and running blast queries from Perl We will be using ActivePerl for Windows and a simple text editor for most of the course and the IDE for the last few classes. The topics per date will be determined during the semester. Attendance This is a participatory course and you must be in the lab to succeed. Lab Etiquette Out of respect for your fellow students, and me, I request that you turn up to class on time, stay in class for the full period, avoid unnecessary noise or chatter and turn off your cell phone. Assignment Guidelines All lab assignments are to be completed during the lab and submitted after the lab or on the next lab meeting. If the assignment is not handed in on the due date, a grade of 0 will be assigned. If an assignment is late due to an unforeseen circumstance please notify the instructor. All assignments will be evaluated using the following criteria: • Clean and correct syntax • Correct result In this lab, the assignments are designed to have you practice writing your own programming code. While collaborations between students are permitted and helping each other is 3
  • 4. encouraged, it is each student’s responsibility to ensure that the submitted assignments represent their own personal work. Grading Policy percent of Grading Criteria number total Attendance 10% Lab Assignments ~13 90% Final Grading Scale A (A-, A, A+) B (B-, B, B+) C (C-, C, C+) D (D-, D, D+) Percentage Score 90-100 75-89 60-74 50-59 4