Skip to content

jmdelvecchio/geol437-fa24

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GEOL 437 - Computers and Geology

Instructor: Dr. Joanmarie Del Vecchio

Location: McGlothlin-Street Hall 219

Meeting times: Mondays 5:00-6:50pm

Office Hours: Mondays 4-5pm or by appointment

Class format

To take advantage of hands-on coding with peers and a mentor, this class will be run largely as a flipped classroom. Instructional material will be made available ahead of time in the form of tutorial Jupyter Notebooks and/or recorded lectures with screen captures. You will be expected to come to class having completed any pre-meeting assignments, which will review or teach new skills to be implemented or improved upon during the class meeting. At William and Mary, each credit hour of face-to-face instruction requires a student work two hours out of class student work. This means that for this two credit-hour class, you should be spending four hours a week on pre-meeting activities and wrapping up in-class assignments.

Learning objectives

The primary goal for students for this course is to learn to think algorithmically. But what does that mean? I'd break it down as follows:

  1. Learn coding (and specifically Python) tools for common scientific tasks and identify appropriate uses for these tools

  2. Break down complex scientific tasks (e.g. collecting and organizing data, apply a transformation to a dataset, synthesize results) into a logical flow of calculations or data manipulations using code

  3. Implement functions and methods that transform data for scientific tasks by understanding inputs and outputs for these algorithms

  4. Create original analyses and/or data visualizations from "real world" data, either from student research or a topic of interest

Grading

Let's begin by saying that this class is intended to help you build useful and transferrable skills for research and industry - therefore you will get out of this class what you put into it! It's also a 400 level class, so you are expected to know how to manage your time and deadlines (but be in touch if you'd like to talk strategies). Therefore grading will be relatively simple:

  • 60% of your grade will come from completing weekly tutorial material. These will be graded on a scale of (2) satisfactory, (1) unsatisfactory, and (0) missing. You will depart class Monday evening with a head start from your in-class work and instructions on what is "satisfactory," and you will have until 5pm the next Monday to turn in the assignment. Because you will work on the assignment in class, late assignments will not be accepted, but I will drop your two lowest assignment grades this semester.
  • 40% of your grade will come from a capstone project in which you generate publication-worthy analyses and figures for a dataset or system close to your heart

Class schedule

This schedule is highly subject to change based on class interest - I picked these topics, but if I sense we need more time on something or want to go in a totally different direction, we might!

Date Topic Pre-assignment
9/02/2024 No class - Labor Day Account registration
9/09/2024 Python, numpy, and matplotlib basics Week 2 activities
9/16/2024 pandas, your Excel alternative Week 3 activities
9/23/2024* pandas and plotting practice Week 4 example and instructions
9/30/2024 Conditionals and iterating Week 5 activities
10/07/2024 Geospatial data - vector and raster data Week 6 activities
10/14/2024 Photogrammetry Week 7 activities
10/21/2024 Statistics and plotting - scikit-learn and seaborn
10/28/2024 Numerical solutions I - system of equations
11/04/2024 Numerical solutions II - forward model
11/11/2024 Image segmentation / classification I
11/18/2024* Project work time
11/25/2024 Image segmentation / classification II
12/02/2024 Project lightning talks

(*)Denotes dates where Joanmarie will be out of town - you are encouraged to gather as a class and work through assignments

Each week will have a corresponding folder in the GitHub repo - this will be where your assignments and instructions will live (each week will have its own README.md)

Honor code etc

The university prides itself on creating the nation’s first Honor Code. The Code provides an environment in which trust can thrive and a level playing field for students, ensuring students are evaluated based on their own effort and ability and in which students can be taken at their word. The Code reflects the university’s value of integrity—in our words and our deeds. As an instructor, I strive to provide an environment that promotes integrity. Reasonable measures taken to protect us from temptation are not antithetical to the Honor Code; thus, I reserve the option to proctor exams, provide multiple copies of exams for distribution, and restrict the technology tools students can possess while taking exams. I support the Honor Code and am obligated to report concerns for review and resolution by the Honor Council. As it is your obligation to resolve any perceived lack of understanding of my expectations in advance of submitting any work, I encourage you to contact me with any questions about my course and testing policies. You also are welcome to contact me if you have concerns that any fellow students are not fulfilling their obligation to uphold the Honor Code. All work submitted in this course, whether in draft or final form, must be your own and must be cited appropriately.

Now for the course-specific material:

Unauthorized Aid/Collaboration

Rarely do geoscientists or data scientists code alone (or entirely from memory or the official docs), and I want to acknowledge that by permitting and even encouraging a certain level of collaboration on assignments. Here's a spectrum:

  • I fully endorse asking a classmate for assistance in understanding an error message and how to resolve it.
  • I encourage you to share tips and tricks about skills like plot formatting, efficient list comprehension, helpful functions, with the caveat that you will not simply copy and paste from each other but rather help each other fully embrace the power of computational methods.
  • I will insist that you first consult Google and related resources (StackExchange, StackOverflow, etc) before turning to a classmate or myself when you are stuck. If you use a code snippet from one of the above websites, add the URL as a comment in your code.
  • I do not permit the use of generative AI without express permission from Joanmarie, which includes a discussion and understanding of the benefits and drawbacks to using ChatGPT's coding skills (tl;dr: it definitely steals from repos without permission and is sometimes wrong, but maybe you are truly a 1 in 1,000 instance where truly no one else has asked your question on StackExchange). I will consider mindless copy-and-paste from ChatGPT plagiarism. 99% of what we are doing in this class can be troubleshooted with Google.

Plagiarism

Plagiarism is “the presentation, with intent to deceive, or with disregard for proper scholarly procedures of a ignificant scope, of any information, ideas or phrasing of another as if they were one’s own without giving appropriate credit to the original source.” (the faculty resource that lists this definition does not, in fact, cite this definition...). See above, and know that I can copy and paste your code to search for where you may have lifted it from, so please don't do that.

Community

The W&M Geology Department welcomes, supports, engages, and celebrates the broad range of backgrounds and experiences in our community. We affirm our individual and collective responsibility for creating and fostering a respectful, cooperative, inclusive, and equitable campus environment for all individuals, regardless of race, ethnicity, nationality, culture, religion, political beliefs, gender, gender identity / expression, sexual orientation, age, disability, or marital, parental, or veteran status. All people have the right to be addressed and referred to in accordance with their personal identity. In this class, you will have the chance to indicate the name that you prefer to be called and the pronouns with which you would like to be addressed.

Student Accessibilty Services

William & Mary accommodates students with disabilities in accordance with federal laws and university policy. Any student who feels they may need an accommodation based on the impact of a learning, psychiatric, physical, or chronic health diagnosis should contact Student Accessibility Services staff at 757-221-2512 or at [email protected] to determine if accommodations are warranted and to obtain an official letter of accommodation. For more information, please see www.wm.edu/sas.

Mental and Physical Wellbeing

William & Mary recognizes that students juggle different responsibilities and can face challenges that make learning difficult. There are many resources available at W&M to help students navigate emotional/psychological, physical/medical, material/accessibility concerns, including:

  • The W&M Counseling Center at (757) 221-3620. Services are free and confidential.
  • The W&M Health Center at (757) 221-4386.
  • To seek assistance for interpersonal, academic, and wellness challenges, please contact Care Support Services at wm.edu/care ([email protected]).
  • For a list of other resources available to students, see here

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published