Skip to content

abramsa/DSS

Repository files navigation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                                                          %%
%%                             DSS Chair Manual                             %%
%%                                                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


Revision history:
- created 8/4/2008 by Edwin Westbrook
- edited 08/21/2008 by Eric Xu
- edited 08/13/2011 by Austin Abrams

%%%%%
0. Introduction
%%%%%

So you have volunteered to be a DSS chair. Good for you! It's more than just
a bullet point on your CV; it also gives you valuable academic skills. These
are probably the first sessions you will ever chair! Hopefully your academic
career will require chairing more sessions in the future, so running DSS is
great practice. Also, being a DSS chair gives you practice in organizing and
running events. If you do a good job, people will notice, especially the
faculty. Finally, chairing DSS gives you the opportunity to listen to many
talks. If a talk is good, you learn how to give a good talk, while if it is
bad, you learn what you think is bad in a talk and hopefully you can avoid
the same mistakes. Plus, of course, DSS is good for everyone else in the
department. And somebody needs to do it.

A word of advice: do not get bogged down in trying to make everyone happy.
This is a volunteer position. You can only go so far. Do not let people
convince you to do lots of unnecessary shuffling around of schedules or to
make unreasonable exceptions. As long as you tell people ahead of time what
is expected of them, you should expect them to do it. If they do not, do
whatever is most convenient for you. In the end, if someone just will not
go along with you, it is they who look bad. And remember also: it is not
your job to make them do it. You can always defer to the chair of the
Doctoral Program Committee (aka Dr Pless in 2011), who can deal with
problem cases.

Another point to keep in mind: you are going to have a fair bit of
information about people. A lot of this stuff is not exactly confidential,
but you should try to be discreet about it.

Otherwise, this can be a lot of fun! Get out in front of people and make
a speech! Get everything organized just how you want it! Enjoy yourself!

%%%%%
1. Getting set up.
%%%%%

Perform the following commands:

    $ ssh yourseasname@ssh.seas.wustl.edu
    $ cd /research-www/engineering/dss.cse/dss
    $ ../local/bin/python manage.py createsuperuser
	
And follow the onscreen steps.  Congratulations, you're now a DSS superuser.  Don't tell anybody about how easy that was.

%%%%%
2. Scheduling
%%%%%

The work of running DSS is split into two parts, scheduling the students and
running the talks. Scheduling should start about a month before the semester
starts, so at the end of July for the Fall schedule, and at the end of
December or the beginning of January for the Spring schedule. Alternatively,
you can schedule for a whole year in the summer.  

This system used to work by doing a LOT of in-database editing, and making sure
that you constantly backed up the SQL database before doing anything.  Now,
everything is web-based, which should make your job substantially easier.  If
you want, you should go see Dan Lazewatsky and Austin Abrams and give them each
a 6-pack of Blue Moon, Newcastle Brown Ale, or Schlafly Pale Ale as thanks.

Here are the steps to create a DSS schedule:

0. Back up the database, using the following commands:
   > ssh username@ssh.seas.wustl.edu
   > cd /research-www/engineering/dss.cse/dss
   > mysqldump --host=myresdb.seas.wustl.edu --user=dss --password=sql4dss! --databases dss_web > dump_mm_dd_yy.txt

1. Log into your superuser account by going to

   http://dss.cse.wustl.edu/admin

   And clicking on "Login".  Go back to http://dss.cse.wustl.edu/admin, and 
   there should now be a few admin options.  Click on "Manage DSS Schedule".

2. At the top of the page, there should be a bullet point that says "Make a new
   schedule for Fall/Spring yyyy".  Fill in the appropriate details, and press 
   submit.  You now have an empty DSS schedule for that semester, which defaults
   to placing an event every Friday from January 23 - April 30 for the Spring
   semester, and September 15 through December 5 for the Fall Semester.

3. Go get a copy of the school's academic calendar, and find out which dates 
   overlap with official university holidays or breaks.  Let's suppose that
   October 14 was scheduled as a DSS event, but it's actually Fall Break.  Go to
   the top of the admin schedule page, and create a new "Break" event for
   October 14, and fill in the appropriate details.  Create that new event, and 
   the schedule should change, with a second event on October 14, which says 
   "There will be no seminar due to Fall Break."  Find the old DSS event 
   scheduled for that date, and delete that event by clicking on the "Delete 
   this event" on the right side of the page.

