Instructor and contact information:
Instructor: Sergio Rey
Office: Coor Hall 5612
Office hours: Tuesdays 2-3 or by appointment
Email: [email protected]
Course prerequisites: CSE 110
Course description:
Contemporary research in analytical geography has placed an increasing demand on the computational skills of its practitioners. The advances in spatial data analysis and geographical modeling have also largely out-paced the capabilities of standard statistical software. At the same time, the multidisciplinary nature of the spatial sciences often translates into the need to deal with disparate data sources, formats and programming languages. As such, students undertaking research are often confronted with a daunting set of tasks that are seldom covered in an integrated fashion in course work. This course is designed to address this situation.
Course learning outcomes:
-
Introduce geography students to basic computational concepts using Python, an object-oriented scripting language, for data processing, analysis and application development in geographic research.
-
Familiarize students with the fundamental tools used in collaborative programming and research projects in an open source and cross-platform environment.
-
Provide students with skill sets that are in high demand within academic GIScience and commercial GIS development.
Grading policy:
Grading in the course will be based on the following point system:
Component | Points |
---|---|
Exercises | 360 |
Exam 1 | 120 |
Exam 2 | 220 |
Exam 3 | 300 |
Total | 1000 |
Exams will be based on the readings, discussion forum posts, and exercises. All exams are cumulative. Late exams will not be accepted.
Exercises will be completed and submitted on Github.
Extra credit will be given for accepted pull requests that provide corrections or enhancements to course materials. 10 points for each accepted pull request.
Required and recommended readings:
W: Wentworth, P., et al. (2012) How to Think Like a Computer Scientist: Learning with Python 3. OpenBookProject How to Think Like a Computer Scientist. Denoted as W in schedule.
Chacon, S. and Straub, B. (2014) Pro Git. Git: Distributed Even if Your Workflow Isn't. Denoted as C in schedule.
Other readings to be assigned.
Schedule
Week | Date | Topics | Readings | Assigned | Due |
---|---|---|---|---|---|
1 | 8.22 | Course Introduction, Intro to github | C1, C6 | [E0 GitHub]((ipynb_md/10_git.html) | |
2 | 8.29 | Software installation, shells, git local | Install All, Install Windows, Install Mac, C2, C3 | E1 Shells | E0 |
9.05 | Labor Day Holiday | ||||
3 | 9.12 | git distributed, git collaboration | C4, C5, C6 | E2 git collaboration | E1 |
4 | 9.19 | Python Introduction, Test Driven Development | WP, W1 | E3 Testing | E2 |
5 | 9.26 | Continuous integration, Operators-operands | Exam 1 | E3 | |
6 | 10.03 | Sequences, Dictionaries, Sets | E4 | Exam 1 | |
10.10 | Fall Break | ||||
7 | 10.17 | Functions, Modules | E5 | E4 | |
8 | 10.24 | Object orientation | E6 | E5 | |
9 | 10.31 | Composition | Exam 2 | E6 | |
10 | 11.07 | Functional programming | E7 | Exam 2 | |
11 | 11.14 | NumPy and SciPy | E8 | E7 | |
12 | 11.21 | Visualization | E9 | E8 | |
13 | 11.28 | Geospatial Python | Exam 3 | E9 | |
12.05 | Exam 3 |
Academic integrity
The ASU student academic integrity policy lists violations in detail. These violations fall into five broad areas that include but are not limited to: cheating on an academic evaluation or assignment, plagiarizing, academic deceit, such as fabricating data or information, aiding academic integrity policy violations and inappropriately collaborating, or falsifying academic records. For more information about the ASU student academic integrity policy, please use the following web link
http://provost.asu.edu/academicintegrity
Disability accommodations
Qualified students with disabilities who will require disability accommodations in this class are encouraged to make their requests to me at the beginning of the semester either during office hours or by appointment. Note: Prior to receiving disability accommodations, verification of eligibility from the Disability Resource Center (DRC) is required. Disability information is confidential.
Code of Conduct
As course instructor, I am dedicated to providing a harassment-free learning experience for all students, regardless of gender, sexual orientation, disability, physical appearance, body size, race, religion, or choice of operating system. All course participants are expected to show respect and courtesy to other students throughout the semester. As a learning community we do not tolerate harassment of participants in any form.
All communication should be appropriate for a professional audience including people of many different backgrounds. Sexual language and imagery are not appropriate in this course.
Be kind to others. Do not insult or put down other students. Behave professionally. Remember that harassment and sexist, racist, or exclusionary jokes are not appropriate for GIS321.
Students violating these rules may be asked to leave the course, and their violations will be reported to the ASU administration.
This code of conduct is an adaptation of the SciPy 2016 Code of Conduct.
** License **
All the software we will be using in this course falls under an open source license. Additionally, we build on the shoulders of many giants in this course and will be adapting materials from the Software Carpentry project that has generously provided instructural materials under a Creative Commons Attribution License.
All materials associated with this course are placed under the Creative Commons Attribution License.