Sitemap

A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.

Pages

Posts

Future Blog Post

less than 1 minute read

Published:

This post will show up by default. To disable scheduling of future posts, edit config.yml and set future: false.

Blog Post number 4

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 3

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 2

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

Blog Post number 1

less than 1 minute read

Published:

This is a sample blog post. Lorem ipsum I can’t remember the rest of lorem ipsum and don’t have an internet connection right now. Testing testing testing this blog post. Blog posts are cool.

portfolio

publications

research

test

Install conda/mamba

talks

teaching

Classwork 1: group syllabus activity

, , 1900

Logistics

  • Due: end of class on Wednesday, August 23rd.
  • Submission instructions: make sure that your name is listed at the top of your group’s hand out and it is turned in.

Classwork 10

, , 1900

Logistics

  • Due: Monday, September 25th AoE.
  • Submission instructions: make sure that the required file (2d.c) is in your /classwork/week6/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 11

, , 1900

Logistics

  • Due: Wednesday, September 27th AoE.
  • Submission instructions: make sure that the required file (sum.c) is in your /classwork/week6/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 12

, , 1900

Logistics

  • Due: Monday, October 2nd AoE.
  • Submission instructions: make sure that the required file (read_file.c) is in your /classwork/week7/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 13

, , 1900

Logistics

  • Due: Wednesday, October 4th Friday, October 6th AoE.
  • Submission instructions: make sure that the required file (pass_by_ref.c) is in your /classwork/week7/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 14

, , 1900

Logistics

  • Due: Monday, October 9th AoE.
  • Submission instructions: make sure that the required file (read.c) is in your /classwork/week8/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 15

, , 1900

Logistics

  • Due: Wednesday, October 11th AoE.
  • Submission instructions: make sure that the required file (tokenize.c) is in your /classwork/week8/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 16

, , 1900

Logistics

  • Due: Monday, October 16th AoE.
  • Submission instructions: make sure that the required file (struct.c) is in your /classwork/week9/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 17

, , 1900

Logistics

  • Due: Wednesday, October 18th AoE.
  • Submission instructions: make sure that the required file (point.c) is in your csci112_fall2023/classwork/week9/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 18

, , 1900

Logistics

  • Due: Monday, October 23rd AoE.
  • Submission instructions: make sure that the required files (mor.c, location.h, and coordinates.h) are in your csci112_fall2023/classwork/week10/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 19

, , 1900

Logistics

  • Due: Wednesday, October 25th AoE.
  • Submission instructions: make sure that the required files (main.c, planet.c, planet.h, and Makefile) are in your csci112_fall2023/classwork/week10/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 2: Getting started with Linux, vim, and the course server

, , 1900

Logistics

  • Due: Friday, August 25th AoE (Saturday 6am Bozeman time).
  • Submission instructions: make sure that the required file is in your csci112_fall2023/classwork/week1/fri/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.
  • You get 10 points if your file is in the correct place with the correct name and 0 otherwise.

Classwork 20

, , 1900

Logistics

  • Due: Monday, October 30th AoE.
  • Submission instructions: make sure that the required file (hi.c) is in your csci112_fall2023/classwork/week11/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 21

, , 1900

Logistics

  • Due: Wednesday, November 1st AoE.
  • Submission instructions: make sure that the required files are in your csci112_fall2023/classwork/week11/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 22

, , 1900

Logistics

  • Due: Monday, November 6th AoE.
  • Submission instructions: make sure that the required file (main.c) is in your csci112_fall2023/classwork/week12/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 23

, , 1900

Logistics

  • Due: Wednesday, November 8th AoE.
  • Submission instructions: make sure that the required file (dynamic.c) is in your csci112_fall2023/classwork/week12/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 24

, , 1900

Logistics

  • Due: Monday, November 13th AoE.
  • Submission instructions: make sure that the required file (digit.c) is in your csci112_fall2023/classwork/week13/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 25

, , 1900

Logistics

  • Due: Wednesday, November 15th AoE.
  • Submission instructions: make sure that the required files are in your csci112_fall2023/classwork/week13/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 26

, , 1900

Logistics

  • Due: Monday, November 27th AoE.
  • Submission instructions: make sure that the required file (realloc.c) is in your csci112_fall2023/classwork/week14/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 27

, , 1900

Logistics

  • Due: Wednesday, November 29th AoE.
  • Submission instructions: make sure that the required files are in your csci112_fall2023/classwork/week14/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 28

, , 1900

Logistics

  • Due: Monday, December 3rd AoE.
  • Submission instructions: make sure that the required file (practice.c) is in your csci112_fall2023/classwork/week15/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 29

, , 1900

Logistics

  • Due: Wednesday, December 6th AoE.
  • Submission instructions: make sure that the required files are in your csci112_fall2023/classwork/week15/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 3: Hello, world!

, , 1900

Logistics

  • Due: Monday, August 28th AoE (Tuesday 6am Bozeman time).
  • Submission instructions: make sure that the required file (hello_world.c) is in your csci112_fall2023/classwork/week2/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 4

, , 1900

Logistics

  • Due: Wednesday, August 30th AoE.
  • If you want to see the results of the autograder so that you can check that you will get full credit: create the directory csci112_fall2023/classwork/week2/wed. You don’t need to put anything in it. But that’s the only place that the autograder knows to put your autograder.txt file. You can still get full credit even without doing this, but you won’t get the preliminary results. As usual, you can run the autograder using /public/classwork/week2/wed/autograder.sh.
  • Submission instructions: make sure that the required directory (csci112_fall2023) is in your home directory, that it is a git repository, and that it has a commit with the tag my_first_tag.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 5

, , 1900

Logistics

  • Due: Wednesday, September 6th AoE.
  • Submission instructions: make sure that the required file (remainder.c) is in your /classwork/week3/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 6

