Course Computing & Educational Technology
This page provides links to course tools and educational technology aimed at getting your course up and running quickly. It is targeted toward Faculty and TAs from CSE who need quick and simple directions for accomplishing common tasks.
CSE Instructor Dashboard
Your dashboard contains quick, concise "one-stop shopping" info and links specific to the course you are currently teaching or preparing to teach. (TA info, class enrollment, course directories, mailing lists, webs & wikis, groups, and more). We encourage you to first peruse your dashboard before venturing futher. Much of the information on the rest of *this* page is referenced or duplicated within your dashboard but with course-specific links. The sections below contain more generalized but in some cases additional "deep-dive" information.[+] Class Enrollment Tools
[-] Class Enrollment Tools
[+] Course Mailing Lists (Mailman)
[-] Course Mailing Lists (Mailman)
When setting up a course mailing list, the instructor has two main options:
- Go to MyUW, click on "Request class email list", and get an @u.washington.edu mailing list. This list is populated with the students (and instructors of record), and is automatically updated as students add and drop the class.
- Manually administer a mailing list at @cs.washington.edu. NOTE: Use of the CSE mail lists described in this section is deprecated. Instead, please use the UW maintained mailing list, whenever possible.
Most instructors choose option 1, which is more convenient. This document describes option 2. Option 2 is mainly a throwback to the days before LST (Catalyst tools) provided course mailing lists, when creating a mailing list at @cs.washington.edu was the only choice.
Help with setting up the UW mail list is also mentioned on each instructor dashboard page, e.g., http://www.cs.washington.edu/education/courses/cse000/11wi/admin/.
As in the previous section, we assume your course is CSE000. The associated mailing list,(7) cse000@cs.washington.edu, as well as all class lists, are created and maintained by Mailman, the free web based mail management tool from GNU.
Those who have a valid CSENetID and are members of group cse000 can manage cse000@cs via the list administration page, http://mailman.cs.washington.edu/mailman/admin. Another useful Mailman link is https://mailman.cs.washington.edu/mailman/listinfo?ads=cse, which shows all CSE mailing lists.
Note that management of a class mailing list includes the ability not only to administer the list, but also to create and delete it. When you delete a list for which an archive of messages is kept, Mailman will ask whether you want to delete the archive as well; if you choose not to delete the archive, that archive will be re-associated with the list when it is created anew. You need to follow the steps below in order to maintain the mailing list for CSE000:
-
If cse000@cs already exists, remove it. To do this visit the
mailman administration page, click on cse000,
then either
-
Click on Delete this mailing list and confirm it. Note: due to a
glitch in Mailman you may need to make yourself the administrator
(owner) of the list in order to delete it; otherwise it may give you a
"not authorized to delete" error.
- Or, click on Membership Management-->Mass Removal and remove the current members.(8)
-
Click on Delete this mailing list and confirm it. Note: due to a
glitch in Mailman you may need to make yourself the administrator
(owner) of the list in order to delete it; otherwise it may give you a
"not authorized to delete" error.
-
If necessary, (re)create the class mailing list for CSE000 by visiting
http://mailman.cs.washington.edu/mailman/create. -
Update the "list administrator email addresses" in the General
Options page with the correct list for the current quarter.
-
If you want to create a cse000 email archive, go to its
administration page, click Archiving Options, and choose the
appropriate options.
-
To add people to cse000@cs go to its list administration page.
Click on Membership Management-->Mass Subscription, then add
email addresses to the box there or upload them from a file. The
addresses must be fully qualified, e.g.
jouser@cs.washington.edu, and listed one per line. You can
download a
list of all class registrants using the
CSE
Enrollment Tool.
Alternatively, you can delegate management to the students in CSE000. By default, a class mailing list allows people to add themselves after it is created.
-
Finally, review Privacy options, which set up policies on who can
subscribe to your class list (Subscription rules), who can post
messages to the list (Sender filters), and what kind of mail should be
passed through, moderated or discarded (Spam filters).
- You can create additional mailing lists for your course by following the above steps. For CSE000 you can create any list whose name starts with `cse000-', e.g. cse000-staff.
[+] Group Administration (GrpAdmin), Setting up Project Groups and Directory Permissions
[-] Group Administration (GrpAdmin), Setting up Project Groups and Directory Permissions
Course Groups and Group Administration
Each course has at least one associated administrative group, e.g. for CSE000 the group name would be cse000. In most cases such course groups are automatically initialized before the start of each quarter, based on a list of courses and instructors. Initialization consists of the following:- The group is created if necessary.
- The list of "owners" is adjusted if necessary to include the instructors for the upcoming quarter.
Instructors must use the Group Admin tool to add other owners and members to the main course group. Also use this tool to delete owners and members that no longer need administrative access to your course. In rare cases the group may not yet have been created; in this case please contact support@cs to get it created and initialized with the proper owner(s).
Other groups can also be associated with a course; these include:
- student project groups
- Usually called cse000l, where l is a letter, a to z. Project groups are created with the main course group as their "master" group(1), so that ownership of project groups will be determined by ownership of the main course group.
- course administrative groups
- Rarely, you might want to use group permissions to restrict access of some directories to a subset of a course's teaching team using a special group, e.g. cse000-admin.
Notify support@cs if you need additional groups created.
An overall group, tas, is also established at the start of each quarter. It consists of TAs who are registered one week before the start of a quarter on the TA assignments page, http://www.cs.washington.edu/education/ta-home/ta-assignment. One of the purposes of this group is to allow TAs to carry out duties not normally permitted to undergrads, such as reserving equipment and rooms. Note that all groups are "universal" with respect to the systems we run: the same groups exist---with the same members---on all Unix and Windows instructional systems.
Creating and Setting Ownership and Permission of Project Directories
Project Directories Based on Project Groups
Assume the project directory in question is /projects/instr/04sp/cse000, and that you have requested 15 project groups. The project group names for a given course all have the same prefix, which identifies that course, either cse000x, where x = a, b, c, ...; or, for a longer course name such as cse000zz, c000zz-x. We recommend you create group directories with names a, b, c, ..., which correspond to the tail of the group names, e.g.:
cd /projects/instr/04sp/cse000 mkdir a b c d e f g h i j k l m n o |
After the directories are created, you will need to set group ownership and mode. Setting group ownership has proved to be tricky for TAs in the past, so the process has been streamlined by providing a script to do it for you. However, the script will only work if a valid group name is produced when you prefix a given string to each directory name, e.g. in this case prefix "cse000" + directory "a" yields "cse000a", the group name you want to assign to this directory. The script takes a single parameter, viz. the prefix to which directory names will be appended to form group names. For example:
cd /projects/instr/04sp/cse000 /cse/courses/bin/setprojdirs cse000 |
/cse/courses/bin/setprojdirs (no parameters) for more
information.
Project Directories Based on CSENetID
For some courses, e.g. cse331, individual project directories are set up, each named with the CSENetID of a student. In addition, the directories might be populated with some initial information, e.g. a repository of code to be modified by the student. The problem here is making sure each student owns that directory and everything in it. Only administrative accounts can change file and directory ownership, so teaching staff either need to notify support@cs or do it themselves by following this procedure:
-
Set up the student directories, e.g. for student `jostudent' in
course cse331 set up by TA `jota' this might be how things looked
after setting up the directories:
% pwd /projects/instr/11wi/cse331 % ls -l jostudent total 12 drwxrwx--- 3 jota cse331 4096 Jan 3 20:13 ./ drwxrwsr-x 57 instructor cse331 4096 Jan 30 15:54 ../ drwxrwx--- 6 jota cse331 4096 Jan 3 20:13 REPOS/
-
In the course directory create the file
`run.change.owner.dirname', e.g.:
Within a short time (minutes) a process on the projects fileserver will run that does the following:touch /projects/instr/11wi/cse331/run.change.owner.dirname
i.e. recursively changes the ownership of all directories to the name of the directory. After this happens one would see:% cd /projects/instr/11wi/cse331 % for i in *; do [[ -d $i ]] && chown -R $i $i; done
% pwd /projects/instr/11wi/cse331 % ls -l jostudent total 12 drwxrwx--- 3 jostudent cse331 4096 Jan 3 20:13 ./ drwxrwsr-x 57 instructor cse331 4096 Jan 30 15:54 ../ drwxrwx--- 6 jostudent cse331 4096 Jan 3 20:13 REPOS/
Ensuring Course Group Access
After setting things up it may happen that group read-write access, or even the group itself, can be changed by the student. To re-establish course group access, the process is similar to the previous section, only this time the file to touch is `run.change.group.perms', e.g. for the project directory example of the previous section:
touch /projects/instr/11wi/cse331/run.change.group.perms |
cd /projects/instr/11wi/cse331 for i in * do [[ -d $i ]] || continue chgrp -R `groupof $i` $i chmod -R g+rwX $i done |
Clearing Out Course Groups
Sometimes course groups are left with a membership that reflects the projects of a previous quarter. The grpadmin command has no "zapgroups" option, but a zapgroups script to remove all members from a group has been provided. Enter /cse/courses/bin/zapgroups (no parameters) for details. For example, if you wanted to clear out all the course groups mentioned above, you could enter the following command:
/cse/courses/bin/zapgroups `perl -e 'for("a".."o"){print "cse000$_\n"}'`
|
[+] Instructional Accounts
[-] Instructional Accounts
There is a guide for new instructors MediaWiki with information that is specifically tailored for new instructors. That wiki uses built-in application auth specifically so that CSE accounts are not a prerequisite for users to access it. New instructors should have been contacted by the course coordinator (currently pl at cs) with their credentials, but webmaster can also create accounts there.
This section deals mainly with special purpose accounts and systems; these are listed on the Course Computing page for the current quarter.
Instructors can, in addition, request permanent accounts for themselves on special purpose instructional systems.
In order to protect themselves against possible malicious code, those TAs who grade programming assignments may also request an additional temporary instructional "sandbox" account for themselves by contacting support@cs.
Non-majors who take CSE courses will in most cases be given temporary accounts automatically, based on course enrollment.
Except for faculty and staff, special purpose instructional accounts are temporary: they are terminated either the day after the last day of a quarter, or, for TA accounts, a week or two after a quarter ends.
You should inform non-majors that they can pick up their account information at the front desk. Important note: Non-majors who register for a course after the first day of classes will not automatically get accounts. In this case the teaching staff must send a list of the late registrants to support@cs. This list will then be forwarded to the undergrad advisors.
The following instructional systems require temporary accounts to be set up.
- linux systems for OS and networking courses, e.g. cse451
- These have been variously named forkbomb, coredump, spinlock, and
blackboxnn. They are configured as directed by the teaching
staff.
- web and DB servers
- The Linux web and DB server is
cubist.
The IIS and MS SQL (Windows) server is iisqlsrv.
Special local accounts are set up on these servers for all members of each class needing access.
For the Windows servers: One or more TAs will be given administrative access, e.g. SQL admin access on iisqlsrv. Those TAs will do routine administrative tasks such as add DB accounts, create databases, etc.; they will need to familiarize themselves with the tools provided to accomplish these tasks.
[+] Homework & Grade Submission
[-] Homework & Grade Submission
Here is information on an easy to use cheating detection service that has been used in CSE142 and 143.
While we are on the topic of misgivings, CSE policy on Academic Misconduct can be found HERE.
If you wish to collect homework files using a polished, web-based tool, the best solution is the Catalyst Collect It tool. Students use this tool in many of their non-CSE classes and will be familiar with the way it works
We have a CSE web-based homework turnin facility that will let your students turn in files electronically. Neither the management tools nor the student interface is as good as Catalyst's solution, but it has the advantage that it can compile java programs as they are turned in. This tool is very mush skewed towards CSE142 and 143, but any course can use it. See the 142/3 homework help page for more information. If you wish to use this tool, contact Dan Boren.
Grade Submission
You can now submit your grades online without actually using the Catalyst Gradebook. Courtesy of our own Dan Grossman, here are some tips on how to do so:
- essentially bypassing the online GradeBook but still submitting course grades online.
- entering the course grades manually rather than importing them, e.g., from Excel
In other words, this is like bubble sheets except in a web browser. I did it for everything.
- Go to catalysttools.washington.edu/gradebook/
- Create _one_ gradebook titled, say, "Fall 2009" and select _all_ your courses and sections. Your 'real' class, 498, 600, 800, etc. -- check 'em all. Or if you used gradebook for your one 'real' class, follow this procedure for all the other ones.
- When you get to the gradebook immediately click on "Class Grade" and then choose "Online grade submission".
- Now one course/section will be in front of you. Fill in the grades. Click Review and Submit. Click Submit. See the 'done' picture for this course/section.
- Now choose "Go Back to Course XYZ Grade Submission" (the link _above_ the one for returning to the gradebook).
- From the drop-down menu, choose a different course/section and you'll be back at step (4) for that class.
[+] Webs & Wikis
[-] Webs & Wikis
- All courses in the department have their own webs. Course web files are located in in the file system at /cse/www/education/courses/{CSE course number}/{quarter identifier}/ (ie. .../cse142/12au). The course web directory is writable by members of the instructional course group.
Graduate students (and instructors) have "research" accounts, which means that they have accounts on machines that have access to /cse/www/. Undergraduate and 5th Year TAs have accounts on a machine called vole.cs.washington.edu that exists as a portal to access these files.
Staff will create two special subdirectories in your course web directory: csenetid/ and uwnetid/. Content that you place in these directories will be accessible only to users with a CSE or UW account, respectively. If you have content that you don't wish to be indexed by search engines, place it in one of these directories. The auth policies are established by the files called .htaccess in each directory. You may edit those to refine the policy.
An instructional machine called cubist.cs is available for classes that require the use of a web server for student content creation and/or Unix database use. Details are here. - You can get valuable feedback (and probably some raw flames) from your students by adding an anonymous feedback form to your course web.
- You can set aside blocks of time- perhaps to meet with the instructor to discuss project proposals- and ask students to sign up for them using this signup tool.
- Students can volunteer to "take" resources- typically, that means present papers in class- using this presentation tool.
- Some courses (and research projects) use MediaWiki to facilitate collaboration. See Using MediaWiki at CSE for details.
Related links
- The UWired Catalyst web site contains many useful tools that permit UW faculty and staff easily to create and manage web pages, mailing lists, etc.
- The CSE department publishes many of its courses on the internet.
- A number of cloud-based educational technology resources are available, from both Amazon and Microsoft.
Quick Links
- CSL / Support Home
- Access/Accounts/Passwords
- Backups & Restores
- Cloud & Email Services
- Computing Tips for Students
- Course Resources (Fac/TA)
- Equipment (loan/procure)
- Ergonomics
- File Service & Remote Access
- Lab Facilities
- Lab Policies
- Networking
- Printing & Scanning
- Security
- Software
- Tools
- Web Authoring
- Macintosh Resources
- Unix/Linux Resources
- Windows Resources

cs.