Python Lessons

This page contains links to all of the lessons that form part of our introductory ‘Code Camp’ for first-time programmers. You should have already completed the Setting Up page and have Anaconda Python and Jupyter read to go!

About the Lessons

The lessons are all hosted on a code-sharing web site called GitHub which allows us to create and maintain versions of the introductory notebooks. But to make life easy for you we are linking to each notebook separately here so that you can download and save the file directly to the right location.

As noted on the ‘Getting Started’ page, you have two ways of working with these notebooks:

  1. Via Binder, which requires no installation or configuration (but which will not save the state of your notebooks if you don’t download them when you’re done).
  2. Via your own computer, which requires installing either Docker or Anaconda Python (the latter is recommended only for those with less than 8GB of RAM and/or Windows Home 10).

If you are using approach #2 then we suggest that you create a folder named ‘Code Camp’ in your Dropbox folder and save all of these notebooks into that folder. Note: you will need to Right+Click/Ctrl+Click on the links below in order to save them to your Code Camp folder.


The content and structure of this teaching project itself is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 license, and the contributing source code is licensed under The MIT License.

Bonus Content!

Finding More Resources

If ‘Code Camp’ has whetted your appetite and you want to get more stuck into learning Python without waiting for our classes to start… try these resources:

  • Think Python: the 2nd edition has been updated for Python3.
  • Programming in Python: is a good set of interactive lessons.
  • Plotting and Programming in Python: this will take you into material covered in our first full module so it might not be a bad place to really get stuck in in preparation for the module.
  • The Unix Shell: this will be really useful in the longer run. On Windows the equivalent is the PowerShell.
  • Version Control with Git: we use GitHub to manage our own course material and most data scientists and software developers make heavy use of version control in order to track and combine work done by different people, ensure that everything is backed up, and to help to track down bugs… a bit more on this below.
  • For Physical Geographers there are a number of advanced tutorials on Earth Data Science.

More about Git & Github

We’ve mentioned that Code Camp is stored on Github, but what the heck is that???

Github is a website used to store version histories of files containing code; you can think of it as a “Dropbox for programmers”, but it also allows you to easily compare two different versions of your code, to ‘roll back’ to an earlier version (if you break something), and to ‘clone’ or ‘fork’ from work being done and shared by others. Github can do much more than this, but for the moment being let’s stop here. If you are interested in learning more about Git and Github check out these resources: