CSIS 485 Assignments

Generally, work will be submitted electronically by:

For textbook and other non-programming assignments, name your submission according to the following pattern:

For example, consider a student named Jane Smith with a GFU email address of jsmith15@georgefox.edu; her username is jsmith15. When submitting some "Assignment 7" assignment, she would name her file jsmith15_Assignment7.pdf.

Unless otherwise specified, programs will be submitted as plain-text source code (typically via version control) and non-programming assignments will be submitted as a single PDF file. For non-programming assignments consisting of multiple files, solutions will be submitted as a ZIP archive. No handwritten work will be accepted unless explicitly requested as part of a specific assignment.

For non-programming assignments, ensure that you include the following in each file you submit in an appropriate header or title page format:

For programming assignments, include your GFU email address in a header comment in each file, using the appropriate tags (e.g., a Javadoc or Doxygen @author tag).

New assignments are added as the semester progresses. Check back often.


Engineering Your Soul (EYS)
Read the assigned reading and participate as directed on the course syllabus page.

Due 1/25

Assignment 0
Fill out this brief survey.

Due 1/27

Lab 1: File I/O (10 participation points)
Fork the starter repository on GitLab, taking care to make it private in your own CSIS 485 namespace (not in your "Personal" namespace). Note: some IDEs—such as PyCharm, with its Get from Version Control option—let you start a new project by cloning an existing repository; this is a useful option to choose. You will add and commit all your changes in the master branch in your private repo; you can (and should!) push your changes to GitLab (at least) nightly for safe keeping.

Using the provided landings.py file as a starting point, complete the following:

  • Download the meteorite landings data in CSV format from NASA and move the data file to your project directory
  • Write Python code to open the CSV file and read the name, mass, and year for each meteorite in the file, where each line in the file represents one meteorite
  • As you read each line of the file, keep track of the number (count) of meteorites, the minimum, maximum, and total masses
  • After you've read each line, close the file, then calculate and print the following information:
    • The total number (i.e., count) of meteorites in the file
    • The average mass of meteorites
    • The name, mass, and year of the smallest (i.e., lowest mass) meteorite
    • The name, mass, and year of the largest meteorite
Submit your code by pushing your master branch to GitLab. Your most recent commit in this branch before the deadline will be cloned and used for grading. Note that all of this should be in your private fork, and only visible to you and to me.

This page was last modified on 2021-01-20 at 22:20:44.

Copyright © 2015–2021 George Fox University. All rights reserved.