Welcome to the course webpage for GEOG 463/563 at Oregon State University! This repository will contain all resources for the course.
Prof. James Watson will be your instructor. That's me. Communicate with me in class, or email me at james.watson@oregonstate.edu.
This course explores data science methods used to gather, validate, organize, analyze, and summarize large amounts of environmental and ecological information. Focuses on developing analytical workflows that are efficient, reproducible, and modular using scientific coding languages, and version control and collaborative coding environments. Examines case studies including climate change, biodiversity assessments, epidemic modeling, marine spatial planning, and natural resource management.
Upon completion of this course, students will be able to:
- Design and conduct a research project involving the analysis of environmental data
- Apply best practices in data collection, cleaning, wrangling, analysis, and visualization
- Read and write scientific code
- Implement best practices in scientific programming to promote reproducible research
- Manage collaborative research projects using a version control system
In addition, graduate students will be able to:
- Select and cite relevant research articles
- Synthesize their findings into a broader environmental context
This is a flipped course where students will learn by doing. The two main learning mechanisms are 1) weekly github repo development and 2) a term project (that can be done in teams).
Every week, students will work in teams to create Github repos for various topics. The instructor will provide instruction for the challenge of the week. Then, students will work on the weekly assignment in class. The weekly assignments are focused on gaining experience working with Github, through collaborative coding/writing and version control. Specifically, each week
- The instructor will provide a short primer (~10mins) on the week's challenge. Weekly challenges will focus on developing Github README.md pages for different topics of relevance to analytical workflows
- Students will then break into groups and start working on the challenges in class time. This will involve Forking the class repo and working collaboratively.
- At the end of the week, students will merge their contributions to the class repo
- The following week, students will conduct peer-review on each other's repo's, and provide feedback. Students then have an opportunity to make updates before submitting their repo as an assignment in Canvas.
The term project is the main focus on the course. Students will work on their term project in small groups, and there will be assignments periodically through the term on their projects. The project assignments are:
- 1-page project pitch (Week 3)
- Mid-term 10 min presentation (Week 5)
- End-term 15 min presentation (Week 10)
- Project GitHub Repo (by end of Finals)
In addition, every Monday and Thursday, the instructor will hold "open" and "close" meetings: this will involve students detailing what they will individually work on in the week, and what they have done respectively. This will be documented on this google doc:
https://docs.google.com/document/d/16Rht2inZYq5yl8y89sqppsBJeLIvgdFAI-DV6jqCMfE/edit?usp=sharing
-
Week 0:
- Lecture: Introduction to the course, learning how to learn, getting to know each other, starting term projects
- Review these Repos: 1) Weekly assignments, 2) Github version control
-
Week 1:
- Lecture: the 1-page pitch, project management (setting up your project GitHub repo, operating as a team)
- GitHub topics: Terminal_IDEs_Shell, Scientific_coding_in_R
-
Week 2:
- Lecture: getting data, wrangling data, QCQA, Exploratory data analysis, LLMs
- Github topics: Exploratory_data_analysis, Plotting using code
-
Week 3:
- Lecture: making good short presentation, plotting with code, workflow viz
- Github topics: Workflow visualization, LLMs
-
Week 4:
- Project assignment 10 minute presentation
- Independent work on projects
-
Week 5:
- Lecture: project reporting (GitHub repo README / report writing), GEE, HPC
- GitHub topics: Google_earth_engine, High performance computing
-
Week 6:
- Lecture: Your choice
- GitHub topics: Your choice, Your choice
-
Week 7: Machine Learning I
- Dr. Jack Buckner to give lectures on Machine Learning that will blow your mind
- GitHub topics: none
-
Week 8:
- Independent work on projects
-
Week 9:
- Independent work on projects
-
Week 10:
- End-term project GitHub Repo and presentations
| Week | Mon Lecture | Tues Lab | Wed Lecture | Lead Instructor | Project Milestones |
|---|---|---|---|---|---|
| 0 | X | 24-Sep | X | James | NA |
| 1 | 29-Sep | 30-Sep | 1-Oct | James | NA |
| 2 | 6-Oct | 7-Oct | 8-Oct | James | NA |
| 3 | 13-Oct | 14-Oct | 15-Oct | James | 1-page project pitch |
| 4 | 20-Oct | 21-Oct | 22-Oct | James | NA |
| 5 | 27-Oct | 28-Oct | 29-Oct | James | Mid-term presentation |
| 6 | 3-Nov | 4-Nov | 5-Nov | James | NA |
| 7 | 10-Nov | 11-Nov | 12-Nov | Jack | NA |
| 8 | 17-Nov | 18-Nov | 19-Nov | Jack | NA |
| 9 | 24-Nov | 25-Nov | 26-Nov | James | NA |
| 10 | 1-Dec | 2-Dec | 3-Dec | James | End-term presentation, Project GitHub Repo finished |
- No finals (go do some research and publish a paper instead)
- X means no class
Assignments will be managed on Canvas. Points are as follows
Week 2: 5 points (5%)
Week 3: 5 points (5%)
Week 4: 5 points (5%)
Week 6: 5 points (5%)
Week 7: 5 points (5%)
Week 3: 1-page pitch 12 points (12%)
Week 5: mid-term presentation 16 points (16%)
Week 10: end-term presentation 10 points (10%)
Week 10: Project Report 17 points (17%)
Week 10: Project GitHub Repo finished 20 points (20%)
Total points: 100 (100%)
