Indiana University


ComputerScience






 Home

 Contacts

 Courses

 Academics

 Careers

 Research

 People

 Calendar

 Resources

 Facilities
   FAQ
   System Notices
   Help
   Hardware
   Software
   Network
   Policies
   CSG Staff
   Lindley Hall

CSG FAQ

Q: How do I set up for a class I'm teaching?

The purpose of this page is to assist those teaching CS classes by providing a checklist of facilities-related things you may want to do in preparation for the start of a new semester. If you need assistance, have questions, or would like to suggest additions to this list, please let us know using the standard question/problem reporting mechanisms.

  • Request a directory for a class homepage

    Course homepages on the CS Web server are created in /l/www/classes/COURSE. You should ask us to create a course directory, which will be of the form /l/www/classes/COURSE-USERNAME where COURSE is the course name (ie. c123) and USERNAME is your CS username. So, if John Smith is teaching C123, the directory /l/www/classes/c123-jsmith will be created. In addition, we will create a symbolic link /l/www/classes/c123 that will point to the proper directory for the given semester. You can create whatever files are needed in that directory, but you should ensure that the top-level page is called "index.html". You can access this directory using a URL like:

    http://www.cs.indiana.edu/classes/c123

    If you have a class that is taught under two different numbers (such as a graduate and undergraduate course) we can link the two together so you have a single classes directory for both.

    Note that you can restrict access to all or part of this web space by user, by hostname/domain, or with a password using the appropriate .htaccess files.

    If you are having trouble accessing the course homepage, please check the following:

    1. There ownership of the /l/www/classes/COURSE link must be the same as the /l/www/classes/COURSE-USERNAME link. If this is not correct, please report it.
    2. The /l/www/classes/COURSE-USERNAME directory must be accessible by the web server. The easiest way to accomplish this is to make sure this directory is world readable.
    3. There must be a file named index.html in the /l/www/classes/COURSE directory and this file must be readable by the web server.

    If you will also need cgi or php support for your class web pages, please see the CGI and PHP FAQ entries for more information.

    If you would prefer to host your course homepage on another server (such as the CGI/PHP server or some non-CS server) simply create an index.html file in your /l/www/classes/COURSE directory that contains the following line:

    <meta http-equiv="refresh" content="0; url=REMOTEURL">
    where you replace REMOTEURL with the URL you wish to use. For example, if you set up your course pages using php3 on the CGI/PHP server, you might use something like:

    <meta http-equiv="refresh" content="0; url=http://www.cs.indiana.edu/cgi-pub/c123/index.php3">

  • Verify that the link from the courses homepage works

    Once you have your course homepage set up, go to the CS Courses homepage and verify that the link for this class works from this page. If not, let us know.

  • Request a class group

    If you will need for a group of people (ie. you and your AIs) to all be able to edit common files (such as the course web pages), you can request that a unix group be created. The group is generally named after the course and can be created upon request or updated if it already exists from a previous semester. Just send us the course number and the list of users who will need to be members of the group.

  • Class account

    If you need an account for the class that can be shared between you and your AIs, we can create the account or grant you access to the account if it already exists.

    Access to class accounts is granted via ssh authentication. To set this up, you will first have to create your ssh authentication key. If you do not have an ssh key, you will have to run ssh-keygen to create one as explained in the OpenSSH FAQ entry. Once this is done, we can set up the account so you can login by running something like:

    ssh sharks -l c123

    If additional people need access to the account, you can ask us to set it up or you can do it yourself by following these steps:

    1. Have each person run ssh-keygen to create an ssh key as described in the OpenSSH FAQ entry.
    2. Copy each user's public key (~/.ssh/id_dsa.pub by default) and append the contents into the authorized_keys file for the class account. For example:
      cat ~robh/.ssh/id_dsa.pub >> ~c123/.ssh/authorized_keys

    Once that is done, they should be able to ssh into the account.

    If you are having trouble ssh'ing into the class account, please check the following:

    1. Did you run ssh-keygen to create your key and does ~/.ssh/id_dsa exist?
    2. Has your ssh public key been appended to the ~/.ssh/authorized_keys file of the class account?
    3. Are you being prompted for a "Passphrase"? If yes, are you using the same passphrase you used when you generated your keys using ssh-keygen?
    4. Are the permissions on the account home directory and ~/.ssh correct? The ssh daemon will not honor the authorized_keys file if the home directory or .ssh directory are group or world writable (for security reasons). Also check to be sure the .ssh directory and authorized_keys file are owned by the class account.

    If this class account existed for a previous semester, you may want to ensure that unauthorized people do not still have access to the account. You can check the following for users with access to the account:

    • Check for the existance of a .rhosts file in the account that may list users who can rsh or ssh into the account.
    • Check for the existance of a .shosts file in the account that may list users who can ssh into the account.
    • Check for the existance of a .ssh/authorized_keys file that may list users who can access the account via ssh.

  • Vincent

    Vincent is a web-based system that allows students to submit homework assignments for a class. Please see the Vincent Homepage for more details. If you wish to use this system for your class, you will need to:

    • Make sure you have a class account, as described above.
    • Make sure the class account is configured for CGI access. You can do this by simply running makecgi while logged in as the class account user.
    • Request that Vincent be set up for the class using the standard problem/request reporting mechanisms.

    Once Vincent is activated for the class, the following URLs will be used to access the system:

    • Administrator Page - From this page you can control all aspects of the vincent setup.
      https://www.cs.indiana.edu/cgi-pub/course/vincent3/admin.cgi
    • Assistant Page - This page is used by course AIs and allows for the downloading of assignments and grading.

      https://www.cs.indiana.edu/cgi-pub/course/vincent3/assistant.cgi
    • Student Page - This page is used by students and allows the uploading of assignments and lets them see the status of their own assignments.
      https://www.cs.indiana.edu/cgi-pub/course/vincent3/student.cgi

    Be sure to replace course in the above URLs with the actual course number for your class. Also, note that you MUST use https, as shown above, and not http since only secure connections are permitted.

    You will need to perform the following steps from the Administrator interface once Vincent is activated:

    1. Set Class ID/Tagline - Under Global Course Configuration, select Set Class ID/Tagline and click submit. You are strongly encouraged to leave the Class ID as is (ie. of the form a110 or c211). If you do change the Class ID, please note that it must not contain any spaces and can only contain alphanumeric characters. You may wish to change the tagline to be more description of the class. For example, you could use something like "Introduction to Operating Systems".
    2. Set System-wide Defaults - Under Global Course Configuration, select Set system-wide defaults for students, assistants, and admins and click submit. This page includes a number of features that are rarely used and is a source of much confusion. Here are the settings we recommend for most classes:

      • Set Use Sliptime? to NO
      • Set Allow IE Explorer> to YES
      • Set Use Vincent's Gradebook to NO if you don't want to use Vincent to keep track of grades. Set this to YES if you want to keep assignment grades in vincent so that you and your AIs can enter them and have students view them on-line. If you choose to use the gradebook, you are strongly encouraged to keep another record of grades outside of Vincent in case there is ever a problem and they need to be recovered.
      • Set Use Teams? to NO
      • Set Allow Assistants to Edit Teams? to NO
      • Set Allow student file download? to YES
      • Set Let students see the class average in gradeviews? to NO
      • Set Use Doneness to NO
      • The All students expire on: setting should be reasonable for the current semester by default. If you want to change this, please be sure to keep the format exactly the same. Be sure to keep all fields the proper length. For example, for a month of May, use '05' instead of '5'.

      You are welcome to use other settings and features here, but only do so if you know what you are doing.

    3. Edit the Administrator/Assistant list - Under Global Course Configuration, select Edit the Administrator/Assistant list and click submit. From this page you can list other administrators or assistants using a space-separated list of usernames. Note that administrators have full control over vincent (can add and remove students or assignments, download files, etc) while assistants can only do things like download assignments that have been submitted and enter grades.
    4. Load your roster - In order to enter your students into Vincent, you are encouraged to upload standard IU class rosters. These rosters come in various different formats and you need the format that includes usernames. This file will generally include lines that look like:

      	303,BL,0171,999123456,JANE,  DOE            ,JDOE       ,INDIANA.EDU
      	

      The file may contain lots of other stuff, which is fine since Vincent will ignore everything except lines that look like this.

      NOTICE: As of Fall 2004, the old format rosters are no longer available. Please see the Vincent Roster System Notice for information about getting your roster data into a format that Vincent can accept.

      Under Roster/Student Maintenance, select Submit a new Roster and click submit. You will just provide the full path to the roster file and you are encouraged to use the Browse feature to locate the file.

      Note that you can reload the complete roster multiple times to pick up new students.

      You can also use the Add a student to the system and Modify an existing student's record options to manually add and update entries.

    5. Add yourself as a student - By default, you will not be able to use the student interface since you aren't a student. If you want to be able to use the student interface (ie. to test things and see what your students will see) you can manually add yourself. It is recommended that you use a different section number (9999 is a common choice) if you do this so you don't show up in the same section as the "valid" students.

    6. Create Assignments - Under Handling Assignments, you can create and modify assignments. You can also Create a new grade mapping, which allows you to do things like have an assignment worth 10 points where 9-10 is an A, 7-8 is a B, etc. I would personally advise against using this feature unless you know what you are doing.

      To create a new assignment, just select Create a new assignment and clidk submit. Here are the fields you need to set when creating an assignment:

      • Assign. Type - The Assignment type should always be FILE.
      • Assign. ID - The Assignment ID should be a short strings containing ONLY alphanumeric characters like "Project1" or "Test2".
      • The Description is a more general description of the assignment.
      • Upload Msg. - This can be any message you want the student to see when they upload this assignment.
      • Max Val. - This is the numeric number of points this assignement is worth (ie. 10 or 100).
      • Num. Files - This is the number of files that need to be uploaded for this assignment.
      • Due Date - This is the date/time the assignment is due. Submittions will be accepted after this time, but they will be flagged as late. Be sure to keep the format of this date EXACTLY as it is. For example, for May use "05" and not "5".
      • Grade Visible After - This is the date/time after which students will be able to see grades for this assignment. Be sure to keep the format of this date EXACTLY as it is. For example, for May use "05" and not "5".
      • Naming Grep - The default value of "_ANYTHING_" means that there are no restrictions on the names of the files being submitted. If you want to limit the filenames you can use the Naming Grep. For example, if you just make this "a1.c" then they can only submit a file named "a1.c". You can use the following in the Naming Grep:

        • _OR_ - Contitional "or"
        • _ANYTHING_ - Wildcard
        • _DIGIT_ - Any single number
        • _DIGITS_ - Multiple numbers
        • _USERNAME_ - The student's username
        • () - Grouping

        So, for example, if the assignment has two files and you want to require students to use the names File1.c and File2.c, you could use "(File1_OR_File2).c".

      • Grade Mapping - If you set up a grade mapping, you can select it here. You probably won't be using this feature, so leave it as 'No Mapping'.
      • Post Processor - You can set up arbitrary perl programs that assignments are sent through when submitted. This is useful for things like compiling code and displaying errors when a file is submitted. If you want to do this, please ask for assistance.

    There are a number of other features in Vincent, but this should get you started. You may want to check out the Vincent Docs for more information about setting things up. This documentation is rather old and out of date, but may still be useful.

  • Disk quotas

    All class accounts have disk quota for their regular account and the cgi account if using Vincent. You should login under the class account and run quota -v to check the current disk usage and availability to ensure it will meet the needs for your class.

  • WWWBoard Web-based message board

    As an alternative to a Usenet Newsgroup, you can use the Web-based message board system supported on the CS web server. This system allows the posting and reading of messages via a web interface and access can be restricted in a number of ways. Please see the FAQ entry for more information.

  • Burrow accounts and access

    If your class will be using the Burrow Cluster of Linux machines in LH004, you should coordinate with Caleb Hess to get card access for your students. Requests for accounts should be sent to accounts-admin. In the request, please include the usernames of the students needing accounts.




See an error in this FAQ entry? Please report it.

[Return to the FAQ index]









Valid HTML 4.01!