, , 1900

Logistics

  • Due: Monday, September 11th AoE.
  • Submission instructions: submit the Linux self-assessment on D2L.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 7

, , 1900

Logistics

  • Due: Wednesday, September 13th AoE.
  • Submission instructions: make sure that the required file (grade.c) is in your /classwork/week4/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 8

, , 1900

Logistics

  • Due: Monday, September 18th AoE.
  • Submission instructions: make sure that the required file (get_num.c) is in your /classwork/week5/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 9

, , 1900

Logistics

  • Due: Wednesday, September 20th AoE.
  • Submission instructions: make sure that the required file (min.c) is in your /classwork/week5/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 2: Hello, World!

, , 1900

Logistics

  • Due: Tuesday, May 11th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Ungraded classwork

, , 1900

Option 1

Work on Lab 1. Remember to put your files in csci112_spring2023/labs/lab1.

Ungraded classwork

, , 1900

Work on Lab 5, or try to split a previous program into header and C files and write a Makefile for it!

Ungraded classwork

, , 1900

Free the memory in your delete_digit function from Wednesday’s classwork. You can check your work using valgrind, though note that you’ll need to delete all of the nodes to free all of the memory!

Lab 1

, , 1900

Logistics

  • Due: Friday, September 1st AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab1.c in your ~/csci112_fall2023/labs/lab1 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab1. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 10

, , 1900

Logistics

  • Due: Friday, November 3rd AoE.
  • Submission instructions: ensure that you have the files for this assignment in your ~/csci112_fall2023/labs/lab10 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab10. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 11

, , 1900

Logistics

  • Due: Friday, November 17th AoE.
  • Submission instructions: ensure that you have the files for this assignment in your ~/csci112_fall2023/labs/lab11 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab11. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 12

, , 1900

Logistics

  • Due: Friday, December 1st AoE.
  • Submission instructions: ensure that you have the files for this assignment in your ~/csci112_fall2023/labs/lab12 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab12. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 13

, , 1900

Logistics

  • Due: Friday, December 8th AoE.
  • Submission instructions: ensure that you have the files for this assignment in your ~/csci112_fall2023/labs/lab13 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab13. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 2

, , 1900

Logistics

  • Due: Friday, September 8th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab2.c in your ~/csci112_fall2023/labs/lab2 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab2. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 3

, , 1900

Logistics

  • Due: Friday, September 15th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab3.c in your ~/csci112_fall2023/labs/lab3 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab3. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 4

, , 1900

Logistics

  • Due: Friday, September 22nd AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab4.c in your ~/csci112_fall2023/labs/lab4 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab4. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 5

, , 1900

Logistics

  • Due: Friday, September 29th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab5.c in your ~/csci112_fall2023/labs/lab5 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab5. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 6

, , 1900

Logistics

  • Due: Friday, October 6th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab6.c in your ~/csci112_fall2023/labs/lab6 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab6. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 7

, , 1900

Logistics

  • Due: Friday, October 13th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab7.c in your ~/csci112_fall2023/labs/lab7 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab7. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 8

, , 1900

Logistics

  • Due: Friday, October 20th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab8.c in your ~/csci112_fall2023/labs/lab8 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab8. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Lab 9

, , 1900

Logistics

  • Due: Friday, October 27th AoE.
  • Submission instructions: ensure that you have the eight files for this assignment in your ~/csci112_fall2023/labs/lab9 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab9. (You should have set up your git repo and practiced tagging a commit in Classwork 4.)

Git

, , 1900

We will use git to manage lab and program submissions in this course. At minimum, this allows our TAs to quickly access your assignments that you “submit” on the server, and allows you to get some basic practice with an extremely important tool in the software development world. You can also choose to use git more extensively to manage your work in this class.

Program 1

, , 1900

Logistics

  • Due: Friday, March 24th AoE extended to Wednesday, March 29th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called program1.c in your ~/csci112_spring2023/programs/program1 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as program1. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.

Program 2

, , 1900

Logistics

  • Due: Monday, May 8th AoE (no late deadline!)
  • Submission instructions: ensure that you have the source code you want us to grade in a file called program2.c in your ~/csci112_spring2023/programs/program2 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as program2. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.

Final

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Quiz1

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Quiz2

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Quiz3

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Quiz4

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Quiz5

, , 1900

On the bubble sheet, please write your full name (as it would appear in D2L). You do not need to fill out any of the other fields (ID, section, etc.). Answer the following questions on the bubble sheet:

Survey 1

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 2

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 1

, , 1900

The mid-course survey is anonymous and will be on D2L under “Surveys”. It can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Classwork 1: Getting started with Linux, vim, and the course server

, , 1900

Logistics

  • Due: Friday, January 20th AoE (Saturday 6am Bozeman time).
  • Submission instructions: make sure that the required file is in your /classwork/week1/fri/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.
  • You get 10 points if your output perfectly matches the sample and 0 otherwise.

Classwork 10

, , 1900

Logistics

  • Due: Monday, February 27th AoE.
  • Submission instructions: make sure that the required file (sort_ints.c) is in your /classwork/week7/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 11

, , 1900

Logistics

  • Due: Wednesday, March 1st AoE.
  • Submission instructions: make sure that the required file (read_file.c) is in your /classwork/week7/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 12

, , 1900

Logistics

  • Due: Monday, March 6th AoE.
  • Submission instructions: make sure that the required file (sum_and_average.c) is in your /classwork/week8/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 13

, , 1900

Logistics

  • Due: Wednesday, March 8th AoE.
  • Submission instructions: make sure that the required file (tokenize.c) is in your /classwork/week8/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 14

, , 1900

Logistics

  • Due: Monday, March 20th AoE.
  • Submission instructions: make sure that the required file (swap.c) is in your /classwork/week9/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 15

