13th December 2017


Today, Python is the programming language most commonly used by Geospatial professionals. Developing programming skills allows you to further interact with a range of commercial and open source GIS software. It will also allow you to build standalone scripts that will enable the automation of workflows and bring data processing to scale in the cloud. Being able to program will make a positive impact your ability to further your exploitation and utilisation of Earth Observation data.

I have written code for numerous clients and employers over my career, I want to share this knowledge and experience with you. Some examples of my Python code can be found here.


Courses for individuals – in partnership with GRSG


I am delighted to be working alongside the GRSG to offer training in Python in London. Dates shown below:

4th June 2019 – Beginner  – details below

10am – 4pm 4th June 2019 at Geological Society, Piccadilly, London

The one-day course agenda will cover:

  • Introduction to Jupyter Notebooks
  • Intro to:
    • Python data types (lists, tuples, strings, integers, floats, dicts)
    • Programming basics (loops, if/else statements, operators)
    • Printing variables, getting help and installing libraries
    • Functions and inbuilt functions
    • Slicing lists
  • Working with directories of data
  • Reading and writing textfiles
  • Creating a point Shapefile from a textfile
  • Introduction to NumPy
  • Reading a raster dataset in GDAL
  • Using subprocess to call GDAL functions

Register here, go fast! 10 places are available on first come first served.

Email me for further information info@acgeospatial.co.uk

We have plans for 2 further intermediate courses expanding on the topics on the intermediate course for companies below.


Courses for companies :

I offer two courses on site

These can be customised to meet your organisations requirements delivered at your office. However, when there is interest I do run group training offsite. If you are interested in this please contact me on info@acgeospatial.co.uk.

We will use open source software and open EO data for the duration for both courses. All course code including solutions to challenges will be shared with attendees. This totals  over 20 Python notebooks per course, with detailed explanations and comments.

A general guide to each course content is given below.

1. Aimed at Beginners Fundamentals of Python

  • Fundamentals of Python
  • Advanced lists – Challenge 1
  • Other data types
  • Operators review – Challenge 2
  • Errors – Challenge 3
  • Functions – Challenge 4
  • Conditional statement – Challenge 5
  • Loops – Challenge 6
  • Working with directories – Challenge 7
  • Working with textfiles – Challenge 8
  • Reading a Shapefile
  • Reading Raster data
  • Graphing data – Challenge 9
  • Command line GDAL
  • Raster Boundary (making steps to intermediate level)
  • Fastest image to introduce wider ideas
  • Shapefile QC report – Challenge 10

Learning outcomes:

  • Lays the foundations for use of Python in your everyday work
    • You should begin to address current repetitive tasks with a view to automation in code
      • Saving time and effort
      • Allowing code to be reused in other projects
    • Python doesn’t just have to be used in Geo applications, it can be used cross domain
  • Understand about resolving errors in the code
    • Allows you to quickly write workable code
    • Enables you to take other people’s code and adjust to your own needs

Find the joining instructions here:

Beginner Course Geospatial Python


2. Aimed at Intermediate users (min 1-2 years)

  • GDAL and Numpy working with arrays + Rasterio
  • GDAL – Challenge 1
  • Computer vision display
  • Computer vision 1 – introduction, interactive images
  • Computer vision (combined with directories) – Challenge 2
  • Computer vision – analytics
  • Computer vision – analytics part 2
  • Analytics – Challenge 3
  • Sklearn – pixels and shapefiles
  • Sklearn – Challenge 4
  • Sklearn – Machine learning, filtering on pixels, metric reporting
  • Thinking about different classifications – Challenge 5
  • PostGIS – connection, loading, querying
  • PostGIS – Challenge 6
    — Bonus — A Small segment on raster stats, pandas and geopandas

Learning Outcomes:

  • Learn to Develop Geospatial scripts and integrate them into your workflows
  • Use Python for rapid prototyping of ideas and research.
  • Bring these skills into your workplace and solve business related challenges including
    • Processing high volumes of data
    • Start deriving analytics from satellite data


Contact me info@acgeospatial.co.uk

Both courses are built using Jupyter Notebooks, though the course can be given using other editors. Attendees get to keep the all code, no one gets left behind.



Visit https://github.com/acgeospatial/Geospatial_Course_Example for notebook