Programming assignment overview & deadlines

Overview

Programming Assignments (PAs) are bigger programs than the challenge activities and zyLabs from the zyBook. You should develop them on your computer in Visual Studio Code and compile + run them through the terminal.

According to the syllabus,

Programming assignments; started in class and completed at home. These can be done in pairs, but some must be done individually for a higher course grade. Each programming assignment will be offered at three levels, from Level 1 (easiest) to Level 3 (most difficult). These correspond to what you should be capable of in the first, middle, and final third of the course.

      • Pass: the program compiles, runs mostly as expected, the output is formatted well, the source code includes a header and in-line comments, the code is well organized, and all assignment-specific criteria are met

Furthermore, the grade bundles specify how many PAs you need to do of each level and individually or with a partner for a particular grade level.

Submissions and grading

As outlined in the syllabus, you may submit up to one new PA and up to one redo PA each week. A week is counted from Sunday through the following Saturday.  Redos should be submitted as new versions to the same assignment as the original; you probaby won't be able to see your old submission anymore, but I can see all versions you've submitted. Let me know if you have questions.

Before you submit, please go through the specifications for the PA and make sure you are passing each. If you have questions about one, please ask on Piazza or email me directly.

Picking a PA

First, think about what grade you're aiming for overall for the class. If you want to go for an A, then you'll need to pass at least PAs, one of at each level, and two must be done independently. Everyone should start with a Level 1 assignment—you needed one of these for every grade bundle and they require the least amount of C++ knowledge.

Next, look at the assignment options of the level you've selected. Pick an assignment based on what interests you the most. You may not be excited by any of the options, but you'll maximize your motivation by choosing the one that resonates most with you.

Now think about which deadline you want to target (see below). There are five, but you only need to hit three of these. Keep in mind, though, that the PAs are graded pass/fail, so if you wait to submit your third assignment at the last deadline, you won't have a chance to submit a redo if it fails. Also remember that you can only submit at most one new and one redone PA at any deadline (so you can't submit everything at the end).

I elected to offer an array of PA choices and deadline options to give you more control over how and when you demonstrate your ability to complete a PA.

Getting help on a PA

You may seek help from tutors,  your peers, or me on your assignment. Whether you are working individually or in a pair, make sure that you are not copy-and-pasting code from outside resources. For example, don't ask a friend from home to write a piece of your program—that's plagiarism. It's fine if you talk through a bug or conceptual block you have with a friend from home (or anywhere else).

You do not have to wait for a deadline to get feedback from me. I'm happy to take a look at your program before hand if you'd like—just stop by office hours.

Deadlines

  • March 15–March 21
  • March 22–March 28
  • March 29–April 4
  • April 5–April 11
  • April 12–April 18
  • April 19–April 25
  • April 26–May 2
  • May 3–May 9

Submit full submission and redos to the Canvas assignment that corresponds to the PA you're attempting.