Projects

Projects (3 total) are independent/individual programming assignments. You will have roughly three weeks to do each project. The first project will be in python, the second and third will be in Java.

Projects must be done individually, although you may discuss them with others in a general way (I.E. you can discuss the problem but not the solution). These projects will allow you a chance to incorporate new programming techniques we’re discussing into a bigger, broader program. These will often challenge all of your programming skills, including ones we might not have explicitly trained in this course, as they are designed to help you experience the blend of challenges seen in more realistic large-scale programming problems.

Projects will always feature substantial manual review. Make sure you write your code first, and foremost, to be human readable. On a project, it will not be enough for the code to “work” – we cannot read and understand the code, you will lose points.

Project assignments are not collaborative efforts, and you must complete each without the assistance of anyone else other than your instructor or TAs (unless the problem description explicitly says you may work in a pair or group.)

Project assignments will be posted on Canvas (and on this page), so make sure you check Canvas (and this page) regularly.

Unless otherwise mentioned, project assignments are to be done individually. You are welcome to discuss what the problems mean, general problem solving strategies, etc., but are not allowed to share solutions in any way. This means you cannot copy others’ work, supply answers in part or whole to others, or make substantial enough use of others’ work that (even if you do not copy verbatim) the answer you submit is not your own work. Do not “research” the problem and try to find solutions on the Internet. This is cheating and if caught, you will be turned into the college. We do run similarity checkers and they are very, very good at catching students who cheat.

Date Projects
Mon, Sep 21, 2026 Project 1 Assigned
Fri, Oct 16, 2026 Project 1 Due
Mon, Oct 19, 2026 Project 2 Assigned
Fri, Nov 13, 2026 Project 2 Due
Mon, Nov 16, 2026 Project 3 Assigned
Mon, Dec 14, 2026 Project 3 Due