SD 212 Spring 2024 / Admin


Submitting Assignments

Overview

Most of the assignments for this class will be submitted electronically using the Computer Science Department's submit system at submit.cs.usna.edu (available on the intranet only).

In case you are not already familiar with how to use this system, check out the instructions below on using club or submit.

Important: You must test your own code thoroughly prior to submission! The auto-testing is meant to help you see where your code might not be working so you can have a chance to fix it and/or ask for help before the deadline. But just because your code passes the auto-tests doesn’t necessarily mean it’s 100% perfect.

Submitting your code

There are three ways you can submit code for this class.

club

club is a tool to submit your code and see the results of the auto-tests right from the comfort of your own command line.

Read the instructions on the gitlab page here on how to download and install it.

To use club, you just run

club TheFiles.py ThatYou.md WantTo.txt TurnIn.cpp

When you first run club, it may ask you to log into the submit system to copy down your API key. This will then be remembered in your home directory on that computer.

Running club for the first time in a folder will also ask you to select the course and assignment name. When you run club again from the same folder, it will remember the class and assignment name. You can also manually specify those using the -c and -p flags.

submit

The submit program is a more barebones command-line utility that sends your code to the submit server for any assignment.

Here are the steps to download your personalized submit script:

  1. Log on to http://submit.cs.usna.edu, using your USNA credentials

  2. Go to the page to view your personal API key

  3. That will show you a top-secret string of letters and numbers. Copy your API key by highlighting and hitting Ctrl-C.

  4. Open an Ubuntu or Linux terminal

  5. Run these commands in the terminal, but where it says YOURAPIKEY instead paste in the top-secret key that you copied from the website above.

    mykey=YOURAPIKEY
    mkdir -p ~/bin
    curl http://submit.usna.edu/api/$mykey/tools/generate/submit -o ~/bin/submit
    chmod +x ~/bin/submit

Now if you open a new terminal, you should be able to submit using a command like

submit -cSD212 -plab01 TheFiles.py ThatYou.md WantTo.txt TurnIn.cpp

Web interface

If you don't mind the inefficiency, you can use the website at http://submit.cs.usna.edu to manually upload all files for assignment submissions, then wait for the autotesting to complete and check the results.

Always double-check that you are submitting to the correct assignment name and that you submit all files for that assignment.