Assignments are due 11:59pm on the date listed (except for project 1). To submit your assignments, login to your CS department Unix account, cd to the directory where your source files are, and type the following command:
turnin --submit <TA> <project> <filenames>
where <project> is proj2, proj3, etc. (project 1 will only be collected on paper.)
and <TA> depends on which session you are in.
|
M 10 |
wdong86 |
|
M 11 |
yulinli |
|
M 12 |
wdong86 |
|
M 1 |
varunjn |
|
T 9 |
yulinli |
|
T 10 |
yulinli |
|
T 12 |
varunjn |
|
T 1 |
varunjn |
For example, to submit the Recursion and Lists assignment, you would type:
turnin --submit wdong86 proj2 Cons.java README OR
turnin --submit varunjn proj2 Cons.java README OR
turnin --submit yulinli proj2 Cons.java README
You can check to make sure that your files were submitted successfully by doing:
turnin --verify <TA> proj2
If you want more information on the turnin program itself, from within the Linux shell type:
man turnin
Which will bring up the manual for the turnin command. To exit the manual, press the "q" button.
You
are expected to include some additional information for every
assignment: your
name (important
for a class of this size, so don't omit it),
the
departmental computer you have tested your code on (it is a good idea
to run your code on some CS machine before turning it in),
any
parts of the assignment you were unable to complete, and anything
else you would like to say about your work. Put this information in
a separate README file.
To facilitate grading, please do not change the names of the files or
signatures of the functions given to you. Normally, you should not
have to modify anything existing; your job is to add new stuff. The
one exception is with the *.asgx.java
files. For example, you need to change Cons.asg2.java to Cons.java in
order to compile. In these cases, submit the files under the new
names. Also make sure you turn in all files necessary
to run your program as an independent
unit,
thus include even files you have
not modified from
the class directory in your submission.
If you choose to do the assignments at home, you will need to transfer your files to the departmental machines before using turnin. One way is to email them to your CS address as attachments. Another is to use a FTP program such as the SSH client available from Bevowere. If you use Mac, you may also use Fugu.
In any case, you will need to use SSH to connect to the Linux machines over the Internet in order to submit your assignment. The following guide details on how to use SSH both to transfer your files and to submit your assignment. It is kindly provided to you by Phillip Verheyden and adapted by Yulin Li.
The basic order of things is:
Transfer the files from your machine over to the Linux machines
Run the program on the Linux machine you transferred the files over to in order to test your program and complete the README file
Use turnin to turn the files in
Transferring Files
A list of the Linux machines can be found on this page . In order to connect to them, you have to concatenate ".cs.utexas.edu" onto the end of the machine name. For instance, if I am trying to connect to the machine called apu, I would use apu.cs.utexas.edu as the host name. Check out this page to see some example programs to use in order to connect via SSH. Since I use Windows as my personal computer, I just download SSH Secure Shell from Bevoware because it has a nice GUI to transfer the files over.
As earlier mentioned, the hostname will be <computer_name>.cs.utexas.edu, and the username is your “CS account username”. If you were connecting to the Linux machines using the Mac OSX terminal, it would look something like:
ssh <cs_username>@<computer_name>.cs.utexas.edu
On some SSH applications it will ask you for the port number. Port 22 is the standard port; use this.
After you connect to the linux machine, it will say something about saving a public key to the database. You want to do this so it doesn't have to keep re-authenticating your key every time you try to log in.
Now that you are logged in, if you have a GUI you can transfer files over that way. By default, the default folder that you transfer the files into will be the folder that you start in when you log in at the command line interface.
Testing Output
Now you should have the files transferred over. You need to execute the files on the Linux machine itself. SSH to a Linux machine (or make sure you are on the command line if you have already done this) and do:
javac Cons.java
Which will invoke the java compiler to compile your java file. If you type ls (which is the command to list files) you will now see a Cons.class file. Now you just need to execute the actual Java code which is done by:
java Cons
Where Cons is the class where the main() method resides that you want to run. You should see the expected output.
Turning In
Now that you have successfully tested your file on the linux machines, you are ready to turn it in. The instructions at the beginning of this page should apply from this point.