CS10 -- Introduction to Computer Science I
Spring, 2007
Additional Information
(last updated 1/10/2007)

Working Together:  In general, learning takes place best within a community.  However, when learning to write programs, there is a strong temptation to give and recieve help at a level of detail that prevents one of the parties from actually learning the skill.  If you are asked to give help, try to offer help by asking questions and leading your peers to discover the solution for themselves.  If you think you need help, first make sure you have followed the "other tips" below.  In all cases, document that you gave or received help.  Make sure you understand the help you receive at a level that you could help someone else with the same problem you were having.

Submitting Assignments:  Whenever possible, submit a single file containing your solutions to all the assigned problems.  Identify each solution by exercise number.  I am providing a sample solution as a possible model.   Sometimes two different questions will ask you to write different versions of a function with the same name.  In such a case, add a postfix to the names in order to distinguish them.  On occasion, there may be no way for a single file contain all your work.  In this case, put all your files in a directory named with your email and the homework assignment.  For example, "cjonesHW1".  Create either a tar or a zip file of the folder.  Note, I want the folder with your email to be created when I unpack your file.  Do not use any package format other than tar or zip.
If you encounter problems with Eureka, email your scheme (.scm) file or a tar or zip file as described above.

Other Tips:  Most people find that they cannot write a program as a stream of consciousness.  This is especially true of students first learning to design programs.  You will save yourself significant frustration if you follow several guidelines.