QCARD Wrapper

Albert Choi
Supervisor: Dr. James Cordy
Queen's University
The wrapper is no longer operating as a service. If you came here looking for a nicer looking timetable for your courses, you can try my stand-alone converter.


The QCARD Wrapper is my CISC 499 Undergraduate Project, which I did for my B.Sc.H. thesis at Queen's University. The project was presented on April 5, 2006.

About the Project

This project was undertaken to explore improvements that could be made to QCARD, the website and online database system used by all Queen's University students. It is a demonstration of what the interface could look like, using live data from the real servers. This was achieved using a reverse proxy server that I wrote myself in PHP. The project was completed without any official help from the QCARD team, and used only publicly available methods plus a good amount of reverse engineering.

More Information


  1. Why is the wrapper no longer working?

    ITS at Queen's decided to block its access for two main reasons: 1) a lack of encryption (SSL) for the passwords, and 2) it bypasses one of QCARD's load control mechanisms (seen when the QCARD server is "temporarily busy"). The second is relatively easy to fix, but the first will probably not be fixed.
  2. Will this project replace the official QCARD?

    No, the wrapper is only a proof of concept; it serves as a showcase for a new design. Using the wrapper itself to replace QCARD is not very smart. Since it is a "wrapper," i.e. a proxy, it still accesses pages of the original QCARD website like a regular user (inefficiently). It does not alleviate any strain on the servers, but rather creates more strain for the server that hosts the wrapper. If the redesign is to be a practical solution, they would have to directly rewrite the QCARD front-end, instead of using the wrapper method.
  3. If a wrapper/proxy is not the best way to do it, why create a live product? Isn't just creating the redesign sufficient?

    Several of the interface improvements can only be seen when interacting with QCARD (e.g. fixed back button, year/term navigation). In this case, a working demonstration is far more convincing than a redrawn design and allows for a fair comparison between the original and wrapped QCARD. It also proves the feasibility of features implemented -- the redesign is not just wishful thinking.
  4. Will QCARD ever adopt the improvements displayed by this project?

    I only took on this project because it was a nice technical challenge, not for any activist/political reasons. I have not tried to push the project, but ITS has told me that they are very interested. So hopefully, you may see some changes in the official QCARD soon (but don't hold your breath!)
  5. Is the QCARD Wrapper open-source?

    I understand that a number of people want the source code, so they can either use it personally or publish it online. Please do not publish it online for the whole world to use. I don't want Queen's ITS to have to find and block your site as well. That said, I will make the source code available for people who have a legitimate reason for it. Please email zalbee @ gmail DOT com.

Feb. 6, 2007