The Proposal

188 days ago

Tracks is a web-based application to help you implement David Allen’s Getting Things Done™ methodology. It was built using Ruby on Rails, and comes with a built-in webserver (WEBrick), so that you can run it on your own computer if you like. It can be run on any platform on which Ruby can be installed, including Mac OS X, Windows XP and Linux. Tracks is Open Source, free and licensed under the GNU GPL. It is used by thousands of people around the world every day.

I (Eric Allen) have been an active developer for Tracks since March of 2008, adding several features and fixing numerous bugs. This semester, I intend to step up my effort and contribute more significantly to the project. Being a fairly mature project, Tracks has a great deal of older code. Most notably, the Javascript code that underlies much of the interactivity in Tracks is showing its age. It is based on an outdated methodology (UJS) and depends on Prototype, a framework rapidly falling out of favor. Few of the developers on Tracks are capable of working on the Javascript due to its state, and even fewer are willing to.

My project this semester consists of revamping (and likely re-writing) most of the Javascript throughout Tracks. I will be migrating it to use jQuery and jQuery UI as the only frameworks, and I will be moving much of the code out of the HTML templates and into its own Javascript files. In the process, I will develop several new features, including more drag and drop functionality and better notification of new items added through the API. Not only will I add new functionality this semester, but my work will allow for far more creativity in adding features to Tracks in the future. By revamping and updating the Javascript for Tracks, I will enable thousands of people to Get Things Done™ more efficiently.

Eric Allen
---