Programming in Python

Basic Principles and Practical Experience

Programming is a true twenty-first century skill, allowing you to really explore the wonderful – and crucial – world of data and computers. Aimed at beginners and near-beginners, this course teaches you basic principles of programming through hands-on exercises using real-world examples. It backs up this practical experience with a solid grounding in the logical thinking and structural approach to problem-solving which are second nature to the proficient programmer.

Course levelAdvanced Bachelor/Master, open to PhD staff and professionals
Session 2 
20 July to 3 August 2019 (course is full)
Recommended course combination 
Session 1: Data Analysis in R
Session 3: Big Data Management and Analysis in Linux
Co-ordinating lecturerUnmesh Joshi
Other lecturersTBA
Form(s) of tuitionLectures, guest lectures, practicals, presentation, excursion
Form(s) of assessmentTBA
ECTS  3 credits
Contact hours64
Tuition fee€1150
Any student or professional with little or no experience of programming who wants to learn its basic principles.

We use the programming language Python. Developed by Guido van Rossum in Amsterdam in the 1990s, this is widely used, easy to learn, accessible, available for many operating systems and possesses a large standard library of system functions. Moreover, we will be tailoring the exact content of the course to your progress. Bearing this in mind, topics we intend to cover include:

  • Introduction to Python.
  • Oerator, types, variables.
  • Lists and loops.
  • Functions, scope, import.
  • File and I/O manipulation, dictionaries, string manipulation.

The course culminates with an assignment using real-world data, so that by the end of it you have developed, written and presented a program of your own!

Visit to the CWI, the Dutch national research institute for mathematics and computer science and the birthplace of Python, followed by a social gathering.

At the end if this course, you:

  • Have gained experience in thinking in an abstract and logical way. 
  • Are able to structurally solve simple computational problems.
  • Understand the basic principles of programming.
  • Have acquired some programming ability in Python.
  • Have acquired some expertise in writing code and debugging programs. 
Slides from the lectures and further reading will be provided during the course.


Unmesh Joshi is a PhD student in Computer Science department. He works with Knowledge Graphs and deductive databases. Before starting the PhD, he had worked as a software developer for Amazon in Seattle. He has penchant for programming especially in C++ and Python and he volunteers as a teacher in his spare time.

“Python programming gives you a singular ability to write applications for every field there is!"

Unfortunately it is not possible to apply anymore as the course is full.
Facebook-icoon   linkedin-icoon   Instagram-icoon