4. Get a list of students just beginning their second year of their PhD from
   the department office, along with their e-mail addresses and advisor(s).  
   First-year students are exempt from giving DSS talks, so we start with 
   second-years.  Go to

   http://dss.cse.wustl.edu/admin

   And click on "Create/Modify/Delete Students".  Use this interface to add each
   new second-year student or modify new ones (if someone changes their advisor, 
   for example). Also, if there are new faculty or retired faculty, you can use 
   "Create/Modify/Delete Advisors" to update that.  For sake of database 
   consistency, do not delete anybody, but instead mark them as inactive.  They
   were someone's advisor at some point.

   For a student's web key, generate a random 9-digit number.

5. Go back to the admin page and click on "Email/Schedule Students".  This has
   a listing of all the active students in the department, along with their 
   exemption status.  Their exemption status is the last semester's reasoning
   for why they didn't give a talk, and it may very well be out of date.  We
   will determine their true eligibility in future steps.

   In the next year, you should hope to schedule everyone
   in the "Regular Students" group, and probably some of the "Exempt" students 
   as well.  You should try to make sure the spring DSS schedule has about the 
   same number of students as the fall DSS schedule.  Assuming that all "Exempt"
   students are now eligible for DSS, add up the number of total students you
   need to schedule, and divide by 4.  This is the number of events you should
   have each semester (2 talks per event, 2 semesters a year).  If you need to, 
   go back and add/delete some events to the schedule.

6. Now that you know which dates will have DSS events, it's time to schedule
   some students into those events.  Go back to 

   http://dss.cse.wustl.edu/admin

   And click on "Email/Schedule Students".  Select all Regular and Exempt 
   students that did not present last semester, and all exempt students.  Make 
   sure that the button is set to "Email Students", and click "Submit".

7. This will bring up an interface where you can write emails to students.
   There are already a few templates that you should probably use.  Under
   "Email Template", choose SubmitPrefs (it may already be selected).  On the 
   left-hand side is a Django-style template of the email, which is just a
   fancy way to draft your email and fill it with person-specific parameters.
   The right-hand side of this page shows a preview of what one of the students
   will see.

   The SubmitPrefs template should work fine for now, so just click on "Send 
   Mail".  DO NOT PRESS THE SUBMIT BUTTON MORE THAN ONCE.  This is sending
   email to a bunch of students across the department, and they will receive
   the email more than once if you press the submit button again.  It will
   probably take a few minutes, so just go get something to drink and come back.

8. Assuming everything went well, you'll be put back on the student dashboard.
   Notice that for all the students you just emailed, we keep a timestamp of 
   which email we sent which students.

   Wait for people to respond. They will each get sent a URL by the
   SubmitPrefs email, allowing them to state their preferences and request
   exemptions. You can see what people are entering by going to

   http://dss.cse.wustl.edu/admin

   and clicking on "View Schedule Preferences".  At this point, students are
   free to mark if they are exempt, and we trust that they are giving us
   the right information.  If they mark themselves as exempt, then they will
   be excluded from the schedule for this semester.

9. A few days before people are supposed to have responded, check for
   stragglers (on the list of students that you can email, there is a column 
   that corresponds to if a student has or has not yet responded to the latest
   email sent).  I have found that most of the time these are people whose
   email address is incorrect or who are just ignoring you because they
   are no longer actually in the PhD program. Check with one of the
   secretaries (aka Madeline in 2011) about these people. If they really
   are supposed to be presenting, try to talk to them in person, to make
   sure you have the right email address and to make sure they know that
   they really do have to respond. You can update a student's email
   address by going to

   http://dss.cse.wustl.edu/admin

   and clicking on "Create/Modify/Delete Students".  You can modify a student's 
   exemptions by clicking on "View/Modify Exemptions".

