welcome to comp 204 computer programming for life sciences!blanchem/204/slides/1/... ·...

19
Welcome to COMP 204 Computer Programming for Life Sciences! Introduction Mathieu Blanchette 1 / 18

Upload: others

Post on 03-Jul-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Welcome to COMP 204Computer Programming for Life Sciences!

Introduction

Mathieu Blanchette

1 / 18

Page 2: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Key Course Information

Description: Introduction to computer programming in a highlevel language: variables, expressions, types, functions,conditionals, loops, objects and classes. Introduction to algorithms,data structures (lists, strings), modular software design, libraries,file input/output, debugging. Emphasis on applications in the lifesciences.

List of life science topics used as examples:

I Central dogma of molecular biology, RNA and/or proteinstructure prediction, genome sequencing and analysis,biological networks, evolution, etc.

I Suggestions/requests?

Prerequisites: BIOL 112 and a CEGEP level mathematics courseRestrictions: Only one of COMP 204, COMP 202, COMP 208, orCOMP 364 can be taken for credit. COMP 204 cannot be takenfor credit with or after COMP 250, COMP 206, or COMP 364.

2 / 18

Page 3: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Key Course Information

Objectives: By the end of this course, students will be able to:

1. Design and describe precise, unambiguous instructions that acomputer can use to solve a problem/perform task(s)

2. Translate these instructions into a language that a computercan understand (Python)

3. Write Python scripts that solve complex problems bydecomposing them into simpler subproblems

4. Apply programming-style and structure conventions to makeyour programs easy to understand, debug and modify

5. Learn independently about new programming-languagefeatures/libraries by reading documentation and experimenting

3 / 18

Page 4: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Key Course Information

Instructors:

I Mathieu Blanchette: [email protected]

I Office: Trottier 3107

I Office hours: 11:30-12:30

Schedule: MWF 10:35-11:25 AM in Adams AuditoriumWeb page: http://cs.mcgill.ca/~blanchem/204

Teaching assistant:

I Carlos Gonzalez Oliver: [email protected]

I Pouriya Alikhani: [email protected]

I Airin Ahia-Tabibi: [email protected]

I Samy Coulombe: [email protected]

I Faizy Ahsan: [email protected]

Office hours in Trottier 3104:

I TBD

4 / 18

Page 5: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

CSUS HelpdeskHOURS: 12pm - 5pm (mon-fri)LOCATION: Trottier 3090

WHO ARE WE? WHAT DO WE DO?

● U2 and U3 students who have taken this course and want to help you!

● We are a FREE drop-in tutoring service, perfect for study help, and guidance on assignments.

● We provide review sessions for midterms and finals for intro courses!

Page 6: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Key Course Information

Required ”textbook” (free!): How to Think Like a ComputerScientist: Interactive Edition (Python)

I http://interactivepython.org/courselib/static/

thinkcspy/index.html

Schedule of topics covered + All lecture notes:

I http://cs.mcgill.ca/~blanchem/204/schedule.html

I Lectures will be recorded and made available on the coursewebsite/MyCourses

5 / 18

Page 7: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Recommended Software

PythonI Created by Guido Van Rossum (early 90s)

I Named after ’Mounty Python’s FlyingCircus’

I Version 3.6 will be used in this course

I We suggest installing Anaconda (Pythonpackage manager):https://docs.continuum.io/

anaconda/install/

I More on this soon!

6 / 18

Page 8: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Course evaluationAssignments: 35% (5 assignments worth 7% each)Midterm exam: 20% or 0%

I Wednesday, October 17, 2018 18:05-19:55 PM. Location:STBIO S1/3, STBIO S1/4 and STBIO S3/3

I Mixture of multiple choice and short/long answer writtenquestions (mini final exam)

Final exam: 45% or 65%I 3-hour final exam, time and place TBD

Total grade = 0.35*Assignments + max (0.2*Midterm +0.45*Final , 0.65*Final)

I There is no 100% final option: all assignments will count,except for medical reasons.

I In exceptional situations, students may write a supplementalexamination. However, ability to do so is not automatic:contact your Student Affairs Office. The supplementalexamination represents 100% of your supplemental grade.

