Sat May 6 11:23:03 EDT 2000
This page makes minor updates to what you have to submit for your project. The main things in brief:
Your final submission has to include your code, installation procedure, a web page that would induce others to use your system, an internals document describing the implementation, and a report on how things worked out and what you learned.
Here is what you should do:
Submission directory: Make a single directory for submission if you are not already working in a single directory. Be sure that your code is complete and still works when it is copied to the submission directory. We will be assessing your software somewhere else, so be sure to include all necessary files and remove all absolute file names.
cd project_directory tar cf ../xxx.tar . cd .. gzip xxx.tar submit 6 xxx.tar.gz
Documentation: The documentation must include the following:
The main part of the installation instructions is for a developer who is taking over your code. What will he or she need? Where are files to be installed? What changes have to be made in headers or makefiles or configuration scripts or search paths or web pages? Where can components be found if they are not included? All projects will need this part. If your system runs from a web page, it probably does not need anything else, since end-users will not be installing anything. If, however, your system runs stand-alone on some machine, you should also include instructions on how an end-user should install your system on his or her own machine.
All documentation must be in simple HTML, GIF and JPEG that works with Netscape 4.5. It should be written in good English prose, free of spelling and grammar errors. It should be thorough but not exhaustive; the total submitted documentation should not exceed 15 printed pages.
Installation: If your code is meant to run on Unix or Linux, it should include a makefile such that the command make will make the system in the current directory. The command make clean should remove all temporary junk, like object files and executables.
If your system is meant to run on Windows, you can include a self-installing executable or a zip file that contains all the necessary files, along with any project files for the compiler you used.
In either case, if your system relies on the existence of major components like a compiler, a debugger, a source-code control system, or the like, these must be noted in the installation instructions, along with your best guess about how to get copies. You do not need to include them!
You should test your installation procedure just as you test your system, and you should inflict it on others if possible.
After having seen the remarkable variety of projects and environments that they run on, it is very unlikely that we will be able to compile and run them on our own systems, though we would like to try. Do your best on this, but do not kill yourself either. No matter what, the installation instructions should be complete and accurate enough that a sufficiently dedicated developer could in fact get your project running on a new system of the right kind with the right resources.