This is the (current) homepage for the UMBC scheduler. Current semesters available for viewing include:
Starting in the fall of 2009, the old-style pages (static HTML, navigateable by regular HTML links) are no longer available to me. The new schedule of classes is not terribly suited to navigation by computer. I'm still interested in keeping this project going, so I've contacted DoIT asking for a method of retrieving the schedule of classes that is easily dealt with by computer. Their current solution is to e-mail me an Excel spreadsheet containing the schedule. This works, to a point, but it's a jury-rigged solution and has several glaring flaws. First, only courses which have been assigned a classroom are included in the current spreadsheet. Second, the spreadsheet is inherently slow to be updated. Third, the spreadsheet is only sent to me, not to any student who wants their own copy of the schedule for their own purposes. These downsides lead me to believe that a better solution can, and should be found.
Please note that I don't want to cause trouble for DoIT staff. They have always been helpful in response to my questions, and I don't want to force them to implement anything. I'm willing to do whatever work is necessary to build the pieces I need.
If you would like to see a scheduler that has these flaws corrected, please drop me an email and let me know you're interested in such a thing. I'll keep a list of people who have sent me email here (and relevant quotes, unless you request otherwise), so that the amount of interest can be judged.
The schedule for fall 2009 was last updated April 3, 2009. Independent study and capstone classes are not included. Classes which have not yet been assigned a professor are now included.
In total, I have received email from 8 people (and several in-person conversations) concerned with the lack of (or inferiority of) a scheduler program.
In addition, the source code (in Perl) is available under the MIT license. Please respect the licensing terms. Run it as "./parse.pl <semester> > mydatabase.schedb". Some debugging output is provided in an attempt to let you see what went wrong. Make sure "semester" is of the form "spring2009". It runs fine on GL; make sure to run it in an empty directory, it'll gladly nuke certain filenames.
Also, please note that this code is not intended to be normative; good Perl doesn't (or at least shouldn't) look like this. Writing XML is best accomplished using an XML library, not a series of stacks. Also, the regular expressions are intended to scare you off. Try to figure out what they do, though; they're quite powerful when put in the wrong hands. That is, mine.
Any questions on the function of this program or its derivatives can be forwarded to the username associated with this webpage (the part after the ~ and before the first slash) at umbc.edu. I am quite busy this (and every :-/ ) semester, but I'll try to make time to answer questions on this.
Any additional errata are entirely the product of your fevered imagination, and therefore your fault. Thus, please contact me and I will update this page with a mention of who is causing bugs in my otherwise perfect software.
This program works under Debian Linux. "apt-get install sun-java5-jre sun-java5-plugin sun-java5-fonts", then you can either save the jnlp file to disk and run "javaws scheduler.jnlp" or set your web browser to associate jnlp files with javaws.