, , 1900

Logistics

  • Due: Wednesday, March 22nd AoE.
  • Submission instructions: make sure that the required file (dates.c) is in your /classwork/week9/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 16

, , 1900

Logistics

  • Due: Monday, March 27th AoE.
  • Submission instructions: make sure that the required file (locations.c) is in your /classwork/week10/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 17

, , 1900

Logistics

  • Due: Wednesday, March 29th AoE.
  • Submission instructions: make sure that the required files (locations.c, coordinates.h,location.h) are in your /classwork/week10/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 18

, , 1900

Logistics

  • Due: Monday, April 3rd AoE.
  • Submission instructions: make sure that the required files (lab3.c, lab3.h,print.c., read.c, Makefile) are in your /classwork/week11/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 19

, , 1900

Logistics

  • Due: Wednesday, April 5th AoE.
  • Submission instructions: make sure that the required file (hi.c) is in your /classwork/week11/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 2: Hello, world!

, , 1900

Logistics

  • Due: Monday, January 23rd AoE (Tuesday 6am Bozeman time).
  • Submission instructions: make sure that the required file (hello_world.c) is in your /classwork/week2/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 20

, , 1900

Logistics

  • Due: Wednesday, April 19th AoE.
  • Submission instructions: make sure that the required file (dynamic.c) is in your /classwork/week13/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 21

, , 1900

Logistics

  • Due: Monday, April 24th AoE.
  • Submission instructions: make sure that the required file (llist.c) is in your /classwork/week14/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 22

, , 1900

Logistics

  • Due: Wednesday, April 26th AoE.
  • Submission instructions: make sure that the required file (find_and_delete.c) is in your /classwork/week14/wed/ directory.
  • Note: this assignment is ungraded.

Classwork 23

, , 1900

Logistics

  • Due: Monday, May 1st AoE.
  • Submission instructions: make sure that the required file (flags.c) is in your /classwork/week15/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 3

, , 1900

Logistics

  • Due: Wednesday, January 25th AoE.
  • Submission instructions: make sure that the required file (gotham.c) is in your /classwork/week2/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 4

, , 1900

Logistics

  • Due: Monday, January 30th AoE.
  • If you want to see the results of the autograder so that you can check that you will get full credit: create the directory classwork/week3/mon. You don’t need to put anything in it. But that’s the only place that the autograder knows to put your file. You can still get full credit even without doing this, but you won’t get the preliminary results.
  • Submission instructions: make sure that the required directory (csci112_spring2023) is in your home directory, that it is a git repository, and that it has a commit with the tag lab1.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 5

, , 1900

Logistics

  • Due: Wednesday, February 1st AoE.
  • Submission instructions: make sure that the required file (remainder.c) is in your /classwork/week3/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 6

, , 1900

Logistics

  • Due: Monday, February 6th AoE.
  • Submission instructions: make sure that the required file (grade.c) is in your /classwork/week4/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 7

, , 1900

Logistics

  • Due: Wednesday, February 8th AoE.
  • Submission instructions: make sure that the required file (loops.c) is in your /classwork/week4/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 8

, , 1900

Logistics

  • Due: Monday, February 13th AoE.
  • Submission instructions: make sure that the required file (min.c) is in your /classwork/week5/mon/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 9

, , 1900

Logistics

  • Due: Wednesday, February 15th AoE.
  • Submission instructions: make sure that the required file (2d.c) is in your /classwork/week5/wed/ directory.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment.

Classwork 2: Hello, World!

, , 1900

Logistics

  • Due: Tuesday, May 11th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Ungraded classwork

, , 1900

Option 1

Work on Lab 1. Remember to put your files in csci112_spring2023/labs/lab1.

Ungraded classwork

, , 1900

Work on Lab 5, or try to split a previous program into header and C files and write a Makefile for it!

Ungraded classwork

, , 1900

Free the memory in your delete_digit function from Wednesday’s classwork. You can check your work using valgrind, though note that you’ll need to delete all of the nodes to free all of the memory!

Lab 0 — Bonus

, , 1900

Logistics

  • Due: Friday, February 3rd AoE.
  • Submission instructions: make a commit with the tag lab1 in your course repo on the server.
  • Deadline reminder: for this assignment, no bonus points will be awarded after the deadline.

Lab 1

, , 1900

Logistics

  • Due: Friday, February 10th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab1.c in your ~/csci112_spring2023/labs/lab1 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab1. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and and detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it (i.e., by 6am on Sunday, February 12th) you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 2

, , 1900

Logistics

  • Due: Friday, February 17th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab2.c in your ~/csci112_spring2023/labs/lab2 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab2. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and and detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 3

, , 1900

Logistics

  • Due: Friday, February 24th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab3.c in your ~/csci112_spring2023/labs/lab3 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab3. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 4

, , 1900

Logistics

  • Due: Friday, March 10th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab4.c in your ~/csci112_spring2023/labs/lab4 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab4. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 5

, , 1900

Logistics

  • Due: Friday, March 31st AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called lab5.c in your ~/csci112_spring2023/labs/lab5 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab5. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 6

, , 1900

Logistics

  • Due: Friday, April 28th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in your ~/csci112_spring2023/labs/lab6 directory, and that the snapshot (commit) of your repository containing the version of that directory you want us to grade has been committed and tagged as lab6. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: per the late assignment policy, if you submit after the deadline but within 24 hours of it you will receive a 25% penalty. If you submit within 48 hours you will receive a 50% penalty. After that, no submissions will be accepted.

Lab 7

, , 1900

Logistics

  • Due: Monday, May 1st AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in your ~/csci112_spring2023/labs/lab7 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as lab7. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.
  • Deadline reminder: for this assignment, no lates will be accepted.

Git

, , 1900

