Using the Web Site
In Review
This is the web site for GSP 118/318 at Humboldt State University. This web site is effectively an online book and can be followed without the class if desired. The class is designed specifically to give you the background and skills required to solve virtually any GIS problem that can be solved with Python. The approach is to focus on how to write scripts and how to find the information you need on the packages and functions that contain other functionality you'll need.
Each of the web pages is effectively a small mini-lesson that teaches one aspect of Python programming. The lessons build on one another so it is best to start at the beginning and work your way through each one. Each of use is a little different and you may find some lessons very easy and may struggle more with others. Spend more time on those lessons where you struggle and make up your own programs from the material provided. At the end of each section are exercises you can do to get more practice and to check how you are doing. Most lessons also include "Additional Resource " links at the bottom for you to get more in-depth information about the topic.
The code examples and assignments are almost all taken from real examples of coding problems within GIS. The examples on the web page can be copied directly from the web site and pasted into a Python command line or IDE and executed to see the results. We recommend you type in the examples rather than copying and pasting a the typing will reinforce your learning of Python. Then, stop and play with different options in the example until you are comfortable with what the code is doing. Feel free to have a little fun as well!
The class starts with just learning Python both to make your learning easier and because there are many tasks that you can complete just with Python such as reformatting text files. Then, the class continues with how to call ArcGIS functions and to build tools for ArcGIS. The class ends with an introduction into using Python with other software including OpenSource GIS tools. If you are not interested in ESRI products, just skip those sections.
Python is a huge language and you'll find you only need to use a portion of it. This class focuses on the critical portions of the language and those features that are typically used in GIS applications. If there are multiple ways of solving a problem, the class will use those that are most commonly used, are the easiest to understand, and/or are similar to approaches in other languages.
Note: The web site is currently being created. Some pages will have a note at the top indicating if they are "Incomplete" (i.e. content is still being added) or are "In Review".