additional resources#

On this page, you will find links to additional resources/materials relevant to the material covered in EGM722 - Programming for GIS and Remote Sensing.

reading list#

In preparing the materials for this module, I have used the following textbooks - they are not required reading, but if you have access through a library or the means to pick up a (used) copy, they can help fill in some of the details.

  • Garrard, C. (2016). Geoprocessing with Python. Manning. ISBN 9781617292149 [Publisher link]

  • Sweigart, A. (2019). Automate the Boring Stuff with Python (2nd ed.). no starch press. ISBN 9781593279929 [Website]

git and version control#

  • Git Handbook: A good, short introduction to git - what it is and why it’s worth using.

  • Understand the GitHub flow: A short explainer on the basic workflow for git - how to use branches to more easily keep track of your projects.

  • GitHub Training & Guides: YouTube channel for GitHub Training & Guides, which has a number of short-ish videos to help you get started with git and GitHub.

  • Learn Git Branching: A great interactive tutorial that will help you get some practical experience with different git commands.

  • Github without the command line: CodeRefinery is a project within the Nordic e-Infrastructure Collaboration that provides training courses and workshops in scientific programming and computing. This course provides a good introduction to using GitHub (and git) without the command line tools.

python resources#

  • Automate the Boring Stuff with Python: Series of YouTube lessons tied to the material covered in Automate the Boring Stuff with Python.

  • PyQGIS Developer Cookbook: If you’re interested in using python for GIS analysis using QGIS, this is a great resource - it’s a combined tutorial and reference guide.

  • Learn Python for free: This course has 59 interactive lessons (totalling 5 hours), with an interactive interpreter to help you follow along with the lessons. This course covers a wide range of topics, including a number of topics that we won’t touch on in this module.

  • Scientific Computing with Python: Another free online python course, this one has 56 lessons, including a number of example projects for you to test your knowledge.

  • learnpython.org: This website has a number of tutorials that cover the basics of programming in python, plus some more advanced topics.

  • numpy docstring formatting guide: Link to the numpy style guide section on formatting docstrings.

  • google docstring and comment formatting guide: Link to the Google style guide for formatting docstrings and comments.

  • The Python standard library: Links to the documentation for the python standard library, which provides a number of useful modules that are automatically provided with a python installation.

python and arcgis#

Note

Please note that ArcGIS 10.x uses python 2 by default; as of 1 January 2020, python 2 has been sunset, which means that it will no longer be improved or maintained. As ESRI are also planning to phase out ArcGIS 10.x, I will not be providing resources for using python in ArcGIS 10.x. You can still find plenty of resources online, but I don’t recommend it.

  • Python in ArcGIS Pro: Introduction to using python functionality in ArcGIS Pro from ESRI.

  • ArcGIS API for Python Setup: Instructions for installing the ArcGIS API for Python.

  • ArcGIS API Samples: Sample scripts and notebooks that demonstrate the ArcGIS API (application programming interface) for python. To run these, you will need to have the ArcGIS API for python installed on your computer (as well as ArcGIS Pro) - follow the link above for instructions on doing this.