I Students who receive unsatisfactory final grades will NOThave the option to submit additional work. 7 / 18

Page 9: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Assignments

I 5 Python programming assignments, each aiming ataddressing a specific biological question using programmingtechniques introduced in class.

I Solutions must be submitted electronically on MyCourses.Every student is responsible for verifying that theirsubmissions are successful.

I Due dates:I Assignment 1 Due: Monday October 1, 11:59:59 PMI Assignment 2 Due: Monday October 15, 11:59:59 PMI Assignment 3 Due: Friday November 2, 11:59:59 PMI Assignment 4 Due: Monday November 19, 11:59:59 PMI Assignment 5 Due: Wednesday December 5, 11:59:59 PM

I Working hard on your assignments will improve your score onexams.

8 / 18

Page 10: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Late Policy

I Late assignments will be deducted 10% each day or fractionthereof for which they are late, including weekend days andholidays:

I 0-24 hours late = 20% deductionI 24-48 hours late = 40% deduction.I >48 hours late = not be accepted (grade of 0%).

I Programming assignments are notoriously time-consuming.DO NOT leave it to the last minute!

I Individual exceptions to the lateness policy will not be grantedwithout appropriate justification submitted in writing andsupported by documentary evidence.

9 / 18

Page 11: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Assignment grades

I Assignment marks will also be posted on myCourses. It isyour responsibility to check that the marks are correct and tonotify your section instructor of any errors or missing marks.

I If you have only partially finished an assignment, documentthe parts that do not work, and submit what you managed tocomplete for partial credit.

I If you believe that your assignment was graded incorrectly,you should first email the TA who marked your assignment.Their email address should be in the feedback left on yourassignment. If you and the TA cannot resolve the discussion,then you should contact your instructor.

I Complaints about grading must be formulated within twoweeks of the release of the grade.

10 / 18

Page 12: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Getting help

I The instructor and teaching assistants will not answerquestions by email.

I Post all your questions on myCourses or at office hours

I Answer each other’s question on MyCourses BUT do NOTprovide solution code.

I Only email the instructors or TAs for private matters, and donot count on a quick response.

11 / 18

Page 13: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Plagiarism PolicyMcGill University values academic integrity. Therefore all studentsmust understand the meaning and consequences of cheating,plagiarism, and other academic offenses under the Code of StudentConduct and Disciplinary Procedures (see www.mcgill.ca/integrity/for more information).

I Include your name and McGill ID number at the top of eachsource code file that you submit. By doing so, you arecertifying that the program or module is entirely your own.

I Work submitted for this course must represent your ownefforts. Assignments must be done individually. Do not relyon friends or tutors to do your work for you. You must notcopy any other person’s work in any manner (electronically orotherwise), even if this work is in the public domain or youhave permission from its author to use it and/or modify it inyour own work.

I Do not give a copy of your work to any other person, or postyour solutions on any publicly accessible repository.

12 / 18

Page 14: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Collaboration Policy

The plagiarism policy is not meant to discourage interaction ordiscussion among students.

I Discuss assignment questions with instructors, TAs, and yourfellow students.

I However, there is a difference between discussing ideas andworking in groups or copying someone else’s solution. A goodrule of thumb is that when you discuss assignments with yourfellow students, you should not leave the discussion withwritten notes.

I When you write your solution to an assignment, you should doit on your own.

13 / 18

Page 15: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

McGill Francais

In accord with McGill University’s Charter of Students’ Rights,students in this course have the right to submit in English or inFrench any written work that is to be graded.

14 / 18

Page 16: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

My work as a researcher

15 / 18

Page 17: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Wet lab vs. bioinformatics

16 / 18

Page 18: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Interesting applications

Phylo: solve a puzzle and help genetic disease researchWeb page: http://phylo.cs.mcgill.ca/

17 / 18

Page 19: Welcome to COMP 204 Computer Programming for Life Sciences!blanchem/204/Slides/1/... · Restrictions: Only one of COMP 204, COMP 202, COMP 208, or COMP 364 can be taken for credit

Interesting applications

EteRNA: Solve puzzles. Invent medicineWeb page: http://www.eternagame.org/web/

18 / 18