Figure 1.

JobLog

Introduction

JobLog is a program which you can use to record your daily work activities. Figure 1 shows its main window. This window consists of four main parts:

  1. The main banner.

  2. The activity prompt window. This is immediately below the main banner and in figure 1 is empty. In one of JobLog's modes this will contain a prompt when JobLog needs you to select your activity. Figure 2 shows another instance of the main window with a typical activity prompt displayed.

  3. The principle feature of the main window is the activity selection list. This is a list that you maintain yourself using the Delete, arrow and Add buttons, and which contains the activities you perform most commonly.

    The very first time you use JobLog this window will be empty. Clicking on Add in the main window will popup the activity window (see figure 3) where you combine actions and objects to create new entries in your activity selection list.

    There are two different button colours: blue represents global activities and light orange represents user-defined activities. These will be explained in more detail below.

  4. At the bottom of the main window are the Add and Quit buttons and the Auto-select checkbox.




Figure 2. (click for detail)

Operating modes

JobLog is designed to be as unobtrusive as possible and works in one of two modes:

  1. In the first mode the main window sits as an icon on your screen. At regular intervals (default: 15 minutes) it pops up displaying a message prompting you to select your current activity. When you click on the activity it writes this selection into its log and then returns to being an icon until the next interval. Figure 2 shows the main window of JobLog prompting for an activity selection.

    This is a sampling mode and relies on a long-term collection of your activity samples to give a statistically reliable indication of what you have been doing.

  2. In the second mode you select the activity which you are starting, click on the Auto-select and then iconise JobLog. Then, at each interval, JobLog will automatically write the selected activity to the log. Care must be taken in this mode that you don't forget to stop JobLog when you stop work or go home or else it will just keep writing your last activity to the log!

    In this mode JobLog captures your start and stop times for each activity, but has a higher "intellectual" overhead in that you must remember to update your selected activity as you move from one to another.

Note: each time you select an activity, regardless of the mode, it will be remembered by JobLog and will be displayed on its button in a white font.



Action + object = activity

JobLog> treats everything you are doing as an activity, and an activity is an action that you are doing to an object. In the activity selection list in main window (and, indeed, in the logs JobLog creates) activities are written in the form:

<action>:<object>

Both actions and objects can be hierarchical and you can see a typical example of a hierarchical object with "hardware.workstation.mouse".

The activity window (see below) allows you to create action/object combinations for your activity selection list, and to create new actions and objects.



User-defined and global selections

In the figures showing the main and activity windows you can see that some buttons--the majority--are blue, while a few are light orange. JobLog is designed to work in a group environment and to encourage consistency within the group predefined actions and objects are provided from global files. Actions and objects that come from these global files are those that are coloured blue. Actions and objects you define yourself will be coloured light orange. Activities in your activity selection list will be blue if both the action and object from which they are composed are global, otherwise they will be light orange.




Figure 3. (click for detail)

The activity window

This window is used to create new entries in the main window's activity selection list by combining actions and objects. The left side of the window displays, and allows navigation, through the action hierarchy, and the right side of the window displays, and allows navigation, through the object hierarchy.

Below the title on each side is a small panel showing the current position, or level, within the hierarchy. On the right hand side of this panel is an arrow which you can click to go up one level.

Below the level panel is the list of items (actions or objects) present in the current level. User-defined actions and objects at the displayed level can be deleted by clicking the Delete button. You go down one level by clicking on the arrow next to the item.

You can add your own (user-defined) actions and objects by entering the name (which may contains spaces) at the bottom of the window and pressing Add. This adds your new item at the current level. The entries you add will be coloured light orange.

Creating activities

To create a new activity in your activity selection list find or create the appropriate action and object within their corresponding hierarchies, click on each to select them (JobLog will indicate that they have been selected by changing their names on their buttons to a white font), and then click the Add button on the far right of the activity window.

When you have finished adding activities to your activity selection list click on Close to close the window. You can continue to use the main window while the activity window is displayed or iconised.



Starting JobLog

JobLog requires a number of files--libraries, images and global action and object files--and expects these to be in the same directory as the program itself.

The actions and objects defined by the user, and the activity log file, are all stored/created in the "current directory"; so, to run JobLog you need to ensure that you start it from the directory where you want your log file to be created and your personal action and object files to be stored.

Unix

Start JobLog on a conformed Unix or Linux box as follows:

  1. Create a directory, presumably somewhere in your how directory, where you would like to have your personal JobLog-related files stored. These include your log file and your user-defined actions and objects. Eg.:

    mkdir .joblog

  2. Change directory to that directory. Eg.:

    cd .joblog

  3. Start JobLog:

    /home/csg/joblog/joblog.v2

Of course, you can omit step 1 after the first time you run it.

Windows NT, et al

To be written.

Macinitosh

To be written.



Running JobLog in sample mode

