GEOG 485 - GIS Programming and Software Development
This is a sample syllabus.
This sample syllabus is a representative example of the information and materials included in this course. Information about course assignments, materials, and dates listed here is subject to change at any time. Definitive course details and materials will be available in the official course syllabus, in Canvas, when the course begins.
Overview
Welcome to Geog 485 - GIS Programming and Software Development. This course teaches how to automate GIS tasks using the Python scripting language. Automation can make your work easier, faster, and more accurate, and knowledge of a scripting language is a highly desired skill in GIS analysts.
This course dedicates time to programming fundamentals so that the skills learned can be applied to languages other than Python. Your increased ability to adapt to new technologies and programming languages will be the greatest benefit that you get from this course.
Objectives
By the end of this course, you should be able to:
- design and implement solutions in Python to automate geoprocessing tasks;
- demonstrate an understanding of programming concepts, methods, and approaches such as debugging, error checking, and documentation;
- demonstrate an awareness of advanced concepts such as external libraries;
- be aware of and be able to integrate content, examples, and concepts from external resources such as esri.com and stackoverflow.com.
Required Materials
The materials listed here represent those that may be included in this course. Students will find a definitive list in the course syllabus, in Canvas, when the course begins.
Required Textbook
Esri. (2020). Python Scripting for ArcGIS Pro
Required Software
ArcGIS (free to Penn State students)
Complementary Course Materials for Programming Beginners
If you're a programming novice, it is recommended that you also check out the following resources and use them at your own discretion to complement the course materials:
- Esri 3-hour introductory class
- Codeacademy Learn Python 2 class (lessons 1,2,3,8,12,4,5,7, in that order)
Prerequisites
None
Expectations
We have worked hard to make this the most effective and convenient educational experience possible. How much and how well you learn is dependent on your attitude, diligence, and willingness to ask for clarifications or help when you need them. We are here to help you succeed. Please keep up with the class schedule and take advantage of opportunities to communicate with us and with your fellow students. You can expect to spend an average of 12 – 15 hours per week on class work.
Major Assignments
Students earn grades that reflect the extent to which they achieve the learning objectives listed above. Opportunities to demonstrate learning include:
- 5 Individual Projects- 70% of course grade
- 4 Lesson Quizzes - 20% of course grade
- Review Quiz - 10% of course grade
Course Schedule
Week | Topic | Assignment |
---|---|---|
0 | Orientation |
|
1 | Lesson 1: Introduction to GIS Modeling and Python |
|
2 | Lesson 1: Introduction to GIS Modeling and Python (continued) |
|
3 | Lesson 2: Python and Programming Basics |
|
4 | Lesson 2: Python and Programming Basics (continued) |
|
5 | Lesson 3: GIS Data Access and Manipulation with Python |
|
6 | Lesson 3: GIS Data Access and Manipulation with Python (continued) |
|
7 | Lesson 4: Practical Python for the GIS Analyst |
|
8 | Lesson 4: Practical Python for the GIS Analyst (continued) |
|
9 | Final Project |
|
10 | Final Project (continued) |
|