| 
 Postgraduate Course: Python Programming for the Life Sciences (BICH11008)
Course Outline
| School | School of Biological Sciences | College | College of Science and Engineering |  
| Credit level (Normal year taken) | SCQF Level 11 (Postgraduate) | Availability | Not available to visiting students |  
| SCQF Credits | 10 | ECTS Credits | 5 |  
 
| Summary | This course is aimed at those with no prior experience of programming. Therefore, the course will consist of introductory programming learning material presented in the Python language. All material and teaching will be available online through Learn and Collaborate. |  
| Course description | This course is aimed at those with no prior experience of programming. Therefore, the course will consist of introductory programming learning material presented in the Python language. All material and teaching will be available online through Learn and Collaborate, and will consist of: Exercises to demonstrate the main principles of computer programming through hands-on activities
 Video lectures to explain and expand on more difficult points
 Collaborate flipped classrooms  to provide face-to-face contact time with lecturers
 Group online discussion forum to allow communication between students
 |  
Course Delivery Information
|  |  
| Academic year 2024/25, Available to all students (SV1) | Quota:  40 |  | Course Start | Semester 2 |  Timetable | Timetable | 
| Learning and Teaching activities (Further Info) | Total Hours:
100
(
 Lecture Hours 20,
 Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
78 ) |  
| Assessment (Further Info) | Written Exam
0 %,
Coursework
100 %,
Practical Exam
0 % |  
 
| Additional Information (Assessment) | Successful completion of programming exercises and production of correctly functioning code 50% Successful completion of group-based coding project and production of correctly functioning program 50%
 |  
| Feedback | Expected output to the exercises will be provided during each sessions so students can check their code is functioning correctly Model answers (code) to all exercises will be distributed the following week so that students can see how the correct output is generated.
 Students will be instructed in the meaning of Python error messages and other debugging skills so that the computer will provide meaningful feedback as the student works
 The formative group project in week 5 will provide instant feedback to students- their program will either work or not and in addition more nuanced feedback from a lecturer on the strengths and weaknesses of their work will be provided
 |  
| No Exam Information |  
Learning Outcomes 
| On completion of this course, the student will be able to: 
        Describe the growing importance of programming and relevance to the Life SciencesExplain the capabilities and limitations of algorithmsGive examples of currently intractable problems that will be solved in the future through codingUse coding basics:  simple variables, string operators, arithmetic operatorsSolve examples problems via writing functional code: functions, complex variables (arrays), applyingan example function |  
Reading List 
| Nine Algorithms That Changed the Future, MacCormick, J. (2013)Nature Volume  440  Number  7083 Special  Issue,  How  Computers  will  Change  the  Face  of  Science (2006)Python for Biologists: A complete programming course for beginners, Jones M.(2013) |  
Additional Information
| Graduate Attributes and Skills | Students will acquire a number of the transferable skills specified in the Vitae Researcher Development Framework (Domains A, B and D) and the CBI's Future Fit higher education report : Enquiry: students will be confident in their ability to successfully search for and identify programming knowledge resources.
 Personal and intellectual autonomy: Students will become accustomed to solving programming problems autonomously.
 Communication: Students will be familiar with online communication, collaboration and knowledge transfer.
 Personal effectiveness: Flexibility; many students have limited exposure to maths/computation in which there is more than one 'right' answer, but in programming, there is always more than one way to do it.
 Application of numeracy and information technology: Students will advance beyond traditional 'IT Skills' learning (which usually consists of learning how to use software packages such as Word) and will understand what makes such programs work 'under the bonnet'.
 The emphasis on interdisciplinary training (computing, biology and mathematics) provides novel opportunities for graduates.
 |  
| Keywords | Python,Programming,Life Sciences |  
Contacts 
| Course organiser | Dr Douglas Houston Tel: (0131 6)50 7358
 Email: DouglasR.Houston@ed.ac.uk
 | Course secretary | Ms Louise Robertson Tel: (0131 6)50 5988
 Email: Louise.K.M.Robertson@ed.ac.uk
 |   |  |