Georgia Tech printing driver is only available on Windows and Mac OS X. That is to say, Linux users and mobile users have to switch to another device in order to print their files to GT printers. Personally I am a heavy Linux Mint user, so I am repeatedly annoyed by this fact. I am really hoping for a cross-platform printing solution.

However, this turns out to be a non-trivial problem, primarily because Pharos, the printing system Georgia Tech is now using, is a commercial software that has no public API. In addition, every time we print, it pops up a window asking for GT username. So there is no mannerly ways to tackle this problem.

But I am determined to hack this problem. My final solution is: (1) set up a Windows server that accepts file submission via Http, (2) invoke proper softwares (like Adobe Reader) to print the submitted files through command line, (3) simulate keystroke to enter the correct username into the pop-up window. That is the basic mechanics of our backend server. I also incorporate a monitoring system to allow users to check their submission status ("in queue" or "printed").

Besides the backend server, our team also developed a web app, an iOS app and an Android app that allow file submission online or on mobile devices. Users can also check the status of their submission through these apps.

Our project cannot change the world, but it can definitely make GT students' lives easier.

Share this project: