Up: APS105S Home
Previous: How to Use DOS
This is for you if you consider yourself advanced in programming.
Instead of doing the two lab quizzes, you will do a small
project in consultation with the instructor. Before deciding that
you'd like to apply for this, read this page and the assignments
that you'll have to do very soon, carefully. Then contact the
instructor.
You must adhere to this schedule or you will be expected to write the
lab quizzes.
If you are ahead of schedule, please feel free to submit things early.
This way you will get feedback if there appears to be a problem and it
will make the load of marking more distributed.
This is strongly encouraged!
- Feburary 2
- Assignments 4-7 are due.
Please see submission format below.
- Feburary 7
- Project proposals due.
These can be emailed to jayar@eecg.toronto.edu or submitted in class.
Please see the project expectations below.
- Feburary 23
- Assignment 8 is due.
The format for grading this will be decided later.
- March 1
- Progress report on your project.
- March 20
- Project demonstrations will begin. If you are
done earlier, that is even better. Avoid the end of term rush!
The assignments will be graded by having you mail them to
jayar@eecg.toronto.edu in the following manner.
- Create a directory with the name of your login id.
- Inside that directory, make a subdirectory for each
assignment, called assign4, assign5, assign6, assign7
- In each directory, put in the source code for each assignment,
as well as any other files that might be required.
- In each directory, create a file called README.
In this file, you should include some comments about your program.
These comments should include:
- A short description of what all the files in the
directory include.
- How you tested your programs and how to run your
programs.
- Describe any extra features you might have
implemented.
- Describe any limitations of your program. This will
include situations that you know your program will not handle, but you
have not included any tests for it.
Briefly describe how you might handle these problems.
This could also be done by putting comments in your code at the appropriate
points that describe what to do like
% Should really check that the input is < 0 here
- When you are ready to submit your assignments, use the
following procedure:
- Go to the directory that contains the directory you
made with the name yourloginid.
- Execute the following command:
tar cf - yourloginid | uuencode yourloginid.tar > yourloginid.uu
This will create the file yourloginid.uu.
What you just did was create an archive file with the tar
command, which just packages all the directories and files in the
directory yourloginid.
The uuencode program makes the file into a format that can be
sent by mail.
- Now mail your file to jayar@eecg.toronto.edu:
mail jayar@eecg < yourloginid.uu
To summarize, the sequence of commands that you will use will look
something like this:
cd # to get to your home directory
mkdir yourloginid
cd yourloginid
mkdir assign4 assign5 assign6 assign7
# put stuff in the directories
cd # to get back to your home directory
tar cf - yourloginid | uuencode yourloginid.tar > yourloginid.uu
mail jayar@eecg < yourloginid.uu
The project need not be a massive piece of software.
The main requirement is that you demonstrate reasonable programming
skills on a non-trivial task.
Programs like a simple game or a very simple graphics editor are
appropriate.
You may work in teams, however, you must be prepared to identify the
components of the program that each member contributed.
The project proposal and report can be emailed to jayar@eecg.toronto.edu,
or handed in on paper. (email is preferred)
- Project Proposal
- For the project proposal you should submit
about one to two pages with the following information:
- Your name and login id.
- A description of what the program will do.
- What language you are using and why.
- Your estimate of the final code size.
- For a group project, you must indicate how the task is
being partitioned, i.e., describe what each person will be doing.
You will receive some indication as to whether the project seems reasonable.
- Progress Report
- This should describe what you have
accomplished and what remains to be accomplished.
If necessary, you may modify your original specification if you do not
feel that you will be able to finish according to your original plan.
In the case of a modification, there may be some discussion about
whether it is still a reasonable project.
- Final Demo
- You will demonstrate your program on ECF
facilities. If, for some reason, you are doing something that cannot be
demonstrated on ECF facilities, you must arrange something yourself,
such as bringing in a laptop with the appropriate hardware/software
that you require.
Up: APS105S Home
Previous: How to Use DOS
Jonathan Rose
Mon Dec 29 16:47:41 EST 1997