|Computer Sciences 305j|
CS 305j · The University of Texas at Austin · Spring 2010
|Placed Online||Due Date||Topic|
|1||Friday, January 15||Thursday, January 28||Getting started in Java and using the required software - 10 point assignment|
|2||Wednesday, January 27||Thursday, February 4||Simple output and decomposition - song - 10 point assignment|
|3||Wednesday, February 3||Tuesday, February 16||Output and loops. Drawing a complex figure.|
|4||Monday, February 15||Friday, February 26||Using parameters, Strings, encrypting text. (Transposition Cipher)|
|5||Wednesday, February 24||Thursday, March 4||Graphics|
|6||Wednesday, March 3||Thursday, March 11||Conditional execution: rock, paper, scissors, (lizard, Spock). (Pair assignment)|
|7||Wednesday, March 10||Thursday, March 25||While loops, Hangman (Pair assignment)|
|8||Wednesday, March 24||Friday, April 2||Temperament sorter (Pair assignment) - 30 point assignment|
|9||Wednesday, March 31||Tuesday, April 13||Arrays and file processing, working with lots of data, decrypting encrypted text. (Pair assignment) - 30 point assignment|
|10||Monday, April 12||Thursday, April 22||Two dimensional arrays, Connect 4|
|11||Wednesday, April 21||Thursday, May 6||Creating classes, Critters. No slip days may be used on assignment 11|
General Assignment Requirements: Individual assignments are to be completed by you alone. You may not share code with other students or other programmers. Review the class policy on improper collaboration from the class syllabus and how this applies to individual assignments.
About half the assignments may be done in pairs using a technique called pair programming (Read the paper on pair programming to understand how the technique works.). One solution will be turned in for the pair. Once you start working with one partner on an assignment you may not switch partners. If you do not wish to work with a partner after starting on an assignment you must both complete it individually. You must inform your TA(s) via email if you start working on an assignment with another person and decide to finish as individuals. You may not re-pair after starting the assignment with someone else. When working on pair programming assignments you are expected to spend 80% of your time on the assignment working with your partner, together at one computer, taking terms typing, and navigating.
Programs will be written in Java, using the Java 2 Platform Standard Edition 6.0. See the software page for information on downloading and installing Java at home. Follow the rules from the style guide when writing your code.
There will be 11 programming assignments.
Assignments are due by 11 pm on the due date.
You will have 6 free late (slip) days in 1 day units (1 second to 24 hours = 1 day) for the semester.
Assignments must compile and run with BlueJ in the Painter Microlab.
Assignments must be turned in via the Microlab turnin program. If you are registered for more than one computer science class you must ensure that your turn your assignment in to the correct, CS305J directory. You must turn in a file with the correct name and in the proper format. Usually this is the source code in a .java file. The assignment page will specify exactly what to turn in.
If you do not follow the instructions and specifications for assignments (name, where to turn in, file format) you cause extra work for the graders and myself. As a student and potential software developer you must follow instructions and specifications. When you are penalized for failure to follow instructions it causes you to become a special case. With over 75 students the TAs and undergrad proctors use scripts to streamline some aspects of grading. Not follow the assignment instructions and specifications causes these scripts to fail and the graders must spend more time on your submission. The following penalties are in place because there must be consequences for failure to follow instructions. Otherwise there is no deterrent. Please read this account of a student who has seen the issue from both sides.
Penalties for failure to follow instructions and specifications on assignments:
Assignments grades are not scaled to effort or time spent working on them. (You may spend a large amount of time working on an assignment and still lose many points because your program is not correct.) They are not graded on a strictly linear scale. Points will be deducted for failed test cases, poor style, poor efficiency, lack of necessary comments, convoluted algorithms, lack of student provided test cases, lack of answers to questions regarding the assignment, and other reasons deemed appropriate by the instructor.
Each assignment will specify whether it must be done individually or as a pair.
Assignments will be checked for plagiarism and copying using Moss. You may discuss high level design issues with your fellow students, but sharing algorithms or code or obtaining solutions from another source constitutes academic dishonesty and will result in an F for the course. Recall the section on academic dishonesty from the syllabus.
The teaching staff will grade, comment, return, and post the grade for an assignment within 5 days. A grade can only be disputed within the following week. (This isn't a weekend bazaar. If there is an error in your grade you have one week to contact your grader. We won't be going back at the end of the term to look at an assignment from early in the term.) You are responsible for contacting your TA or proctor if you assignment is not graded in a timely and accurate fashion.
All grade disputes must be made in writing by email to the TA with supporting evidence or arguments, and will result in the entire assignment being re-graded. Remember, no whining.