As noted in the course syllabus, a programming project can be completed for extra credit. It can be done in any programming environment used in the class but the project coding must be totally original. It can be completed by partners if desired. Regardless of which language is used you should think about what you want to do before you start thinking about how you can meet the programming specifications. If you pick a good project we can almost certainly figure out a way to have it meet the specifications for the project.
The due date for extra credit is the end of finals week. However, you must notify the instructor of your plans for a project by the end of the 12th week (November 10 at 5:00 pm). The notification needs to include a general description of what the project will be. You should make an appointment to meet with the instructor to discuss the project. During that meeting, more detailed expectations will be discussed. The general expectations are described below.
As with the all the programming learning activities this work will be done in pairs (with perhaps one triad).
Regardless of the programming environment, the project is to address all the basics / fundamentals of programming, i.e.,
The projects should also have reasonable complexity. Complexity can be based on amount of code but also on other elements as applicable to the kind of project. For example, if the project is in Scratch, including as many of the following as reasonable contributes to complexity. Note that adding sprites with code the same as another sprite (or otherwise just duplicating code) does not increase complexity.
In addition to the project code, each team is to submit a project report. The report is mostly descriptive and should include or address the following:
Report weekly values at least. You may report more specifically if you wish. I suggest keeping a log so you can be accurate and perhaps more specific.
Indicate the quality of the project — mediocre, okay, good, excellent. Then provide a rationale for that assessment. The assessment and rational should address the quality of the program, not the quantity of the "effort".
The report should be as long as necessary but not longer. I imagine less than a page of information is too little and more than two or three pages may be too much. I suggest you prepare it in some application so you can save it, and proof-read and revise it.
I prefer the project prose be included in in the body of an e-mail message rather than an attachment. When done drafting, proofing, and revising it, just copy and paste it into the submission message discussed below..
I'd like you to download your project and one partner send it to me as an attachment to a submission message. The report will be included in the body of the submission message. That message should:
Please rename the file using your initials, e.g.,
Please do not use the submission message (or any message with the subject "PEEE Project") to ask questions. I will likely not see them until I start grading the submissions.
Keep in mind that I will be grading what you submit, not the time or effort you expended, and (unfortunately) not the learning (at least not directly). Hopefully, what you produce will reasonably reflect effort and learning. The maximum amount of extra credit (for the course, not the project) will be the equivalent of one letter grade.
The grading discussion in the course syllabus is a good place to start thinking about grading. Submissions that minimally meet the specifications will likely receive about half the maximum credit. Not fully meeting the specs or having errors in the program can reduce the score/grade. The grade/score can be enhanced by:
The report will be graded similarly to reflection reports. See the course syllabus—the discussion of grading there is applicable to this part of the assignment.