Section 5 - Additional details for developers
In this section we will put some comments about the source code that will make it easier for developers to modify and extend fsTimer; this section is still a work in progress.
Changelog for fsTimer 0.3
fsTimer 0.3 was released on Nov. 17, 2013 and is the second major release. Below are listed the major changes since version 0.2 (which was the first major release):
- It now ships with the completed documentation.
- The process for removing duplicates from the compiled registration was corrected (previously not all duplicates were removed) and made more efficient.
- New option to strip leading zeros from IDs as they are entered in the timing window.
- The timing window now allows for selecting multiple entries at the same time, and a "block editing" feature was added whereby increments of time can be added or subtracted to all selected entries.
- The maximum entry size of the timing window entry box was increased to 40.
- The timing screen now contains a new option to save the results to a csv file, in a similar way that the results can already be saved to html.
- Previously the feature tracking the number of racers checked in did not work when timing was resumed. This has been corrected.
- Printing of results was improved to use a more efficient data structure for tracking which IDs have already been added.
Features for fsTimer 0.4
There are several items that are on the "to-do" list for fsTimer 0.4, which currently will be released sometime in 2014. Let me know if there are any features that would be useful to you.
- I am considering introducing ties in places for racers that have the same time (to the second). Right now they are sorted in the order that their bib IDs were entered, which is essentially arbitrary for two people that crossed at the same time.
- Figure out what's the deal with this Mac OS issue where the area around the "Edit" and "New" buttons is selected instead of clicking on the button. I don't have a Mac so it might take some more time.
- Complete support of an RFID tag solution.
The following features are also under consideration:
- Adding a stopwatch to the timing window.
- Allowing the names of the divisional categories to be customized
- Quicker editing from the timing window (e.g., double clicking on a time brings up the editing window). The downside with this is the risk of accidental editing, which could be disastrous.
- I use lists for the queues of IDs and times. This could be done much more efficiently using collections.deque. The difficulty there is that to edit the results we need to be able to access specific indicies. The efficiency gain may be negligible for the size of lists that we use.