GIS 329 GIS Programming

School of Environment and Geomatics

GIS 329 GIS Programming equips students with essential Python programming skills for automating geospatial data manipulation, analysis, and map production using Esri's ArcPy and mapping modules. Students will learn to utilize Integrated Development Environment (IDE) effectively, develop geoprocessing tools, and solve real-world geospatial problems.

Prerequisites: Admissions into ADGIS/BGIS program

Corequisite: GIS 302

Accessibility Services Notice

Students who would like an academic accommodation and who have a documented disability should contact Accessibility Services, if they have not already done so.

Transfer Agreements

Course to Course transfer – NoBlock Transfer – Nobctransferguide.ca
Course Details
Total number of weeks15
Total Credits
Total Hours45
Typical hours per week breakdown
Lecture3

Learning Outcomes

Upon successful completion of this course, the learner will be able to:

  1. Make use of control flow statements to determine a program’s order of execution
  2. Obtain and output GIS related data with user input and file I/O
  3. Select appropriate data types for variables and constants
  4. Develop simple to moderate programs using the Python programing language
  5. Make use of sound software development practices to test and debug code using an Integrated Development Environment (IDE)
  6. Apply the fundamentals of python programming to scripting and automating the ArcGIS Desktop software package using the ArcPy Application Programming Interface (API)
  7. Employ a wide range of Python’s feature set, including a selection of the standard library and object oriented programming, to write reusable modules and functions
  8. Solve complex problems by deconstructing them into smaller atomic pieces

Teaching and Learning Approach

This course will include a mix of theory, discussion, demonstration, guided application, and independent study.

Learning Resources

Required: Gaddis, Tony. Starting out with Python. Pearson Education, Inc, 2023. ISBN-13: 9780137871209. Python can be downloaded from http://www.python.org/getit/ .

Detailed Course Content, Topics, and Sequence Covered

1. Introduction to Python Programming, and Variables. Expressions and Data Types Mathematical Operations 2. Strings, user input and output 3. Sequences : Lists, tupples and dictionaries 4. Booleans, comparisons and boolean logic 5. Program Control – for and while Loops 6. Functions, Modules, and Program Structure Geoprocessing with python Quizs 7. Midterm Exam 8. The Arcpy Module - Automating geoprocessing with Python 9. Cursors. Using python to query or modify attribute data of spatial files 10. Map Automation - using python to modify elements with in a map 11. Working with files and directories. Reading modifying and writing files 12. Final Project discussion and initiation 13. Final Project Implementation 14. Final Project Implementation 15. Final Project Presentations

Assessment

TitleLearning OutcomesValue
Programming Exercises45%
Quizzes15%
Midterm20%
Final Project20%
Total100%

Grading Table

Standard Academic and Career Programs Grading Table

PercentageLetter GradeGPA
90-100A+4.33
85-89A4.00
80-84A-3.67
76-79B+3.33
72-75B3.00
68-71B-2.67
64-67C+2.33
60-63C2.00
55-59C-1.67
50-54P1.00
0-49F0.00
DNW0.00

See the Academic Calendar for General Information including how to withdraw from course(s) and other regulations.

Disclaimer

Information contained in this course outline is correct at the time of publication. Content of the course is revised on an ongoing basis to ensure relevance to changing educational, employment and market needs. The instructor will endeavor to provide notice of changes to students as soon as possible. The instructor reserves the right to add or delete material from courses.