Most students did fairly well in getting the functionality working and the marks reflect this. Few students got 100% for the style and documentation, so here are a few things that people did wrong: (**) Putting too many variables in too global a scope. (**) "Magic" numbers or strings scattered throughout the code (this is what final variables are for). (**) Declaring variables with apparently the same use as those in a superclass (hint: Frame already has a height and a width). (**) Not commenting variables. (*) Using meaningless, short, class and variable names. (*) Unused methods and variables. (*) Classes that appear to have identical form and function to classes already in the Java libraries. (*) Silently catching and ignoring exceptions. (*) Not catching exceptions. (*) Not giving any comments (in some cases not even the authors' names) (*) Incorrectly packaged jar file (hint: the command "java -jar " should run the code) (*) Not generating the javadoc files. (*) Using the wrong filename to save points. (*) Not including all the necessary files (the assignment clearly asks for .java, .class and javadoc files) (*) Storing points in fixed-sized arrays that overflow. (*) Commenting groups of variables: /** These are the coordinates */ int x; int y; (*) Meaningless comments, basically just paraphrasing the code, e.g.: /** A private int data-field holding the value of d */ private int d;