HapiClock (VB6)
HapiClock is a useful little program. It replaces the traditional wall-mounted clocking in system with a small application on one or more computers. Logging in and out is via a password based1 system. The manager can then create timesheets in text (boring!) or Excel format. Excel spreadsheets come with a little added code to work out pay. HapiClock can handle holidays and overtime, if you tell it what the shifts are supposed to be.
My old practice was running this system for about two years before I left, and continued to run it for about another year before expanding to multiple sites (it could actually be extended fairly easily across multiple sites using a VPN but they didn't bother to ask me). The code for handling holidays and overtime has been put in since then for a boss who then changed his mind about how much he hated the wall based system, so it hasn't been properly fool-tested.
1 This means that it could concievably be adapted to a fingerprint or barcode system if you wanted to get the relevant hardware, as most of these seem to plug into a keyboard port.