Study abroad in Edinburgh

Course finder

Semester 1

Data Science in Ecology and Environmental Science (ECSC10038)

Course Website


Ecological Science





Normal Year Taken


Delivery Session Year



Course Summary

Key skillsets in ecological and environmental sciences include quantitative skills such as data manipulation, data visualization, coding, statistics, simulation, and more - together these skillsets can be called data science. With a growing emphasis on the importance of data science in ecological and environmental fields, students are seeking out these quantitative skills for their current academic programmes including dissertation research and future careers. The Data Science in ESS course will promote the development of quantitative skills among honours students (and MSc students when appropriate) using interactive workshops and an online learning platform.

Course Description

The course will introduce a variety of programming languages and coding to the students and we will teach the fundamentals of programming generically. Much of the course content will focus on the programming language R, which is dominant in the field of Ecology and Environmental Sciences, however we will expose students to other programming languages and will encourage them to seek out relevant programming languages and different skillsets as appropriate. Students will not be directly assessed on their command of programming languages (allowing more beginner and advanced students to participate on the same course), but rather how they engage with the quantitative skills being taught in the collaborative coding environment and how they design the teaching of any quantitative skills through the tutorial that they will develop.Online framework and flipped classroomThe course will be run online using the Coding Club website ( and the GitHub platform for version control, reproducible workflows and collaborative working ( There will be no formal lectures in the course. Instead 1.5-hour tutorials and 2-hour online workshops with the teaching team will be held involving student-driven discussion and hands on learning. Students will need to complete Coding Club tutorials each week and study readings and additional resources so that they can bring questions to the tutorials and participate in discussions.Key skills taught1. Version control and collaborative coding2. The basics of functional and object-oriented programming3. Development of workflows for quantitative analysis4. Data manipulation and organisation5. Data visualisation and graphics6. Big Data in Ecology and Environmental Sciences7. Statistics and the linear model8. An intro to hierarchical linear models9. An intro to Bayesian statistics (using the linear model)10. Computing intensive research11. Careers in Data ScienceProgramming languages introducedRGitMarkdownHtmlStanJavaScriptPythonWeek 1: Introduction to Data ScienceWeek 2: Version control and collaborative codingWeek 3: Functional and object-orientated programmingWeek 4: Data manipulation and organisationWeek 5: Data visualisation and graphicsWeek 6: Linear modelsWeek 7: Hierarchical modelsWeek 8: An intro to Bayesian statisticsWeek 9: Big Data in Ecology and Environmental SciencesWeek 10: Computing intensive research Week 11: Careers in Data Science

Assessment Information

Written Exam 0%, Coursework 100%, Practical Exam 0%

Additional Assessment Information

100% courseworkEngagement via GitHub - maintenance of individual online repository - 20% - 12noon Friday week 11. All work provided in GitHub.Development of a new tutorial- 40% - 12noon Friday week 11. GitHub plus PDF to Turnitin on Learn.Weekly challenges (10% per challenge x 4 challenges) - 40%Challenge 1 set in week 3 - due 12noon Thursday week 5 via GitHubChallenge 2 set in week 5 - due 12noon Thursday week 7 via GitHubChallenge 3 set in week 7 - due 12noon Thursday week 9 via GitHubChallenge 4 set in week 9 - due 12noon Thursday week 11 via GitHub

view the timetable and further details for this course


All course information obtained from this visiting student course finder should be regarded as provisional. We cannot guarantee that places will be available for any particular course. For more information, please see the visiting student disclaimer:

Visiting student disclaimer