We will use git to manage lab and program submissions in this course. At minimum, this allows our TAs to quickly access your assignments that you “submit” on the server, and allows you to get some basic practice with an extremely important tool in the software development world. You can also choose to use git more extensively to manage your work in this class.

Program 1

, , 1900

Logistics

  • Due: Friday, March 24th AoE extended to Wednesday, March 29th AoE.
  • Submission instructions: ensure that you have the source code you want us to grade in a file called program1.c in your ~/csci112_spring2023/programs/program1 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as program1. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.

Program 2

, , 1900

Logistics

  • Due: Monday, May 8th AoE (no late deadline!)
  • Submission instructions: ensure that you have the source code you want us to grade in a file called program2.c in your ~/csci112_spring2023/programs/program2 directory, and that the snapshot (commit) of your repository containing the version of that file you want us to grade has been committed and tagged as program2. See the git lecture and classwork 4 for more details.
  • Note that grading will be done on D2L, so you can see comments and a detailed breakdown of your score there, but you do not need to submit anything there.

Quiz 1

, , 1900

Quizzes will be on Brightspace and can be done on your own time. The first quiz will cover everything we have learned in the course through the lecture on Friday, February 17th, including Linux, vim, and git basics.

Quiz 2

, , 1900

Quizzes will be on Brightspace and can be done on your own time. The second quiz will cover everything we have learned in the course through the lecture on Wednesday, April 5th.

Quiz 3

, , 1900

Quizzes will be on Brightspace and can be done on your own time. The third and final quiz will focus on the material we covered since the last quiz (dynamic memory allocation, dynamic data structures, and bit masking), but about one third of the questions will be on material from earlier in the course.

Survey 1

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 2

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 1

, , 1900

Surveys are anonymous and will be on D2L. They can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Classwork 1: Getting started with Linux, vim, and git

, , 1900

Logistics

  • Due: Monday, May 10th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork1 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 10

, , 1900

Logistics

  • Due: Wednesday, May 26th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork10 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 11

, , 1900

Logistics

  • Due: Tuesday, June 1st no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork11 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 12

, , 1900

Logistics

  • Due: Wednesday, June 2nd no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork12 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 13

, , 1900

Logistics

  • Due: Thursday, June 3rd no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork13 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 14

, , 1900

Nothing due (everyone gets the point!) but please check D2L to make sure that all of your scores are correct.

Classwork 2

, , 1900

Logistics

  • Due: Tuesday, May 11th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 3

, , 1900

Logistics

  • Due: Wednesday, May 12th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork3 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 4

, , 1900

Logistics

  • Due: Thursday, May 13th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork4 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 5

, , 1900

Logistics

  • Due: Monday, May 17th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork5 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 6

, , 1900

Logistics

  • Due: Tuesday, May 18th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork6 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 7

, , 1900

Logistics

  • Due: Wednesday, May 19th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork7 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 8

, , 1900

Logistics

  • Due: Monday, May 24th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork8 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 9

, , 1900

Logistics

  • Due: Tuesday, May 25th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork9 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Classwork 2: Hello, World!

, , 1900

Logistics

  • Due: Tuesday, May 11th no later than 1:35pm.
  • Submission instructions: push a commit with the tag classwork2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lab 1

, , 1900

Logistics

  • Due: Wednesday, May 12th no later than 11:59pm.
  • Submission instructions: push a commit with the tag lab1 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lab 2

, , 1900

Logistics

  • Due: Sunday, May 16th no later than 11:59pm.
  • Submission instructions: push a commit with the tag lab2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lab 3

, , 1900

Logistics

  • Due: Tuesday, May 18th no later than 11:59pm.
  • Submission instructions: push a commit with the tag lab3 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lab 4

, , 1900

Logistics

  • Due: Thursday, May 27th no later than 11:59pm.
  • Submission instructions: push a commit with the tag lab4 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lab 5

, , 1900

Logistics

  • Due: Saturday, June 5th no later than 11:59pm.
  • Submission instructions: push a commit with the tag lab5 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Lecture 1: Getting started with Linux, vim, and git

, , 1900

Today, we are covering the course syllabus and the basic tools we need to complete the work for the course: Linux, vim, and git. These aren’t hard, but they are not intuitive and it will take practice before you get comfortable. Take the time now to go through the tutorials that I point to and you’ll set yourself up for success throughout the course.

Program 1

, , 1900

Logistics

  • Due: Monday, May 24th no later than 11:59pm.
  • Submission instructions: push a commit with the tag program1 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Program 2

, , 1900

Logistics

  • Due: Tuesday, June 1st no later than 11:59pm.
  • Submission instructions: push a commit with the tag program2 to your git repository.
  • Deadline reminder: after the deadline passes, you cannot earn any points for this assignment. If the deadline is approaching, submit what you have in order to earn partial credit.

Quiz 1

, , 1900

Quizzes will be on Brightspace and can be done on your own time. The first quiz will cover everything we discussed through the first week.

Quiz 2

, , 1900

Quizzes will be on Brightspace and can be done on your own time. They will be available the day before the quiz (Thursday). The second quiz will cover everything we discussed through the second week, including things covered in the first week. A practice quiz is available.

Quiz 3

, , 1900

Quizzes will be on Brightspace and can be done on your own time. They will be available the day before the quiz (Thursday). The third quiz will cover everything we discussed through the third week, including things covered in the first two weeks. A practice quiz is available.

Lab 4: Lists

Lab, May 29, 2019

Logistics

  • Due: Friday, May 29th no later than 5pm.
  • Submission instructions: upload your solution, entitled FirstName-LastName-Lab4.py to the BrightSpace Lab 4 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 6: Dictionaries

Lab, June 5, 2019

Logistics

  • Due: Friday, June 5th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab6.py to the BrightSpace Lab 6 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 3

Programming Assignment, Due June 9, 2019

