nl en

Fundamentals of Systems, Data, Models and Computational Thinking


Admission requirements

This course is obligatory for students of the master’s programme Industrial Ecology.


A computer is a tool to amplify your brains and every modern scientist is expected to be able to use a computer in an appropriate manner.

For relatively small tasks, like writing a text, adding a few numbers or making a simple presentation, the usual business oriented packages are adequate. For analysing large datasets, comparing many files, modelling complicated systems or co-operating in a team, more sophisticated tools are needed. Moreover, scientific works demands that all methods and results should be reproducible, which implies the research should be clearly documented and should be open to external examination. This puts responsibility on the scientist to act professionally when working with computers. The Carmen Reinhart and Kenneth Rogoff disaster illustrates the price of sloppiness.

A computer language is not only an interface to control the computer, it is also a unambiguous description of the data structures and algorithms applied in the research. In this course, you will learn to use the programming language Python for scientific work, especially for analysing and visualising datasets that are relevant for Industrial Ecology. You will need a laptop and Python, which is available for all operating systems. The Ipython shell is advised, but any Python version will do.

Course objectives

Students will know the basic concepts of data handling and will understand use of computer languages. Students will be able to convert and query datasets, to analyse and visualize datasets, to synthesize results of queries into a meaningful conclusion and to evaluate quality of data.


See schedules and blackboard TU Delft

Mode of instruction

Attendance to classes is not compulsory. Following any MOOC on Python is suggested. During class, problems and questions will be addressed. For those interested in more fundamental data handling, there will be classes in using the bash shell of Linux. To follow these, you need to have Linux installed on your laptop. Any version will do, though Ubuntu is suggested. This part of the course will not lead to any EC’s and is just for personal development. Likewise, there will be an extra sessions in poster making, for those interested. Those sessions will also not lead to extra EC’s and meant for those wishing to acquire this craft.

Assessment method

You will be expected to go through all the exercises in the book. The course counts for 6 EC. Grades will be based on the exam results. The exam will consist of questions on data structures and algorithms, Python syntax and a practical exercise in cleaning and visualising a dataset. The exam will require the use of a computer.


The lecturer communicates via blackboard TU Delft.

Reading list

We will use the book
Think Python, how to Think Like a Computer Scientist, by Allen Downey.
Green Tea Press, Needham, Massachusetts. Version 2.0.12, May 2013
The book is freely downloadable as


All students have to enroll for course and exam at the start of the course via uSis, Leiden University. For classnumbers see here or here.

Students who are not enrolled to the master’s programme Industrial Ecology have to ask permission from the studyadvisor of Industrial Ecology at least one month before start of the course by use of this form.

Contact information

Drs. R. Huele
Dr. J.F. Dias Rodrigues


More information and the description of the course will be published in the e-studyguide of TU Delft.