10. Once you're ready to build up the schedule, click on "Email/Schedule 
	Students".  Select all Regular students that did not give a talk
	last semester.  At the bottom of the page, select "Schedule Students"
	and click "Submit"
	
	This will create a scheduling optimization problem (solved by Munkres 
	algorithm, FYI) that will try to maximize the "happiness" of everybody 
	against their preferences.
	
	You should make sure to schedule the students that ABSOLUTELY MUST present
	next semester first, as one big group, and then after those have been
	scheduled, add in anybody that has filled out their preferences, and if
	there is still space, anybody that hasn't filled out any preferences.
	
	Remember, as DSS Chair, you're volunteering to do a pretty thankless job, so
	if someone says that they didn't get the email, or that they can't give
	their talk on the day they were scheduled, just tell them to try and find
	someone else to swap with or talk with the Doctoral Program Committee chair 
	(aka Dr Pless in 2011).  
	
	The assignment algorithm used is in fact optimal, so if a person was 
	scheduled on some day when they couldn't actually present, then moving them
	to any other day would cause one or more people to present on a day when
	they couldn't, and someone's gotta take the fall.
	
11. Once the schedule is set up, go to the admin site and click "Schedule
    Judges".  This will schedule faculty members to judge the DSS talks, so 
	that:
		1. None of the judge's students are presenting that day, and
		2. At least one of the judge's students said that they were available to
		   give a talk that day.  Since students should sign up so that both
		   they and their advisors are available that day, the advisor should
		   be available.

12. (CURRENTLY A TODO) Email grads@ and csf@ to tell them that the new schedule
    is up.
	
13. About a week before a student is scheduled to give a talk, an email will go
    out to the students presenting that their abstracts need to be submitted.  
	This will prompt the student to fill in information about their talk.  If a 
	student neglects to fill in this information, you are free to fill it in 
	yourself courtesy of the Automatic CS Paper Generator, found here:

	http://pdos.csail.mit.edu/scigen/

	Or just ignore it.  There's another email that goes out on Thursday that
	will say "No abstract submitted" and it looks really embarrassing for that
	student.

14. Give yourself a great big pat on the back!!!


%%%%%
3. Running the Events
%%%%%

The first thing to do is set up the food. A cron job automatically sends an 
email to Kelli (as of Jan 2011) with the pizza order, which will arrive in the 
CSE office around 12PM. Make sure you leave enough time to
set up the food and give people time to get their food so you can start on time. 
In addition to pizza, we provide drinks and snacks. 6-7 2 liter bottles of soda 
and 5-6 bags of chips/pretzels/etc. seems to be a good amount.
After setup, there are two jobs: running the camera, and dealing with the 
speakers. DSS owns a camcorder and tripod which should be placed somewhere where 
both the speaker and screen are visible, and close enough to pick up the 
speaker's voice. The other person is responsible for introducing speakers,
keeping track of how much time they have left and making sure to cut o� 
questions after time is up.

Once you're ready to upload a video, go to the admin site, click on "Upload 
Video", select the talk, and upload away.  This will give your file the right 
naming convention and put it in the right place.

%%%%%
4. Dealing with Troublemakers
%%%%%
Most doctoral students are conscientious and responsible, but every semester 
there will be one or two students who make your job harder. This comes in a few 
forms:

-  Shortly before their scheduled slot, a student emails/calls/stops by saying 
they didn't know they were scheduled to speak and can't go during their 
scheduled time. Don't feel bad about telling them tough luck. They are welcome 
to switch with another student who was scheduled later in the semester, but
the DSS chairs are under no obligation to find someone to switch for them or to 
remove the student from the schedule.
-� Shortly before their scheduled slot, a student emails/calls/stops by saying 
that their advisor does not want them to go during their slot. Ask the student 
to try to find someone to switch with. If they can't, just remove them from the 
schedule. However, if you do remove them from the schedule, make sure to notify 
the doctoral program chair of the situation (a quick email is sufficient).
It's not your job to fight with students or faculty about scheduling. Don't 
stress out about it, and if there's a situation that you can't resolve, don't 
feel bad about bumping it up to the doctoral program chair (Dr. Pless in August 
2011).

%%%%%
4. Remaining TODOs
%%%%%

(TODO: Send out emails after being scheduled)

(TODO: Ajaxify the send_email page so that the admin can see progress.)

(TODO: Automatically send email to the department advertising this week's DSS events)

About

Revamping the Doctoral Student Seminars page

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published