https://medium.com/@williams_dev/python-for-gis-unlocking-the-potential-of-scripting-and-automation-episode-5-80ea636f03b7