The goal of the final project is to demonstrate your knowledge of UNIX tools. This is an open-ended assignment, so your grade will be determined based on the two key factors: how ambitious the project you choose is, and how well the project works.
In Assignment 4, we wrote some simple tools for managing a calendar. These tools were command line based. For the final project, you should enhance these tools in the following ways:
There are bound to be lots of questions. To address the major ones:
I expect the size of this project to be about twice the size of a homework. It should take you about 3 weeks. If you want feedback about an idea, you can submit it to one of the TAs or grader (be as specific as possible). Or even better, come by my office hours before class on a Tuesday.
Although group projects are often a logistical nightmare, you can work in groups provided: (1) You do a project that is n times bigger if you have n people; and (2) Each person in the group accepts that their grade on the project will be affected either positively or negatively by the other group members.
You may develop the project anywhere you want, but we require the projects to run on the NYU CS Department machines (sparky, slinky).
You may only if: (1) They work on sparky, and (2) They are freely available.
That's not really a question. But you are welcome to pick your own project. If you want to do so, mail one of us to check if it's acceptable.