GEOG 4463 & 5463 - Earth Analytics Bootcamp: August 2018 Syllabus


Course Location & Time

  • Location: ECCS 1B28 (distance learning classroom)
  • Time: M/T/W/Th/F 12:30-3:30p

Instructor & TA

  • Instructor: Dr. Jenny Palomino (jenny.palomino@colorado.edu)
    • Office. SEEC S340

Office Hours

Mondays and Thursdays 6-7pm (U.S. Mountain Daylight Time). See CANVAS for the Zoom meeting information.

If the office hour times do not work for your schedule, please contact Jenny to schedule a time that does work.

Learning Outcomes

At the end of this course, you will be able to:

  • Write code to process data using the Python programming language.
  • Design and write a basic algorithm to solve a scientific challenge or process data.
  • Write well documented, modular code to support open science workflows.
  • Use Git/GitHub.com to track chances in your code and collaborate with interdisciplinary colleagues.
  • Use Shell to interact with Git and to create and interact with directories and files.
  • Organize documents and directories using sound data management approaches.

Course Requirements

All students need a working laptop to use in class each day. The tools used in this course need to be installed on the laptop before the course begins. Students can follow the instructions on Setting up Git, Bash, and Anaconda on your computer to install the necessary tools for your operating system (Windows, Mac, Linux).

Online Participation

If you enrolled in the online section of this course, you can join the course remotely using Zoom. Zoom information will be provided to you on or prior to (if you are an online student) the first day of class.

The Zoom recordings can be accessed by all students in this course via CANVAS, the university learning management system.

Get Help - Piazza Online Forums

There are several ways that you can get help when you get stuck in this class.

Read more about how to use Piazza lower down on this page.

Textbook

There is no required textbook for this course. You will learn about each topic taught in the course from a suite of daily hands-on exercises, presentations, blog posts, texts and other resources throughout the course. As you find other resources that help you through the class, please feel free to share them with the instructor and your classmates through Piazza.

Course Overview

This introductory, multidisciplinary course will provide core scientific programming skills required to efficiently work with a suite of earth systems data in Python.

In this course, you will learn how to:

  • Write modular code using Python to process and visualize different types of data.
  • Use version control to backup and track changes to code.
  • Use Shell to access Git (version control) at the command line and to create and organize directories.

You will also learn how to work collaboratively with colleagues using Git and Github.

This course is technical. You will use the Python programming environment and the Jupyter Notebook interface to work with data. You will code every day! No programming experience is required to take this course.

Course Schedule and Topics

The course format is a condensed to 3 weeks following the CU Augmester schedule. The following topics will be presented over the course of that time.

  • Introduction to the command line interface (CLI) - use Bash/Shell to navigate your computer directory structure, create directories and interface with Git.
  • Use Git and GitHub.com to track changes to text files and code.
  • Introduction to Jupyter Notebook and the Python programming language.
  • Write modular efficient code in Python using functions and loops.
  • Write pseudocode to organize and outline workflows.

The course will culminate with a project rather than a final exam.

Grading

All grading for this course will follow the CU grading policies.

Late assignments are not be accepted in this course.

If there are extenuating / university approved circumstances university-approved activity, illness, injury, family emergency, or religious observance that prevents you from completing an assignment on time, please get in touch with the instructor or the course TA as soon as possible and accommodations will be made for you to turn in your assignment within a reasonable time period.

Grades are calculated using the following percentages assigned to each assignment (see links provided to convert the due date/time to your local time zone):

HW #1 15%

HW #2 15%

HW #3 15%

HW#4 15%

Final Project 30%

Participation 10%

Read more about the requirements for Participation under the Course Policies.

Final Letter Grades

Please use the table below to understand how your numeric grade listed on CANVAS relates to your final letter grade in this course.

ScoreGrade
A93-100
A-90-92
B+87-89
B83-86
B-80-82
C+77-79
C73-76
C-70-72
D+67-69
D63-66
D-60-62
F0-59

Communication

All email messages about this course should include earth-analytics-bootcamp in the subject line and be signed with your full name. Please use your official CU email address when communicating with your course instructors.

If your email is not personal in nature, but rather a question about the homework, issues with the course website, or issues with Python, please:

  1. See if the question has already been asked on Piazza
  2. If the question hasn’t already been asked, please post your question to PIAZZA.

About Piazza

This semester you will use Piazza for class discussion. Piazza will help you get help faster and more efficiently from classmates and myself. Rather than emailing questions to us, post your questions on Piazza.

  1. To get started, be sure to create an account with piazza. You will use this tool on the first day of class, so please do this ahead of time.

  2. You will receive an invitation to join Piazza webpage for this course, once you have enrolled and a few days prior to the course begins. Please email the instructor to get access to Piazza if you don’t have it by the first day of class.

Piazza Rules

It is important that you follow the course guidelines when posting to Piazza.

Do:

  • Post questions that you have about homework assignments
  • Post issues that you find with the website – typos, errors, points of confusion
  • Answer other questions if you can (you will receive participation points for posting on piazza so use it)
  • Upvote questions that you have as well or that you think are written well
  • Be respectful of your peers. All questions related to data and earth analytics are good questions.

