Course manual 2022/2023

Course content

The ability to create, understand and scrutinize computer code is an extremely important skill set throughout academia, but especially so in interdisciplinary work. Computer code and, more generally, computational thinking, forces us to follow standards, be precise in definitions and be explicit about what we assume and what we mean exactly by our concepts or models. Computational thinking enhances our ability to exchange and link ideas, knowledge and data across disciplines.

This course is aimed at : 1) teaching basic coding skills (and some general computational skills) to get concrete scientific data and modelling tasks done, and 2) enhancing creative and critical thinking skills.

The coding skills concern data processing, visualization and the implementation of (mathematical and conceptual) models in computer code. Creative and critical thinking focuses on the translation from algorithm to code, comparison of different implementations, debugging and code documentation.

In this course, we will work with the R programming language and use the RStudio development environment.

Study materials

Practical training material

  • manual at https://uva.sowiso.nl

Software

  • R and RStudio

Objectives

  • explain and give examples of how the R language can be applied to scientific problems.
  • operate an integrated development environment (RStudio) to run code and analyse data.
  • know basic R syntax to run a script and view its output.
  • implement basic mathematical calculations in code.
  • implement basic data manipulation tasks (selecting, merging, aggregating, sorting) in code.
  • handle date-time data, spatial data and text data and implement basic data manipulation tasks on these data types.
  • import and parse different data formats into R.
  • create appropriate figures to visualise data.
  • implement and simulate a simple ODE model based on a mathematical description.
  • implement and conduct simple linear algebra calculations based on a mathematical description.
  • enhance code by removing repetitive parts and turning it into modular code.
  • create a script to implement a given algorithm (in text, pseudo-code and/or mathematical notation).
  • document and evaluate own programming scripts and troubleshoot programming problems ("bugs").

Teaching methods

  • Self-study
  • Lecture
  • Computer lab session/practical training

There are weekly lectures where overarching concepts are explained and an overview of the material for the coming week is provided. To acquire R coding skills and get sufficient practise, students will complete the exercises at  https://sowiso.uva.nl by self study and during computer practicals (two per week). During practicals, students get additional explanation on the material and can ask questions. Attendance to the practical is compulsory.

Learning activities

Activity

Hours

 

Digitale Test

4

 

Computer tutorials

28

 

Lectures

8

 

Self study

44

 

Total

84

(3 EC x 28 uur)

Attendance

Programme's requirements concerning attendance (OER-B):

  • Participation in fieldwork is compulsory and cannot be replaced by assignments or other courses.
  • In case of practical sessions, the student is obliged to attend at least of 90% of the sessions and to prepare himself adequately, unless indicated otherwise in the course manual. In case the student attends less than 90%, the practical sessions should be redone entirely.
  • In case of tutorials/seminars with assignments, the student is obliged to attend at least 7 out of 8 seminars and to prepare thoroughly for these meetings, unless indicated otherwise in the course manual. If the course has more than 8 seminars, the student can miss up to 1 extra meeting for every (part of) 8 tutorials/seminars. If the students attends less than the mandatory tutorials/seminars, the course cannot be completed.

Additional requirements for this course:

For all students (students who follow this course for the first time as well as those who have to retake the course) the computer practicals are compulsory, regardless whether these are online or on-campus. Only 1 of the 7 practicals can be missed.

Assessment

Item and weight Details

Final grade

1 (100%)

Tentamen digitaal

This course assessed by a single graded exam at the end of the course, which makes up 100% of the assessment. The exam will contain the same kind of programming problems as those studied during the course.

Assessment diagram

Learning goal: importance of exam:
#1. implicitly covered everywhere
#2. implicitly covered everywhere
#3. implicitly covered everywhere
#4. 0.1
#5. 0.1
#6. 0.1
#7. 0.1
#8. 0.1
#9. 0.1
#10. 0.1
#11. 0.1
#12. 0.5
#13. 0.5
#14. 0.5
#15. 0.5

 

Students that were enrolled in the course in previous years

Students who were enrolled in the course in previous years are advised to attend all computer practicals, but attendance is not mandatory for them.

Assignments

Students complete project assignments during self-study as well as during the practicals. Each project uses examples from ecology, earth, and environmental sciences to carry out a programming task.

Fraud and plagiarism

The 'Regulations governing fraud and plagiarism for UvA students' applies to this course. This will be monitored carefully. Upon suspicion of fraud or plagiarism the Examinations Board of the programme will be informed. For the 'Regulations governing fraud and plagiarism for UvA students' see: www.student.uva.nl

Course structure

Week nr Topics SOWISO Chapters
1 data types, operators; data I/O 1 and 2
2 data manipulation; visualization 3 and 4
3 control structures, functions; implementing algorithms 5 and 6
4 matrix algebra and simulation models 7 and 8

Timetable

The schedule for this course is published on DataNose.

Honours information

-

Additional information

https://datanose.nl/#course[48612]

 

We vinden het belangrijk dat je je op de UvA en bij Future Planet Studies veilig voelt. Krijg je onverhoopt te maken met ongewenst gedrag of voel je je onveilig, dan kun je terecht bij verschillende personen. Je melding wordt altijd vertrouwelijk behandeld. Kijk op onze website voor meer informatie over waar en bij wie je terecht kunt.

It is important that everyone feels safe at the UvA and Future Planet Studies. We are committed to provide social safety and we offer various forms of support for people experiencing inappropriate or unsafe situations. Consult the UvA website or Future Planet Studies Canvas page for more information and contact info.

Last year's student feedback

Compared to the material from last year, new exercises have been created.
Also overview-lectures to provide an overview of the course are added.

Contact information

Coordinator

  • dr. ir. E.E. van Loon

Staff

  • Walter van Dijk
  • Jacob Vermeule
  • Bart Kranstauber