Logistics

  • Due date: Tuesday, June 9th no later than 5 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program3.py to the BrightSpace Program 3 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 1: Getting Started

Lab, June 10, 2019

Logistics

  • Due: Monday, June 10th no later than 5pm.
  • Partner information: complete this assignment individually.
  • Submission instructions: upload two files: (1) a Python file, entitled YourFirstName-YourLastName-Lab1.py, and (2) a .txt file, entitled YourFirstName-YourLastName-Intro.txt, to the BrightSpace Lab 1 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

CSCI 127: The Joy & Beauty of Data

Undergraduate course, Montana State University, Computer Science, 2019

Catalog description: Provides a gentle introduction to the exciting world of big data and data science. Students expand their ability to solve problems with Python by learning to deploy lists, files, dictionaries and object-oriented programming. Data science libraries are introduced that enable data to be manipulated and displayed.

Lab 7: Object Oriented Programming

Lab, June 10, 2019

Logistics

  • Due: Wednesday, June 10th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab7.py to the BrightSpace Lab 7 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 2: Functions and Selection Statements

Lab, June 11, 2019

Logistics

  • Due: Tuesday, June 11th no later than 5pm.
  • Submission instructions: upload your solution, entitled FirstName-LastName-Lab2.py to the BrightSpace Lab 2 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 1

Programming Assignment, Due June 12, 2019

Logistics

  • Due date: Wednesday, June 12th no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program1.py to the BrightSpace Program 1 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 3: Strings, Iteration, and Recursion

Lab, June 13, 2019

Logistics

  • Due: Thursday, June 13th no later than 5pm.
  • Submission instructions: upload your solution, entitled FirstName-LastName-Lab3.py to the BrightSpace Lab 3 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 4

Programming Assignment, Due June 15, 2019

Logistics

  • Due date: Monday, June 15th no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program4.py to the BrightSpace Program 4 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 2

Programming Assignment, Due June 17, 2019

Logistics

  • Due date: Monday, June 17th no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program2.py to the BrightSpace Program 2 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 4: Lists

Lab, June 17, 2019

Logistics

  • Due: Monday, June 17th no later than 5pm.
  • Submission instructions: have one partner upload your solution, entitled FirstName-LastName-Lab4.py to the BrightSpace Lab 4 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lists

Lecture, June 17, 2019

Reading

Chapter 10.

Lists

Lecture, June 17, 2019

Reading

Chapter 10.

Practicum 1 Review

Lecture, June 18, 2019

Practicum Info

The practicum will take place on Tuesday, 6/18 from 2-3pm in Barnard 126, our regular classroom. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion and lists.

Lab 9: Numpy Arrays

Lab, June 18, 2019

Logistics

  • Due: Thursday, June 18th no later than 11:59pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab9.py to the BrightSpace Lab 9 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 5: Files

Lab, June 19, 2019

Logistics

  • Due: Wednesday, June 19th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab5.py to the BrightSpace Lab 5 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Files

Lecture, June 19, 2019

Reading

Chapter 11.

Lab 10: matplotlib

Lab, June 19, 2019

Logistics

  • Due: Friday, June 19th no later than 11:59pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab10.py to the BrightSpace Lab 10 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Files

Lecture, June 19, 2019

Reading

Chapter 11.

Lab 6: Dictionaries

Lab, June 20, 2019

Logistics

  • Due: Thursday, June 20th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab6.py to the BrightSpace Lab 6 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 3

Programming Assignment, Due June 22, 2019

Logistics

  • Due date: Saturday, June 22nd no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program3.py to the BrightSpace Program 3 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 7: Object Oriented Programming

Lab, June 24, 2019

Logistics

  • Due: Monday, June 24th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab7.py to the BrightSpace Lab 7 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 8: Object Oriented Programming

Lab, June 25, 2019

Logistics

  • Due: Tuesday, June 25th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab8.py to the BrightSpace Lab 8 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 9: Numpy Arrays

Lab, June 26, 2019

Logistics

  • Due: Wednesday, June 26th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab9.py to the BrightSpace Lab 9 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Program 4

Programming Assignment, Due June 27, 2019

Logistics

  • Due date: Thursday, June 27nd no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program4.py to the BrightSpace Program 4 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Practicum 2 Review

Lecture, June 27, 2019

Practicum Info

The practicum will take place on Thursday, 6/27 from 2pm to 3pm in BH 254, the computer lab. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion, lists, files, dictionaries, and object oriented programming, with a focus on topics we learned since the last Practicum (files, dictionaries, and object oriented programming).

Practicum 2 Review

Lecture, June 27, 2019

Practicum Info

The practicum will take place on Thursday, 6/27 from 2pm to 3pm in BH 254, the computer lab. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion, lists, files, dictionaries, and object oriented programming, with a focus on topics we learned since the last Practicum (files, dictionaries, and object oriented programming).

Program 5

Programming Assignment, Due July 1, 2019

Logistics

  • Due date: Monday, July 1st no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program5.py to the BrightSpace Program 5 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Lab 10: matplotlib

Lab, July 1, 2019

Logistics

  • Due: Monday, July 1 no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab10.py to the BrightSpace Lab 10 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

matplotlib

Lecture, July 1, 2019

Reading

Read this tutorial up to but not including the section called “Working with text.”

matplotlib

Lecture, July 1, 2019

Reading

Read this tutorial up to but not including the section called “Working with text.”

Lab 11: pandas

Lab, July 2, 2019

Logistics

  • Due: Tuesday, July 2 no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab11.py to the BrightSpace Lab 11 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

pandas

Lecture, July 2, 2019

Reading

Pandas documentation can be found here.

pandas

Lecture, July 2, 2019

Reading

Pandas documentation can be found here.

Program 6

Programming Assignment, Due July 5, 2019

