Python Essentials for GIS Learners

This website hosts materials, exercises and lessons for a 3-day course on Python Essentials for GIS Learners offered to the BK Faculty at TU Delft. Materials and website created by co-instructors Jose Urra Llanusa and Ashley Cryan of the TU Delft Digital Competence Centre.

Workshop overview

Are you interested in learning to program with Python? Are you working with geospatial data or interested in working with geospatial data? Would you like to apply computational thinking and data analysis tools to your research?

This 3-day long workshop is for beginners with zero programming experience. We are going to work with very simple geospatial datasets as examples, but it is not exclusive or focused only on GIS.

By the end of this workshop, you will learn fundamental concepts of programming with python, version control, and how to work with the command line. We will also demonstrate how these tools are useful and make sense in the context of GIS. We hope to get you inspired and motivated to use these tools in your future research!

General considerations for this workshop

Learning how to program and how to use programming in your research field requires practice and exercise like almost everything 😇.

This workshop is composed of two complementary and important sessions. During the morning sessions we provide guidance, examples and space for discussion; and during the afternoon sessions you are required to practice and apply the concepts and knowledge provided with step-by-step exercises. Your instructors will be available and ready to answer questions if you need help, but you should really try to do these on your own (see below for some tips).

Participation guidelines

We have carefully curated and provided exercises with different levels of complexity. We hope that the initial exercises will help you to build confidence and skills to carry on with more advanced ones.

  • We expect you to do the exercises provided, as they are a crucial part of the learning and knowledge transfer process.

  • Try to solve the exercises on your own before asking questions - gaining problem-solving skills in working with code is an important part of the training.

  • Once you have solved the exercises, give a “like” to the first comment of the exercises page so we as instructors know you were able to complete the exercise.

  • Use the comments to ask questions about the exercises. We have set up comments on each exercise page so that workshop is more interactive.

Pre-workshop Checklist

all of these steps should be taken before Day 1 starts. These programs and files will be all we need to complete all three days of the workshop

  • Take the pre-workshop survey to let us know more about you and your learning goals!

  • (Windows users) download and install Git for Windows following the instructions here.

  • (Mac users) Download and install Git for Mac following the instructions here

  • Download and install Anaconda (an all-in-one installer for Python and Jupyter notebooks which we will be using throughout the workshop) following the instructions here

  • Download and install QGIS (free, open-source GIS program) here

  • Download the pre-workshop folder containing data and scripts we will be using from the link we provided and save it to your Desktop with the same name.

  • Download the gapminder files to be used in DAY 2.

If you have any questions about these steps before the workshop, please reach out to Ashley ( and Jose ( before we get started!

Credits and acknowledgements

This lesson material is based upon the Software Carpentries lesson on The Unix Shell, Andrea Cleland’s Turtle Graphics Map repository, the Plotting and Programming in Python lesson from the Software Carpentries, and Gizmo “Can you speak Python?” challenges repository by Marijn van Vliet. We thank the authors for their inspiration and material :)


Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.