Are all CS departments this slow to adopt new tech?

Having spent 5 years taking courses in the Computing Science department at Simon Fraser University, I’ve become pretty familiar with the various web applications used to track course projects, submit assignments, etc.  Over the same five years, I’ve seen numerous technological changes, both in the “outside world” and within the University.  For example, not too long ago, SFU switched to a central authentication service aptly named “Central Authentication Service” (or CAS).  It’s a pretty nice service, with a snazzy login screen (below).

SFU CAS Login Page

It’s not only snazzy, but a pretty useful system.  I even integrated one of my school projects (an online grade tracking application) with it without any external support.  Let’s contrast that with the current login screen for “Gradebook”, an application developed by the CS department and used in most CS courses to track grades

Gradebook Login Page

Ok, not as snazzy, but here’s the really frustrating thing:  My account here is NOT the same as my SFU computing account!

The “Gradebook” system also includes an electronic assignment submission server

CS Submission Server

(BTW: This is only a small snapshot of the page)

Sure, it isn’t snazzy looking, but it’s simple and to the point (+10 points).  However, it comes with a few caveats: I have to use my “Gradebook” account, not my (so-called) “universal” SFU account (-25 points), and ALL submissions must be in ZIP, GZIP or RAR format (-25 points)!  For many of my courses, the electronic submission has been a single file, and the instructor often has to email the students to remind them that they have to wrap their single PDF file (or Word Doc, etc.) in a ZIP file to upload it.  I can understand the benefits as far as storage space, and bandwidth consumption, but wouldn’t that be better achieved by simply placing a size restriction and allowing any file to be uploaded?  Plus, when I do login, I get a page with a drop-down list of courses.  Here’s the contents:

image

See that scrollbar?  Yeah… I’m not registered in anywhere near that many courses (the one course I’m registered in is a few scrolls away), but it would appear the submission server doesn’t know that.

It doesn’t end with the student interface.  In a course on “Web Information Systems,” we were required to develop a web-based application of some sort, and my group chose to build a grade tracking system (partly out of frustration with the current system).  Before starting the project, we organized a meeting with our instructor to find out what his frustrations were with the existing “Gradebook” system used by the department.  He mentioned that instructors had to rebuild the structure of assignments, exams and their relative contributions to the final grade every time they created a course.  He continued to show us a tool he developed which allowed him to create more detailed marks, give comments, and build an email to send off to the student.  He had to build a custom tool to perform tasks which I would consider essential to a modern grade tracking system.  In a few weeks, we hammered out a “school project quality” system running on Ruby on Rails (ASP.Net MVC wasn’t out yet :P) which supported all the features we discussed in our meeting with the prof.

Granted, I know it’s not as simple to fix as it is to complain.  But, with the tools out there, and the number of open-source and commercial courseware products, I still don’t really understand why we’re using a system with so many annoying issues…

For the CS students (or recent grads) who read my blog, is my experience atypical?  Or are your school services as out of date as these?

Quake Live – Fun? Sure. Interesting? Meh.

There’s been a lot of buzz around the Internet about Quake Live.  I decided to succumb to the hype and try it out and I must say it is pretty cool.  However, a lot of people have heralded this as a unique new way of distributing games, and I have to disagree with that.  Quake Live is no different than any other downloadable game, it just happens to use the browser as a host.  When you go to http://www.quakelive.com for the first time, you log in and wait in a queue.  When you reach the front of the queue, you are prompted to download a plugin (in the form of a Windows Installer MSI file) for your browser.  If the queuing thing sounds very FilePlanet-esque to you, it certainly does to me.  Then you download the game plugin installer and run it (as an Admin).  When it finishes, you have to restart your browser and go back to the website.  After waiting in the queue some more, the game loads up and runs in the browser.

How is this process different from installing a regular desktop game?  You download the installer, run it as Admin, and then start the game.  The only different here is that the game code is running in-process (AFAIK) with the web browser.  It really isn’t that different!  Developing a game like this using an existing plugin like Flash or Silverlight (especially since Silverlight 3 is supposed to include 3D Acceleration support) would be, IMHO, much more innovative.

About the only thing in Quake Live that differs from a regular desktop game is the use of a streaming installer, which downloads a (relatively) small bootstrapper and then downloads the rest as you play a 10minute training level.  Even that isn’t really unique, as Scott Hanselman points out, Guild Wars has included that feature for a while.