Logistics

  • Due date: Friday, July 5th no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program6.py to the BrightSpace Program 6 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Practicum 3 Review

Lecture, July 5, 2019

Practicum Info

You can either take the Practicum on Wednesday, July 3rd from 2-4pm in BH 126, or on Friday, July 5th from 2-4pm in BH 126. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion, lists, files, dictionaries, and object oriented programming, numpy, matplotlib, and pandas, with a focus on topics we learned since the last Practicum. You can expect about a quarter of the questions to cover material from the first practicum, about a quarter to cover material from the second practicum, and about half to cover material since the second practicum.

Practicum 3 Review

Lecture, July 5, 2019

Practicum Info

You can either take the Practicum on Wednesday, July 3rd from 2-4pm in BH 126, or on Friday, July 5th from 2-4pm in BH 126. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion, lists, files, dictionaries, and object oriented programming, numpy, matplotlib, and pandas, with a focus on topics we learned since the last Practicum. You can expect about a quarter of the questions to cover material from the first practicum, about a quarter to cover material from the second practicum, and about half to cover material since the second practicum.

CSCI 127: The Joy & Beauty of Data

Undergraduate course, Montana State University, Computer Science, 2020

Catalog description: Provides a gentle introduction to the exciting world of big data and data science. Students expand their ability to solve problems with Python by learning to deploy lists, files, dictionaries and object-oriented programming. Data science libraries are introduced that enable data to be manipulated and displayed.

Lab 0: Syllabus Scavenger Hunt

Lab, May 18, 2020

Logistics

  • Due: Monday, May 18th no later than 5pm.
  • Partner information: complete this assignment individually.
  • Submission instructions: upload a .txt file entitled YourFirstName-YourLastName-Lab0.txt to the BrightSpace Lab 0 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

General Introduction

Reading, May 18, 2020

Logistics

  • Due: Tuesday, May 18th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the 13 subsections of Chapter 1. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Simple Python Data, Turtle Graphics, and Iteration

Reading, May 19, 2020

Logistics

  • Due: Tuesday, May 19th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapters 2 and 4. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Lab 1: Getting Started

Lab, May 20, 2020

Logistics

  • Due: Wednesday, May 20th no later than 5pm.
  • Partner information: complete this assignment individually.
  • Submission instructions: upload a Python file entitled YourFirstName-YourLastName-Lab1.py to the BrightSpace Lab 1 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Functions

Reading, May 20, 2020

Logistics

  • Due: Tuesday, May 20th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 6. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Selection

Reading, May 21, 2020

Logistics

  • Due: Tuesday, May 21st no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 7. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Lab 2: Functions and Selection Statements

Lab, May 22, 2020

Logistics

  • Due: Friday, May 22nd no later than 5pm.
  • Submission instructions: upload your solution, entitled FirstName-LastName-Lab2.py to the BrightSpace Lab 2 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Iteration Revisited

Reading, May 22, 2020

Logistics

  • Due: Tuesday, May 22nd no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 8. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Program 1

Programming Assignment, Due May 26, 2020

Logistics

  • Due date: Tuesday, May 26th no later than 5 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program1.py to the BrightSpace Program 1 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Modules, Strings

Reading, May 27, 2020

Logistics

  • Due: Wednesday, May 27th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapters 5 and 9. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Lab 3: Strings, Iteration, and Recursion

Lab, May 28, 2020

Logistics

  • Due: Thursday, May 28th no later than 5pm.
  • Submission instructions: upload your solution, entitled FirstName-LastName-Lab3.py to the BrightSpace Lab 3 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Recursion

Reading, May 28, 2020

Logistics

  • Due: Thursday, May 28th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 16. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Lists

Reading, May 29, 2020

Logistics

  • Due: Friday, May 29th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 10. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Program 2

Programming Assignment, Due June 1, 2020

Logistics

  • Due date: Monday, June 1st no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program2.py to the BrightSpace Program 2 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Quiz 1

Quiz, June 3, 2020

Quiz Info

Quiz 1 will take place on Wednesday, 6/3 via D2L. You can take the quiz any time between 12am and 11:59 pm Mountain Time on 6/3. You will have one hour to complete the short answer and multiple choice portion of the quiz once you start it. You can turn in the coding question as a .py file to the D2L dropbox until 11:59pm Mountain Time. It will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion and lists.

Lab 5: Files

Lab, June 4, 2020

Logistics

  • Due: Thursday, June 4th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab5.py to the BrightSpace Lab 5 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Files

Reading, June 4, 2020

Logistics

  • Due: Thursday, June 4th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 11. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Files

Reading, June 4, 2020

Logistics

  • Due: Thursday, June 4th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 11. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Dictionaries

Reading, June 5, 2020

Logistics

  • Due: Friday, June 5th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 12. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Object Oriented Programming Basics

Reading, June 10, 2020

Logistics

  • Due: Wednesday, June 10th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 17. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Object Oriented Programming

Reading, June 11, 2020

Logistics

  • Due: Thursday, June 11th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 18. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Lab 8: Object Oriented Programming

Lab, June 12, 2020

Logistics

  • Due: Friday, June 12th no later than 5pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab8.py to the BrightSpace Lab 8 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Inheritance

Reading, June 12, 2020

Logistics

  • Due: Friday, June 12th no later than 5pm.
  • Submission instructions: complete the assigned number of activities in each of the assigned subsections of Chapter 19. You do not need to submit anything to Brightspace.
  • Deadline reminder: once this deadline passes, Runestone Interactive will no longer allow you to collect points for completing the activities.

Quiz 2

Quiz, June 17, 2020

Quiz Info