Do not:

  • Post any content that is in any way offensive or that violates University codes of conduct (see links below)
  • Post explicit solutions to homework assignments (help each other out but don’t post the answer)
  • Post an entire homework document on Piazza - rather post a small snippet of code that is causing problems and the associated code error

When posting questions about coding issues to Piazza, please do your best to provide an example of the specific code error that you are encountering.

Example. The code

read.cs("filename")

returns this error:

error here

In the example above, the fix would be to make sure your function name is correct.

Course Content

Material pertaining to this course will be communicated through the Course Website. Students are expected to check this website daily for assignment and content updates.

Course Policies

Attendance

Attendance is strongly encouraged for all class sessions, though all course materials are posted online.

Participation

Course participation will be evaluated as a part of this course. Your course participation grade is calculated using a combination of

  1. Answering questions posted by students on the Piazza forum
  2. Participation in discussions and group work in class
  3. Identifying issues with the course website or materials and posting these issues on Piazza
  4. Answering questions on the Piazza forum that are posted by the instructor for group discussion

Classroom Behavior

Students and faculty each have responsibility for maintaining an appropriate learning environment. Those who fail to adhere to such behavioral standards may be subject to discipline. Professional courtesy and sensitivity are especially important with respect to individuals and topics dealing with differences of race, color, culture, religion, creed, politics, veteran’s status, sexual orientation, gender, gender identity and gender expression, age, disability, and nationalities. Class rosters are provided to the instructor with the student’s legal name. I will gladly honor your request to address you by an alternate name or gender pronoun. Please advise the course instructor of this preference early in the semester so that they can make appropriate changes to their records. Please also see the policies for Student Classroom and Course-Related Behavior and the Student Honor Code.

The University of Colorado Boulder (CU-Boulder) is committed to maintaining a positive learning, working, and living environment. CU-Boulder will not tolerate acts of discrimination or harassment based upon Protected Classes or related retaliation against or by any employee or student. For purposes of this CU-Boulder policy, “Protected Classes” refers to race, color, national origin, sex, pregnancy, age, disability, creed, religion, sexual orientation, gender identity, gender expression, veteran status, political affiliation or political philosophy. Individuals who believe they have been discriminated against should contact the Office of Institutional Equity and Compliance. For further details, please also see CU-Boulder’s Discrimination and Harassment Policy and Procedures.

Religious Observances

Campus policy regarding religious observances requires that faculty make every effort to deal reasonably and fairly with all students who, because of religious obligations, have conflicts with scheduled exams, assignments or required attendance. See the policy document on Observance of Religious Holidays and Absences from Classes and/or Exams for further details.

Academic Standards

All students of the University of Colorado at Boulder are responsible for knowing and adhering to the Academic Integrity Policy of this institution. Violations of this policy may include: cheating, plagiarism, aid of academic dishonesty, fabrication, lying, bribery, and threatening behavior. All incidents of academic misconduct shall be reported to the Honor Code Council (honor@colorado.edu; 303-735-2273). Students who are found to be in violation of the academic integrity policy will be subject to both academic sanctions from the faculty member and non-academic sanctions (including but not limited to university probation, suspension, or expulsion). Information on the Honor Code is available from the Honor Code Office. If you have any questions about proper citations, plagiarism, etc., please don’t hesitate to ask!

Students With a Disability

If you have any type of disability (emotional, medical, physical, learning, etc.), there are support systems, resources, and accommodation actions available to you. If you wish to access any of these supports, resources or accommodations, I encourage you to contact Disability Services in the Office of Diversity, Equity and Community Engagement, to secure necessary academic accommodations. Please Note: You are under no obligation to disclose your disability.

If you qualify for accommodations because of a disability, please submit to your professor a letter from Disability Services in a timely manner (for exam accommodations provide your letter at least one week prior to the exam) so that your needs can be addressed. Disability Services determines accommodations based on documented disabilities. Contact Disability Services at 303-492-8671 or by e-mail at dsinfo@colorado.edu. If you have a temporary medical condition or injury, see Temporary Medical Conditions: Injuries, Surgeries, and Illnesses guidelines under Quick Links at Disability Services website and discuss your needs with your professor.

Course Components

Homework Assignments (Subject to Change)

Each week there will be a homework assignments will be due on Fridays and Tuesdays by 8:00 AM (U.S. Mountain Daylight Time). See Grading section for more details on due dates. Use the materials on the course website including the daily exercises, readings, tutorials and links to other resources in addition to skills and concepts that you learn in class to complete the assignment. The instructions to submit each assignment will be included in the assignment instructions.

Final Project (Subject to Change)

Assignments that you complete will provide you with the skills and resources needed to complete the final project. The final project is due by Sunday, August 26th at 8:00 AM (U.S. Mountain Daylight Time).

Important: Please note that the course schedule and content as discussed above is subject to change. This course content schedule is not designed as a contract. Rather, it is an overview guide to the materials that you will review during the semester.