Description file for Keyboarder (rev 030501) Keyboarder is an open source, Cocoa (OS X) typing tutor application based on GNU's GPL gtypist and Takeshi Ogihara's open source Typist . This project is an implementation of the "T" (trainer) course from Typist. Another project will be the "S" (speed) course and possibly another the "N" (numeric keypad) course. The user interface is a window with 3 text fields about 80 characters long. The top text field displays instructions such as "Use the F-finger for the B-key". The middle field is the text to be copied. The bottom field is where the student's input displayed. The data ("course") consists of a series of "lessons" each of which is a series of pairs of lines, the first being the instruction and the second the line of text to be copied (a "unit"). Note that Ogihara mixes single lines with multilines. We have found that this does not work at the elementary school level. It's best to use a single line of about 40 characters and require a return at the end of the line (or generate an error). gtypist does this. Typist does not do this. We do do it. Ogihara's Typist uses a plain ascii data file (.typ) for the courses using asterisks and back slashes for delimiters. There is no need to maintain compatibility with Typist, so it might be better to use XML, for which Cocoa has built in tools. A lesson is either an exercise introducing a set of new keys or a review. Currently the course has 20 lessons with each having about 20 pairs of lines. 1-4, 6-9, and 11-14 introduce keys. 5, 10 and 15-20 are various reviews. The program keep track of time and errors. Time is used to calculate raw speed and both are used to calculate adjusted speed. Errors are used to calculate the percentage of errors. If the student types the wrong character, the character typed is displayed highlighted or colored to make it stand out. This applies to the return at the end of the line as well. When the student has reached the line, which means all the characters plus return, the program displays raw speed, adjusted speed and percentage of errors but not the elapsed time, and waits for input of a mouse click or the tab or delete key. The delete key reruns the same line. The tab key runs the next line. A mouse click does whatever the button says. The delete and tab keys are otherwise suppressed. Buttons are provided to skip to the next line, return to the previous line or to select another lesson using arrow keys. These buttons are always active. It might be desirable to keep the GUI similar to Ogihara's except for the sheet panel that he uses for the menu of courses. We have only one course, the equivalent of the "T" course. A desirable add on is a simple way for a teacher to customize the entire course or a single lesson. If it's XML there already may be tools for this. error percent