Quiz 2 will take place on Tuesday and Wednesday, 6/16 and 6/17, via D2L. You can take the quiz any time between 12am on Tuesday, 6/16 and 11:59 pm Mountain Time on Wednesday, 6/17. You will have one hour to complete the short answer and multiple choice portion of the quiz once you start it. You can turn in the coding question as a .py file to the D2L dropbox until 11:59pm Mountain Time on 6/17. The quiz will cover the Python topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion and lists, files, dictionaries, and object oriented programming, with a focus on material that we have learned since the last quiz (files, dictionaries, and object oriented programming.)

Pandas 1

Reading, June 22, 2020

Logistics

  • Submission instructions: you do not need to submit this reading.

Lab 11: pandas

Lab, June 23, 2020

Logistics

  • Due: Tuesday, June 23rd no later than 11:59pm.
  • Submission instructions: upload solution, entitled FirstName-LastNameLab11.py to the BrightSpace Lab 11 Dropbox.
  • Deadline reminder: once this deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Pandas 2

Reading, June 23, 2020

Logistics

  • Submission instructions: you do not need to submit this reading.

Lab 12: Course Evaluation

Lab, June 24, 2020

Logistics

  • Due: Wednesday, June 24th no later than 11:59pm.
  • Submission instructions: message Andrew on Slack that you have completed the course evaluation.

Program 5

Programming Assignment, Due June 25, 2020

Logistics

  • Due date: Thursday, June 25th no later than 11:59 p.m.
  • Submission instructions: upload your solution, entitled YourFirstName-YourLastName-Program5.py to the BrightSpace Program 5 Dropbox.
  • Deadline Reminder: Once the submission deadline passes, BrightSpace will no longer accept your Python submission and you will no longer be able to earn credit. Thus, if you are not able to fully complete the assignment, submit whatever you have before the deadline so that partial credit can be earned.

Quiz 3

Quiz, June 26, 2020

Quiz Info

Quiz 3 will take place on Thursday and Friday, 6/25 and 6/26, via D2L. You can take the quiz any time between 12am on Thursday, 6/25 and 11:59 pm Mountain Time on Friday, 6/26. You will have one hour to complete the short answer and multiple choice portion of the quiz once you start it. You can turn in the coding question as a .py file to the D2L dropbox until 11:59pm Mountain Time on 6/26. The quiz will cover the Python topics and data science topics that we have learned so far: data types, turtle graphics, modules, functions, selection statements, iterative statements, strings, recursion and lists, files, dictionaries, object oriented programming, Numpy, Matploblib, and Pandas, with a focus on material that we have learned since the last quiz (Numpy, Matploblib, and Pandas). If you have been able to complete the lab and programming assignments, you should be able to complete the quiz.

CSCI 112: Programming With C

Undergraduate course, Montana State University, Computer Science, 2021

Catalog description: C Programming knowledge. Introduces imperative programming and the C standard library. Course covers pointers, memory management and structures. Note: we may introduce some C++ topics as well.

Data Breaches Teaching Demo

Undergraduate course, Montana State University, Computer Science, 2021

On October 25th, 2021 I gave a teaching demonstration to the CSCI 107 course at Montana State University.

Lab 0

, , 1900

Logistics

  • Due: Thursday, August 25th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: send a message to Lucy on Discord. The assignment on D2L will be used for reporting your grade only.

Lab 1

, , 1900

Logistics

  • Due: on Thursday, September 1st anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your .java file to the Lab 1 assignment on D2L.

Lab 10

, , 1900

Everyone automatically gets points for this lab! Take the extra time to get started on Project 4, which covers Stacks and Queues.

Lab 11

, , 1900

Logistics

  • Due: on Thursday, November 10th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Lab 12

, , 1900

Logistics

  • Due: on Thursday, November 17th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Lab 13

, , 1900

Logistics

  • Due: on Thursday, December 1st anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Lab 14

, , 1900

Once you have done the MSU evaluation for the course, write a text entry in the Lab 14 D2L dropbox saying so.

Lab 2

, , 1900

Logistics

  • Due: on Thursday, September 8th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your two .java files to the Lab 2 assignment on D2L.

Lab 3

, , 1900

Logistics

  • Due: on Thursday, September 15th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Pet.java file to the Lab 3 assignment on D2L. (Note that you don’t need to change PetDemo.java, so you don’t need to turn it in.)

Lab 4

, , 1900

Logistics

  • Due: on Thursday, September 22nd anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit all six of your java files (demo, interface, and four classes implementing the interface) to the Lab 4 assignment on D2L.

Lab 5

, , 1900

Logistics

  • Due: on Thursday, September 29th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: submit any text file (Word document, .txt, pdf, etc) to the Lab 5 dropbox on D2L.

Lab 6

, , 1900

Logistics

  • Due: on Thursday, October 6th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) to the Lab 6 assignment on D2L.

Lab 7

, , 1900

Logistics

  • Due: on Thursday, October 13th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Lab 8

, , 1900

