This course introduces both spatial analysis and Python programming to undergraduate and graduate students, emphasizing hands-on based learning approaches. The ultimate goal of the course is to give students practical experience in programming based approaches in GIS and the ability to independently solve problems in GIS analysis.