Pond logo
Pond’s Place
Ruby software: TrackRecord
Home  |  Music  |  Software  |  Photos  |  Panoramas  |  Wallpaper  |  Forum  |  More!
Download v1.51

Information

Latest version:1.51
Last updated:10-Dec-2009
Download size:4.6 megabytes
Download kind:GZipped tarball
Required:Rails v2.3.5 (included)
Various gems (included)

Other downloads

Current

Please see the RubyForge project page for the latest updates.

  • trackrecord-1.51.tar.gz
    Release v1.51 with frozen Rails and gems, 4.6M
  • trackrecord-norails-1.51.tar.gz
    Release v1.51 without Rails or gems, 1.2M
  • CHANGELOG.txt
    Full change log (copy of CHANGELOG file from inside archive)

Historical

  • trackrecord-1.0.tar.gz
    Release v1.0 with frozen Rails, 2M)
  • trackrecord-norails-1.0.tar.gz
    Release v1.0 without Rails, 309K)

TrackRecord

TrackRecord is a Ruby On Rails application which lets users enter and analyse timesheets. It may be of use to sole trader contractors who wish to keep track of their time, or other small businesses. It is released under a BSD license and has an associated RubyForge project.

  • Installation
    • Downloading
    • Upgrading
    • Browser requirements
    • Dependencies
    • Configuration
    • Setting up
  • Reliability
    • Development tested only
    • How to report bugs or ask for new features
  • Screenshots
  • Licence

Installation

Downloading

See the sidebar for links to source archives you can download. Versions of the application with and without a frozen copy of a "known to work" version of Rails and required gems included are available; the "-norails" version omits the frozen Rails code and gems. This lets you use Rails and gem code shared from a central gem repository if you so wish.

The RubyForge project for TrackRecord generally only carries stable releases in the repository, but does sometimes carry small changes, often for things like documentation-only alterations. If you want to use SVN to keep track of changes to the source, have a look at the relevant RubyForge page.

Upgrading

If upgrading from an earlier version of TrackRecord, please consult the online change log to find out how to proceed.

Browser requirements

This release of TrackRecord has been tested on Mozilla Firefox 3.5 and Apple Safari 4. For very best results please use these browsers or a later version of either. Opera 10 has been tested and works well, except for some minor visual degradation due to use of some non-standard CSS extensions which Opera does not support. The application should work correctly on older Firefox versions back to version 2.0, the Opera 9 series and WebKit-based browsers such as recent versions of Konqueror or Google Chrome, though these have not been used for testing.

Although TrackRecord will function under Microsoft Internet Explorer 8, some functions will not be available and performance will be degraded, with greater load on the server for some operations. Earlier versions of this browser are not supported at all. Browsers without JavaScript support such as NetSurf v2.x should work but again, some functions will not be available and greater load will be placed on the web server for some operations.

Although JavaScript is optional, robust support for Cascading Style Sheets level 2 revision 1 or better is assumed.

Dependencies

Once you have downloaded the application archive and unpacked it, consult the online change log for full information on external Rails and gem requirements. If you downloaded the full archive with Rails and gems included (rather than the "-norails" archive) then the only dependencies are:

  • Ruby 1.8.5 or later but not 1.9 compatible.
  • A web server environment capable of supporting Ruby On Rails applications – Apache and Phusion Passenger recommended.
  • A database on top of which Ruby On Rails can run, coupled with whatever gem or gems are needed to give Rails applications access to that database. For example, if using PostgreSQL 8, the pg gem must be installed.

Most development testing for TrackRecord 1.5 was done using Mac OS X 10.6 running Ruby 1.8.7, Apache 2.2.13 with Phusion Passenger 2.2.5 and PostgreSQL 8.4.1 with pg 0.8.0. If you are running OS X 10.6 and having trouble getting Rails applications to run, this blog post should be helpful.

Configuration

To install TrackRecord v1.5 clean, rather than upgrading an existing deployment, unpack the application archive somewhere. Then edit the following files, used for configuration purposes:

  • Create config/database.yml in the usual Rails fashion. A template based on PostgreSQL is provided in file database_blank.yml.
  • config/environment.rb to set a secret key if you are using the cookie session store.
  • config/initializers/general_config.rb for a few important constants you may need to modify. Extensive comments inside the file (hopefully!) explain everything.
  • config/initializers/email_config.rb for some important constants which you will definitely need to modify. Again, comments inside the file should explain everything.

Once this is done, you need to set up your database. This is most easily achieved using Rake tasks at the command line with the current working directory set to somewhere inside the TrackRecord application directory.

$ rake db:create:all
$ RAILS_ENV=production rake db:migrate

Change production to development in the above example if you want to set up the database for development testing rather than a production installation of the application.

Setting up

Once installed, when you first visit your new TrackRecord installation you will be asked to create a user account. The new user will have administrator privileges. You will need to provide an OpenID when you do this. Once at least one user has been created, all subsequent visits to the site by logged out users will lead to the sign-in page. This includes extensive information about OpenID to help anyone who is unsure about it understand the process. If you are administrator setting up the site for the first time and you are not sure about it either, the information on the sign-in page may be of interest - see the following file:

app/views/sessions/new.html.erb

Reliability

Development tested only

TrackRecord was beta tested for several months by a small company with which I am involved and performed well. Version 1.0 ran for over a year with daily use by around ten individuals without problem. Version 1.5 was tested for a few weeks and is now being used live by the same company, again without issues so far.

However, there are no automated tests whatsoever at present. This is something of a huge no-no in Rails land but there are pragmatic reasons for it. With the likes of Webrat becoming reasonably mature it is now possible to make tests with very meaningful real-world parallels and at some point I will be adding these, though I did say something similar back when v1.0 was released and still haven't got around to it. Any kind soul who wishes to contribute one or more automated tests of any kind is most welcome to contact me (see below) – otherwise, keep watching this space!

I'm confident that the system is reliable and generates correct numbers in reports. As with most software, though, there can be no guarantees, with or without automated tests; if you intend to use TrackRecord for business critical purposes then I strongly recommend you trial it alongside a secondary recording and reporting system to verify its output, until such a time as you are satisfied that it is reliable in the context of use to which it is being put.

How to report bugs or ask for new features

Please report bugs or raise feature requests using the Pond's Place forum's TrackRecord section.

Screenshots

Welcome Timesheet overview Edit timesheet Create report
View report Exported report Search Audit

Licence

The following is a copy of the text of the LICENSE file held inside all of the download archives:

  Copyright (c) 2008, 2009 Andrew Hodgkinson
  All rights reserved.

  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions
  are met:

  * Redistributions of source code must retain the above copyright notice,
    this list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.

  * Neither the name of Hipposoft nor the names of its contributors may
    be used to endorse or promote products derived from this software
    without specific prior written permission.

  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
  IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
  PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
  OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The favicon.ico file is adapted from the Radiant CMS logo. Used with kind permission of J.W.Long.
Valid HTML 4.0 Valid CSS
A.D.Hodgkinson
Updated 21 Jan 2010
Creative Commons License The HTML, CSS and image files herein are
subject to a Creative Commons License