Logistics

  • Due: on Thursday, October 20th anywhere on earth (6am Friday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Lab 9

, , 1900

Logistics

  • Due: on Friday, October 28th anywhere on earth (6am Saturday). (Penalties from the syllabus apply if you turn it in any later.)
  • Submission instructions: you have two options. The first option is to demonstrate the execution of your lab to your TA during your assigned lab section on Thursday. The second option is to submit your Java file(s) on D2L.

Project 1

, , 1900

Logistics

  • Due: Friday, September 16th AoE.
  • Submission instructions: upload Calculator.java and CalculatorDemo.java to the D2L Project 1 folder.
  • You may do this project with a partner. If you do this, one partner should turn in the two Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 2

, , 1900

Logistics

  • Due: Friday, September 30th AoE.
  • Submission instructions: upload seven Java files (Circle.java, EquilateralTriangle.java, Rectangle.java, RegularPolygon.java, Shape.java, ShapeDemo.java, and Square.java) to the D2L dropbox for Project 2. The preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the seven Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 3

, , 1900

Logistics

  • Due: Friday, October 21st AoE.
  • Submission instructions: upload your java files to the D2L dropbox for Project 3. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 4

, , 1900

Logistics

  • Due: Friday, November 18th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 5

, , 1900

Logistics

  • Due: Friday, December 9th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Quiz 1

, , 1900

Quizzes will be on Brightspace and can be done on your own time. You can also come to the lecture classroom during the day of the quiz and take the quiz there so that you can get immediate help from a TA if a question is unclear or you have any technical difficulties.

Quiz 2

, , 1900

Quizzes will be on Brightspace and can be done on your own time. You can also come to the lecture classroom during the day of the quiz and take the quiz there so that you can get immediate help from a TA or the instructor if a question is unclear or you have any technical difficulties.

Quiz 3

, , 1900

Quizzes will be on Brightspace and can be done on your own time. You can also come to the lecture classroom during the final period and take the quiz there so that you can get immediate help from a TA or the instructor if a question is unclear or you have any technical difficulties.

Survey 1

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 2

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Project 1

, , 1900

Logistics

  • Due: Friday, September 16th AoE.
  • Submission instructions: upload Calculator.java and CalculatorDemo.java to the D2L Project 1 folder.
  • You may do this project with a partner. If you do this, one partner should turn in the two Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 2

, , 1900

Logistics

  • Due: Friday, September 30th AoE.
  • Submission instructions: upload seven Java files (Circle.java, EquilateralTriangle.java, Rectangle.java, RegularPolygon.java, Shape.java, ShapeDemo.java, and Square.java) to the D2L dropbox for Project 2. The preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the seven Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 3

, , 1900

Logistics

  • Due: Friday, October 21st AoE.
  • Submission instructions: upload your java files to the D2L dropbox for Project 3. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 4

, , 1900

Logistics

  • Due: Friday, November 18th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 5

, , 1900

Logistics

  • Due: Friday, December 9th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Quiz 1

, , 1900

The first quiz will cover everything we have learned in the course through functions and pigeonhole principle.

Quiz 2

, , 1900

The second quiz will cover everything we have learned in the course through probability and counting, but will focus on the topics we covered since the last quiz: relations, proof by mathematical induction, graphs, and probability and counting.

Quiz 3

, , 1900

The third quiz will cover everything we have learned in the course, but will focus algorithm analysis. Note that algorithm analysis and big O deal with many of the topics from earlier in the course: relations, functions, propositions, predicates, sets, and of course proofs and thus all of the proof techniques. Thus, while the questions will focus on big O and algorithm analysis, you will want to be familiar with the ideas from earlier in the course.

Survey 1

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 2

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 1

, , 1900

The mid-course survey is anonymous and will be on D2L under “Surveys”. It can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Project 1

, , 1900

Logistics

  • Due: Friday, September 16th AoE.
  • Submission instructions: upload Calculator.java and CalculatorDemo.java to the D2L Project 1 folder.
  • You may do this project with a partner. If you do this, one partner should turn in the two Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 2

, , 1900

Logistics

  • Due: Friday, September 30th AoE.
  • Submission instructions: upload seven Java files (Circle.java, EquilateralTriangle.java, Rectangle.java, RegularPolygon.java, Shape.java, ShapeDemo.java, and Square.java) to the D2L dropbox for Project 2. The preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the seven Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 3

, , 1900

Logistics

  • Due: Friday, October 21st AoE.
  • Submission instructions: upload your java files to the D2L dropbox for Project 3. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 4

, , 1900

Logistics

  • Due: Friday, November 18th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Project 5

, , 1900

Logistics

  • Due: Friday, December 9th AoE.
  • Submission instructions: upload your Java files to the D2L dropbox. If you have more than one file, the preferred method is to put them all into one folder, zip that, and upload the zipped file. Ask if you need help with this.
  • You may do this project with a partner. If you do this, one partner should turn in the Java files on D2L and the other should just submit a comment on D2L saying who their partner is. The TA for the partner who turned it in will enter the same grade for both partners. If you choose this option, you should do the project together, not just have one partner do all the work.

Quiz 1

, , 1900

The first quiz will cover everything we have learned in the course through proofs in predicate logic (so no functions).

Quiz 2

, , 1900

The second quiz will focus on everything since the first quiz, so functions, pigeon hole principle, proofs by induction and recursively defined structures, big O, and worst-case runtime analysis, including analyzing recursive functions.

Quiz 3

, , 1900

The third quiz will focus on everything since the second quiz: relations, graphs, and probability. However, a few questions will relate to content from the previous parts of the course.

Survey 1

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 2

, , 1900

Surveys will be on Brightspace and can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Survey 1

, , 1900

Surveys are anonymous and will be on D2L. They can be done on your own time. The idea is to give feedback on the course. You should be able to complete the survey in under 5 minutes if you like, or you can take longer and give more feedback.

Paper presentations

, , 1900

In the second half of the course, groups of three or four students will lead a one-hour presentation and lesson about a book chapter or published research paper related to the algorithm design strategy covered in the previous week. Note that the goal of the presentation is to help the class understand the technical content of the paper or chapter in the context of the previous week’s lecture topic. You do not need to cover the entire paper. Instead, find some part or parts of the paper that you think the class will be able to understand and find interesting.

Paper writeup

, , 1900

In every week that you are not a presenter, you will need to turn in a paper writeup. The goal of completing the paper writeup is to practice reading a research paper with a specific goal in mind. For us, this specific goal is to understand how this paper relates to the previous week’s lecture topic.

Problem presentations

, , 1900

In order to practice communicating mathematical ideas in-person, we will have a presentation by a group of about 2 students to start every class during the CS theory portion of the class, beginning 1/30. The group will choose one of the “to think about later” problems from the previous day’s problem session and present and explanation and solution to the problem.