Sample mode is where JobLog sits as an icon on your screen and then pops up at the beginning of each interval asking you to select your current activity (see figure 2). When you click on an activity in your activity selection list it writes this to the log and then automatically returns to being an icon until the next interval.

To operate JobLog in this mode start the program and then just iconise it with your window manager. When JobLog pops up simply click on an existing activity from your list, or use the Add button to popup the activity window which allows you to add an appropriate activity to your list. Close the activity window and then click on the activity in the selection list.

If you miss one or more intervals JobLog will remain on the screen and will prompt you for each "missing" interval. Once you are "current" it will return to being an icon.

Note: JobLog will not do anything until it is an icon.



Running JobLog in auto-select mode

In auto-select mode JobLog will supply your activity for the log automatically at each interval. You must choose your activity first before this mode will work. You can change your selected activity at any time.

To operate JobLog in this mode start the program and then select your activity from the list, or use the Add button to add one or more new activities to your list for you to select from. The currently-selected activity will be shown in a white font.

Once you have your activity selected click on the Auto-select checkbox at the bottom of the window. Then iconise JobLog. From then on your activity log will be written automatically at each interval with the selected activity.

To change activity de-iconise JobLog, select a new activity and then iconise it again.

To revert to sample mode de-iconise JobLog and deselect Auto-select.




Figure 4.

Catching up

Sometimes you can't run JobLog while you are working. You might go to visit a supplier before coming to work, or you may be at a conference for a day or more. In these and similar cases you can start JobLog with a command-line argument giving the time and optional date from which you want JobLog to start.

The date can be given in a range of formats, but the following example shows probably the plainest way of doing it:

joblog.v2 "07:00 8 nov 2001"

When you do supply a start time on the command-line you will get an information window similar to that shown in figure 4 as JobLog starts.

If you supply a date or time that JobLog can't parse it will output a helpful message. JobLog is written in Tcl/Tk and uses the standard clock scan command to parse the time/date string on the command-line. Perusing the clock man page will show you other date formats that are acceptable.



Activity log format

For each interval JobLog writes one entry to the end of the activity log. The log looks like the following extract. The beginning of each line contains the date and time of the interval (rather than the time the entry was actually written) followed by the activity as it was displayed on the selected activity button in the main JobLog window.

2001-11-08 07:00 develop:infrastructure.joblog
2001-11-08 07:15 develop:infrastructure.joblog
2001-11-08 07:30 develop:infrastructure.joblog
2001-11-08 07:45 develop:infrastructure.joblog
2001-11-08 08:00 develop:infrastructure.joblog
2001-11-08 08:15 develop:infrastructure.joblog


Data files

File name Location What it is for
global_action.dat JobLog program directory Contains the list of global/group actions, one per line
global_object.dat JobLog program directory Contains the list of global/group objects, one per line
user_action.dat Run directory Contains the list of user-defined actions, one per line
user_object.dat Run directory Contains the list of user-defined objects, one per line
activity.dat Run directory Contains the list of user's list of activities from the activity select window, one per line
joblog.log Run directory The user's activity log


Other windows and errors


Figure 5.

JobLog can display quite a few other windows other than the ones already mentioned. Figure 5 shows one of the most trivial and one which you are unlikely to see most of the time. This "Starting..." window pops up before the main window appears as the program is starting.



Figure 6.

In this startup phase JobLog reads its various lists of actions, objects and activities. Other windows may be displayed during this phase, such as that shown in figure 6.

This window appears when a user starts up JobLog and an entry in their activity selection list (in the main window) is discovered to have an action or object component that is not in any of the group's or user's action or object files.

This can occur, for example, if the group's object file is cleaned out one day and a user who has an entry in their activity selection list which refers to a removed object starts JobLog. This is a warning only and does not prevent JobLog from running.

Note: this warning will be redisplayed each time JobLog is started until the user performs any update to their activity selection list.



Figure 7.

More serious is a window such as that shown in figure 7. When a window appears saying that either global_action.dat or global_object.dat cannot be found JobLog will not run and the mentioned file must be recovered or created.


Other windows may be displayed when JobLog attempts to write to any of the user's log, action, object or activity files. These will contain the best information JobLog can provide to help you fix the problem.


Monochrome and non-compact modes


Figure 8.

JobLog has two optional display modes: monochrome and non-compact. Both modes affect affect the way both JobLog windows are displayed even though the examples here only show the main window.

In monochrome mode (see figure 8), activated by the -mono command-line option, JobLog changes the display as follows:



Figure 9.

Some versions of the graphics libraries used by JobLog can have problems with the "compact" GUI that JobLog attempts to use to save screen real-estate. A "non-compact" GUI can be activated by the -no-compact command-line option (see figure 9). The main characteristic of this mode is that there is much more space between the text in the buttons and the edges of the buttons.

Both monochrome and non-compact modes can be used simultaeneously.



Other command-line options

-sort-activities
This option causes the activity-selection list in the main window to be always displayed in alphabetical (sort) order. The up and down arrows normally next to each list item are not displayed.