Welcome to the Features and Tutorial of TypeMyStuff! TypeMyStuff is a convenient typing training tool for beginner and professionals. This section shows a summary of the features. If you are already familiar with this section, please go directly to the next section Getting Started, or navigate to the section you are looking for by using the menubar or the Figure Index at right of the page. To use the Figure Index: hover over the thumbnail for a quick view, click the thumbnail to navigate to the section; or hover over either end of the thumbnail film to scroll. For further support, please email us via Support or via the built-in form under the 'Help' menu of the application. For download information, please go to the homepage TypeMyStuff.com.

Besides features found in most typing training softwares, TypeMyStuff includes some special features:

  • TypeMyStuff provides a wide range of lessons and includes a built-in editor for the creation of customized lessons. Practicing with customized lesson will make users feel more comfortable and confident in their classroom or their workplace.
    • For beginners and students, the built-in General lessons will get them started; the built-in editor can be used to import and create enhanced lessons for their specific needs or school assignments. Also, lessons addressing specific typing weaknesses may be created based on performance information provided by the built-in Analysis tool.
    • For computer programmer, the built-in Tech training lessons based on real open source software addresses their specific typing needs. In addition, training with imported source code snippets helps to adapt quickly to the latest trends in programming languages
    • For professionals or occupational typists, interested in continuously improving their typing skills, the built-in editor allows to import and edit their own occupation-specific documents, then save those as customized lessons for continued typing practice.
    • All imported documents and all your customized lessons are kept in a private storage area on the local computer (on which the tool is installed). The content is kept confidential and is NEVER uploaded or shared.
  • The sophisticated analysis tool helps users to analyze and improve their typing performance:
    • The Record Table shows count and detailed analysis data for each typed character: correct, incorrect or erased; error rates and efficiency.
    • The Heatmap demonstrates the locality distribution of your typing performance across the keyboard, like error rates or efficiency on individual characters.
    • The History Diagram displays the progress of your typing performance as history lines and data, including error rates, efficiency and typing speed, either as average or for individual characters. It displays history for up to 10 selected characters and up to 20 typing records. The records to display can be either the most recent 20 typing records containing these characters, or user-selected records.
  • TypeMyStuff includes global preferences, which influence the overall operation of the tool, and local preferences which are specific to individual lessons. These preferences help the user to set training conditions. For example, allowing continuation on errors in Relax mode, or requiring error correction quickly in Strict mode, allowing auto indent, or ignoring 'tab' and 'return', ... The preferences include:
    • 3 different typing modes: Relax, Medium, and Strict mode;
    • 5 different font sizes;
    • 4 different tab sizes;
    • 3 different cursor blink rates;
    • Auto-indent simulation while typing;
    • Auto-close bracket simulation while typing;
    • Striped or plain background;
    • Enable or disable lesson's local preferences. If enabled, local preferences override global preferences.
  • TypeMyStuff comes with built-in music, which may help you type and relax. You can select to auto play while typing or manual play, and can select to play in a loop. You are also able to play your own music (mp3, mp4, m4a, aiff, wav) stored on the local computer.

TypeMyStuff is a convenient typing training tools with a lot of selective features. It suits users from beginner to professional. Your task may change and you may need to adapt to new school or occupational needs. You can use it anytime again for new typing training without further cost or expiration. It doesn't require online access for typing training, you can type anywhere, in your garden, park and any place without Internet service.

Getting Started

Tip: Hovering over most buttons of TypeMyStuff will show explanatory tooltips. F1 opens the built-in help viewer. F2 opens the online help page.

Tip: On the tutorial pages, click on any figure in this web page to see an enlarged version.

Switching between typing and editing

Let us first get familiar with the structure of TypeMyStuff. This tool has two main pages: The typing page and the editor page. On startup, TypeMyStuff shows the typing page (which then contains the Quick Start text).

  • at the bottom-left of the typing page switches to the editor.
  • at the top-left of the editor page switches back to typing.

⌘E is the keyboard shortcut to switch between the two pages.

switch between typing and editor
Switching between Typing and Editor

Open and Close a Typing Lesson

The bottom panel of the typing page is the dashboard.
The buttons for opening typing lessons are locate at left of the dashboard:

  • open the lesson selection dialog, keyboard shortcut is ▼
  • open the most recent lesson, keyboard shortcut is ▲
  • open the lesson preceding the current lesson, keyboard shortcut is ◀
  • open the lesson following the current lesson, keyboard shortcut is ▶
  • close the typing pane, back to the front page, keyboard shortcut is ⌘W

Open Typing Lesson
Buttons for Opening a Typing Lesson

Select a Lesson from the Lesson Dialog

When the lesson selection dialog opens, it will show two categories of lessons:
  • Standard Lessons, which are built-in lessons that cannot be changed, except for their preferences. The Standard Lessons includes two sub-categories:
    • General, which are lessons for general typing training;
    • Tech: which are specialized for program code typing.
  • Custom Lessons, where you can save your customized lessons created with the editor. Initially, this folder is empty.

Select a lesson and open it in the typing page, then you can begin typing. Incorrectly typed character can be corrected by backspace and re-typing. You can select one of the three modes: Relax, Medium or Strict on the dashboard, which will be explained in detail in Dashboard Preferences in the Preferences Section.

Select Standard Lesson for Beginner
Lesson Selection Dialog
Select Typing Lesson for Beginner
Beginner Lesson
Select Typing Lesson for Programmer
Tech Lesson

Typing Finger Placement

The Typing Finger Chart can be opened from the 'Help' pull-down menu at the menubar. It is for recommendation only.

Typing Finger Chart
Typing Finger Placement

Colors and Symbols used in the Typing Page

Different symbols and font colors will be shown in a typing session:

  • Original characters not yet being typed are shown in black color.
  • If the cursor is placed on a whitespace character, one of the following hints is displayed:  tab cursor (space),  tab cursor, or small tab cursor (tabs of different sizes),  and  return cursor (return).
  • Characters in blue color are typed correctly.
  • Characters in red color are typed incorrectly. Original whitespace will be shown again as:  space symbol,  tab symbol or small tab symbol,  and  return symbol.
  • Incorrect strokes will be shown above the original in grey color. Incorrectly typed whitespace will be shown as: space error (space),  tab error (tab), and return error (return).
  • Later in Preferences we will introduce Relax mode, Auto-indent, and Auto-close Brackets. These features let the tool do some typing for you. The Characters inserted by auto-complete and error toleration will be kept in original color, details see in the Preferences section.

Colors and Symbols for Typing
Colors and Symbols for Typing

Realtime Analysis and Progress

A continuous evaluation of your typing performance is shown at the center-right of the dashboard, the Realtime Analysis. It shows character per minute (CPM), word per minute (WPM), conventional error rate and more. It will be explained in detail in Dashboard Analysis in the Analysis Section.

error rate of typing
Realtime Analysis

In the center of the dashboard are the progress bar, timer and three control buttons:

  • the progress bar shows realtime typing progress, green represents progress of correctly typed characters, red represents progress of incorrectly typed characters
  • The Timer shows the elapsed time of typing within this lesson.
  • pause timer button pause the timer, the timer will continue when you continue typing.
  • restart button restart the lesson. The typing screen, timer, and the record data will be reset.
  • warning beep on or warning beep off is the toggle button for switching error beep sound on and off.

Typing realtime progress
Realtime Progress


The Music panel is at the bottom-right of the the dashboard.

Music relax typing
Music Panel

Music may help to maintain the typing tempo and relaxation. You can play the built-in music or your own music to accompany you while typing.

The two radio buttons "Auto" and "Manual" are used to select the music starting modes:
  • Auto - Music starts when you start typing, stops when the lesson pauses or ends (see also the loop toggle below).
  • Manual - Manually start or stop the music.
The function of three buttons below the radio buttons are:
  • The toggle button music play button or music pause button for starting or stopping the music in manual mode
  • music rewind button for rewinding the music to the beginning.
  • The toggle button music loop on or music loop off for enabling or disabling the music loop. If enabled, the selected music will automatically play in a loop.

The slider at the right is for adjusting the music volume in addition to the volume adjustment of the computer. At start, it is set to low volume.

The bottom is the music selection list. It displays the names, tempo and lengths of the built-in music. The first selection "Select Your Own Music" in the list allows you to play your own music on the local computer. If this is selected, a system file dialog will open to let you select your own music. For security reasons, only music files under the user's home directory can be opened to play. You can also drag and drop a qualified music file to the TypeMyStuff icon or panel to play it immediately.

Supported media encodings are MP3, AAC PCM. Music files with extensions .mp3 .aiff .m4a .mp4, and .wav may be played.

For music composers, please see the About Panel in the TypeMyStuff.

music selection
Music Selection

Preferences, Analysis, and Editor

There are more feature in following sections:

Preferences -- It allows you to change and save global preferences, and local preferences for each individual lesson. For detail, please visit the Preferences section.

Analysis -- It analyses your typing performance and history, and reports the results in tabular and graphic form: Record Table, Heatmap, and History Diagram. For detail, please visit the Analysis section.

Editor -- The built-in Standard lessons may not always meet your training requirements. However, with the flexible Editor, you can easily create customized typing lessons for your school or occupational needs. Training with customized lesson will make you more comfortable and confident in the classroom and workplace. For detail, please visit the Editor section.


Preferences can be changed in two places: dashboard and preferences dialog.

Dashboard preferences:

music play mode selection
Mode Selection

The dashboard is the bottom panel of the typing page. The middle-left part of the dashboard provides the dashboard preferences controls: Typing mode selection and error correction delay limit. These are only for typing. There are three difference modes: Relax, Medium and Strict.

These three modes differ in counting and illustration of strokes and errors. As a result, the change of mode will affect calculation of error rates and efficiency, and therefore changing the training mode requires restarting the typing lesson.

  • The middle figure below shows the Medium mode, which is the default and conventional mode. All strokes and errors including those on tab and return will be counted and shown, but you are allowed to continue typing after errors.
  • The left figure below shows the Relax mode. Comparing to the Medium mode, it doesn't show and doesn't count the errors and strokes on tab and return. This mode is suggested for beginners.
  • The right figure below shows the Strict mode. In addition to Medium mode, it requires to correct errors as soon as possible after the first error occurs. An allowed delay limit can be set from 1 to 10 characters. Within this delay limit, you have to erase back to the first error and re-type. If the error count reaches the delay limit and you try to continue typing, the tool will ignore your typing until you erase back. When the first error occurs, a red arrow hint will show under the text beginning at the first error. In the right figure the delay limit is set to 6, which is the default.

Each standard Lesson comes with built-in mode and limit. But you can change it and these changes will be effective immediately to this lesson throughout the whole application. The mode for newly created custom lessons with the editor uses the default values: Medium mode and limit 6 (used in Strict mode).

relax mode for typing beginner
Relax Mode
medium mode for general typing
Medium Mode
strict mode for programming typing
Strict Mode

Preferences Dialog

The Preferences dialog is opened from the menubar. The preferences dialog has three tabs: Global, Typing and Editor. The selected tab is shown with blue or dark blue background for the tab name. The preferences dialog is modal, that means it stays on top of other panels and it blocks actions to other panels (except top-menu actions) until you close the preferences dialog.

There are global preferences and local preferences in this application. All lessons have their own local preference values. If the local preferences of a lesson are not enabled, the global preferences will automatically apply to the lesson. If the local preferences of a lesson are enabled, the local preferences will override the global preferences for the lesson. The global preferences can be changed in Global tab. The local preferences can be changed in the Typing tab or Editor tab.

Global Preferences

Global preferences are applicable to all lessons, but may be overridden by local preferences. Changes of global preferences will be effective immediately throughout the whole application after clicking the "Apply" button, and will be saved to file after application exits normally. The changes can be seen immediately in typing pane or editor if local preferences for that lesson are not enabled.

Some preferences like "Cursor Blink", "Striped background", and "Factory Default" are only available in Global Preferences.

  • The Cursor Blink has 3 selections: blinking fast, blinking normally, or blinking turned off.
  • The background of the typing and editor pages has 2 selections: striped background or plain.
  • Globally, the Auto-indent and Auto-close Brackets are always turned off. These two features can only be set for individual lessons as local preferences. See below in the Typing Preferences section.
  • There are 4 tab size selections: 2, 4, 6 and 8; default is 4 characters wide.
  • There are 5 font size selections: 16, 18, 20, 22 and 24. default is 20 point.
  • The "Factory Default" button will restore the factory default settings globally: tab size 4, font size 20, striped background, normal cursor blink rate.
typing preferences
Global Preferences

Typing Preferences

Preferences in the Typing tab apply only to the lesson currently opened in the Typing page. Therefore, this tab is only selectable when the current page is the Typing page and a lesson is open in the typing page.

Typing preferences are always specific to a particular lesson and may be different from lesson to lesson. After changing the preferences and clicking the "Apply..." button, the changes will be effective immediately to this lesson throughout the whole application (except editor cache for this lesson).

Some preferences like "Auto-indent" and "Auto-close Brackets" are only available in local preferences (Typing and Editor). Applying a change of these preferences alters the calculation rules of error rate and efficiency, therefore it requires restart of the typing lesson.

  • If checkbox "Enable Lesson Preferences" is unchecked, the lesson use the global preferences, otherwise, it uses the local preference. Initially the local preferences will be populated with global values. They may be changed and applied clicking the "Apply" button.
  • There are 4 tab size selections: 2, 4, 6 and 8, default is 4 characters wide.
  • There are 5 font size selections: 16, 18, 20, 22 and 24. default is 20 point.
  • If "Auto-indent in Typing mode" is selected, the cursor will automatically complete the blank space in the beginning of each new line (including tab and space). This feature is useful while training software typing. Auto-indent doesn't apply to the very beginning of a lesson.
  • If "Auto-close Brackets in Typing mode" is selected, you have to individually select which kind of brackets you want to auto close. If a kind of bracket is selected, after you typed the left part of such bracket, the closing right bracket will be automatically inserted when you encounter it later. This feature is useful for training software typing. Be careful that all selected brackets must be correctly nested and balanced. Otherwise, errors may occur. For example: this sequence "{ <} >" is not in order, but you may enable one of them, either '{}' or '<>'. Note that programming languages may use "<" and ">" as operators, which causes imbalance.
preferences for individual typing lesson
Typing Preferences


The right figure shows part of the typing page with a software program training lesson, it uses the typing preferences shown in the figure above.

  • We selected a small font size since each line is quite long.
  • This lesson contains multiple indent levels. We select a small tab size as 2, so that it looks clear and nice.
  • We select Auto-indent to insert indents automatically while typing.
  • Three kind of brackets "{}", "()", and "<>" are used in this lesson, which are correctly nested and balanced. Therefore we can select Auto-close Bracket for these brackets. In the figure, you can see the color of the right bracket for these automated brackets are black instead of blue or red, because they are auto-complete by the application, not by your typing.

 auto indent simulation of IDE typing
Usage Example

Editor Preferences

Preferences in the Editor tab apply only to the lesson currently opened in the Editor page. Therefore, this tab is only selectable when the current page is the Editor page and a lesson is open in the Editor.

Editor preferences are always specific to the particular lesson in the Editor and may be different from lesson to lesson. Changes will be applied to editor style immediately after clicking the "Apply..." button. But in contrast to the "Typing", the local preferences are only effective to the current editor but not to the whole application, they are not yet saved. They will be saved to file together with its lesson by "save" or "SaveAs" action.

Editor preferences are very similar to typing preferences. The change of tab size and font size can be seen immediately in the Editor after applying. But Auto-indent and Auto-close Brackets are specific for Typing mode. These effects can only be seen when the lesson opens for typing. You can select these features for the current lesson in the Editor, so that these features will be effective when the lesson opened for typing training.

In the figure, we show an example of the Editor preference for a lesson being edited in the Editor. In this example the local preference for this lesson has not been set yet, therefore, the "Enable Lesson Preference" is unchecked, and other preference items are disabled. The lesson still use the global preference. We can set the local preference by checking the "Enable Lesson Preference" first, and then change other preferences and apply the changes.

If the lesson currently being edited is also opened in the Typing page for typing at the same time, changes of "Auto-indent" or "Auto-close Brackets" in the Editor preferences requires restarting the typing lesson concurrently open in the Typing page.

preferences for editor of custom lesson
Editor Preferences


Analysis of typing performance can be found in two places: Dashboard and Analysis Page.

Dashboard Analysis

The dashboard is the bottom panel of the typing page. The realtime performance analysis is shown in the middle-right part of the dashboard. It shows conventional error rate and speed. It doesn't count any erased typing and backspaces. Here we refer to this as "final data".

  • CPM (All): Characters per minute. The raw character count, including correctly and incorrectly typed characters. The elapsed minutes are shown by Timer.
  • Correct CPM: CPM for correctly typed characters only.
  • WPM (All): Approximated words per minute. Using an average word size of 5 characters (as suggested by Wikipedia).
  • Correct WPM: WPM for correctly typed characters only, using the same formula.
  • Error Rate: Percentage of incorrectly typed characters of totally typed characters.

realtime error rate
Realtime Analysis

Some typings are not counted in the above calculation:

  • TypeMyStuff allows you to erase incorrectly typed character during typing. Any erased characters and the backspaces for erasing are excluded. We refer to these data as "final", which represent the final result showing on the typing page. For example, if you typed forward 5 characters, then erase back 2 characters, the final typed count is 3. Those erased data will be considered in the Analysis Page as explained later.
  • In Relax mode, any correct or incorrect typing of 'Tab' and 'Return' is ignored and therefore not counted, which is by design and for the convenience of beginner.
  • Any characters inserted by the auto-complete feature are also not counted, such as auto-indented space and tab in Auto-indent mode and auto-closed right brackets in Auto-close brackets mode.

Analysis Page

Dashboard Analysis provides only the average speed and average final error rate for all typed characters. If you want to know how is your typing performance on individual characters, how is the rate considering the erased, how is efficiency, and how is the history of your typing performance improvement, you can use the Analysis Page.

Each time while you are typing, a typing record is automatically generated. It records and updates data for each character: How many were correct typed, how many were incorrect typed and how many have been erased. The typing record can be saved and deleted. Based on these typing records, a detailed analysis of your typing performance is shown as table data and graphs.

The Analysis Page is opened by clicking the button open analysis button on the bottom-left of the dashboard or pressing the keys ⌘A. The page is modal, that is, it stays always on top of the main page. When you open the Analysis Page, the typing timer pauses. The timer will resume if you close the Analysis Page and continue typing.

The Analysis Page includes three parts: Record Table, Heatmap, and History Diagram. The Record Table and the button to open the Heatmap are in the upper part of the analysis page, above the separator. They relate only to one typing record, which is displayed in Record Table. The name of the record is shown in selection above the Record Table. The lower part of the Analysis Page, below the separator, controls the History Diagram. The History Diagram shows progress of your typing performance over time. It needs the selection of characters and records. We will explain the History Diagram later.

The Analysis Page, in contrast to the Dashboard, provides sophisticated analytic information based on final data (excluding erased), on real data (including erased), and about the efficiency (considering erased and backspace).

Any auto-complete characters (in mode of Auto-indent and Auto-close Brackets) and the ignored 'Tab' and 'Return' in Relax Mode are excluded from calculation.

Record Table

The Record Table is in the upper part of the page. The record name is shown inside the combo-box above the table. When selecting a different record in this combo-box, the record data in the table will change accordingly. This may be the record for the lesson currently typed, or a saved record file.

The Record Table shows detailed counts for individual original characters: correct, incorrect, erased; and calculates the Final Error Rate, the Error Rate Including Erased, and the Efficiency.

Here is an example of a Record Table for a current typing lesson (left figure) and the saved record (right small figure, click to enlarge). Each row represents one character from the lesson. Each column represents different counts and rates. You can get explanatory tooltips by hovering the mouse over each column header. You can sort the data rows by clicking on the column headers.

On the right side above the table is the "Average Efficiency" for all typed characters. Clicking on the "Average Efficiency" will open a popup window with detailed explanations.

typing character record table
Record Table (not saved yet)
Record Tabe (saved)
Record Table

About two Error Rates and the Efficiency

The Final Error Rate ist the conventional error rate, indicating the correctness of the final result for an individual character. The values for the calculation are taken from the final result shown on screen. TypeMyStuff allows you to erase typed characters which are then not shown on the screen anymore, therefore these erased characters are excluded from the final error rate. In other words, this numbers reflects what is finally shown on the screen.

In contrast, the Error Rate Including Erased indicates the correctness of all attempted typings of this character, including any erasing.

The Efficiency indicates the cost of reaching the final result, it includes not only the characters being erased, but also the backspaces needed for the erasing. If no erasing happened on this character, both error rates will be equal, and the efficiency becomes 100% minus error rate.

Again, all the characters inserted by auto-completion features of the tool are excluded from calculation, such as the Auto-indented space and tab, Auto-closed right bracket, and the unevaluated tab and return character in Relax mode.

If you want a deep explanation of these calculations, please see the example below.

Detailed Analysis Example

This example explains in detail the two error rates and efficiency. It is optional and can be skipped.

Suppose Alice is typing a simple lesson with only 10 'h' characters.

  • In step 1, Alice typed 4 'h' correct, then 2 incorrect and again 1 correct. The record is shown in the picture below as a table row. There is only one row in the whole table, because this lesson contains so far only one character 'h'. The Final Correct is 5, the Final Incorrect is 2, no erased.
  • In step 2, Alice made a correction. She erased back to the first error. The color of the erased characters changes back to black. The result of the step 2 is shown to the right. After correction, the Final Correct changed to 4, Final Incorrect changed to 0. Erased Correct becomes 1, Erased Incorrect becomes 2, these erased characters are unproductive collateral loss.
  • In step 3, Alice continued to type. Oops, she typed again incorrect at the last character. The result of the step 3 is shown in the last row. Let's analyse the result in row 3 in more detail.
    • Final Correct is 9, Final Incorrect is 1, final total characters shown on typing screen is 9 + 1 = 10.
    • The Final Error Rate is = 1/10 = 10%, (final incorrect) / (final total). The Final Error Rate used to measure the correctness of the final result for typing this character.
    • Number of erased typings of this character is 1 (correct) + 2 (incorrect) = 3, which is unproductive collateral loss. The number of backspaces to erase these typings is also 3, which is also unproductive collateral loss.
    •  If considering the typing strokes on 'h' being erased, Alice actually typed on 'h' 13 times, 10 correctly including erased (final 9 + erased 1), 3 incorrectly including erased (final 1 + erased 2).
    •  The real error rate (the Error Rate Including Erased) for typing 'h' is 3/(3+10) = 23.1%, which is higher than the final error rate. If no erasing, both error rates will be the same. This Error Rate Including Erased is used to measure the real correctness of typing this character.
    •  For the finally shown 9 correct 'h', Alice totally typed 13 times + 3 erase stroke (backspace), the Efficiency of her typing 'h' is 9/(3+13)=56.3%. The Efficiency indicates the cost for the final typing result.

analysis of typing performance
Detailed Analysis Example

Organize Typing Records

The typing records can be organized by the save and delete buttons below the Record Table, with the help of the switch record name combo-box above the Record Table. Click the the save or delete button will save or delete the record currently displayed in Record Table. With the combo-box the record shown in the table is selected, which may also be saved or deleted.

If you open the Record Table after a typing lesson, the record name shown in the top combo-box is "Current Record (not saved to file yet)" as is shown in the figure of the Record Table above, which indicates the record is in the cache and not saved to file yet. You can save it to a file with a filename of timestamp + lesson name, by using the save button. After being saved, the record name shown in combo-box above the table is changed to the filename in black color, as is shown in the small figure of Record Table above, and the delete button will become enabled. You can delete the saved record file with the delete button.

If you close the Analysis Page and resume typing the same lesson, the data changes will add to the current record, unless you click the restart button. If you open the Analysis Panel again, the save button is again enabled, reminding you to save the changed data again. If you want to start typing with a new record, clicking the restart lesson button.


The Heatmap shows the distribution of the two error rates and efficiency for individual character on the keyboard. It gives you some location-based analysis of your typing performance, such as on which part of the keyboard or on which character you made more mistakes, or which finger made more mistakes. The button to open the Heatmap is located below the Record Table. It will open the Heatmap for the currently displayed record. The Heatmap displays the evaluation for all characters contained in this record.

After opening, the Heatmap shows the final error rate for each typed character with a color dot on the character key. The dot of lowercase characters is on the lower part of the character key, the dot of uppercase characters is on the upper part of the key.

The color bar at the right side represents the mapping of percent numbers to colors. If you want to know the detailed numbers, clicking on the color dot opens a small detailed explanation window for that character. For an individual character, if never erased, its final error rate = error rate incl erased = (1-efficiency), and the colors for the three rates would be the same.

The Heatmap shows the final error rate at the opening. By clicking the buttons at the left side of Heatmap: final error rate button error rate incl. errased button or efficiency button, we can switch between the three different diagrams showing "Final Error Rate", " Error Rate Including Erased" or "Efficiency" separately.

Typing Heatmap
Heatmap (currently showing final error rate)

Let's look back again at the result of step 3 in the Detailed Analysis Example above. If we open that typing record in the Heatmap and click the buttons on the left, we will get the three diagrams shown below. The colors of the dot on character 'h' in these three diagrams are different, because the percentage numbers are different (if no erasing, both error rate colors would be the same). If we click on each color dot, we will get three small popup windows showing the detailed result numbers and calculation.

final error rate of typing
Final Error Rate
error rate of typing including erasedError Rate including Erased
heatmap of efficiency of typing

History Diagram

The History Diagram displays the typing performance over time for selected characters and typing records. First, we have to select which character and records to display in the History Diagram.

Selection of Characters

The mini keyboard image in the lower part of the Analysis Page is the center for character selection. There are 3 methods to select:

  • Clicking the character on the mini keyboard.
  • Typing on the real keyboard to select (when the window of the mini keyboard is in focus).
  • Clicking into a character row in the Record Table.

Selecting a character in the Record Table will also select the corresponding character on the mini keyboard, but not vise versa, because the mini keyboard contains all characters, but the Record Table contains only the characters in that record (typed in that lesson). If a character is selected on mini keyboard, the character row in table will only be selected if and only if the table also contains that character. It is important to know that the mini keyboard is the base and center of character selection, the history diagram displays the characters based on the selection on the mini keyboard, not the Record Table.

When the window of mini keyboard is focused, typing on the real keyboard will select the character on the mini keyboard.

The count of selected characters is displayed on the clear button at right of the mini keyboard. Clicking this button will clear all character selections.

select record to show typing history
Select up to 10 characters to show History Diagram

Selection of Records

There are two modes to select records: Auto Search Recent Records, or Manuel Select Records. You can change the mode through the radio buttons at the right of the Record Table.

  • In the mode of Auto Search Recent Records, the tool searches the records containing the selected characters, records not containing selected characters are skipped and not shown. Search starts at the most recent record and proceeds towards older records, for a maximum of 20 records to show.
  • In the mode Manual Select Records, a table of record names will be shown (as in the figure). Click into table rows to select records, at most 20 records may be selected. The count of select records will show on the table header. The record selection can be cleared by clicking the table header.

select record to show typing history
Manual select up to 20 records to show History Diagram

History Display

The button Display History is at the right of the mini keyboard, which opens the history panel with two tabs: the Individual Character History and the Speed and Average Rate History. The Individual Character History displays the typing performances for individual characters selected; while the Speed and Average Rate History displays speeds and average rates for each selected record; the data is based on the whole record, not individual characters. The Speed and Average Rate History is a new feature since version 1.1.

History for Individual Character

The Individual Character History uses different color to distinguish between characters, and uses different marks and lines to distinguish the three kind of rates: Final Error Rate, Error Rate Including Erased, and Efficiency. Each mark and line may shift horizontally a little in order to avoid direct overlap.

When opening, all three kind of data lines for all select characters are displayed. The display of the three kind of lines can be toggled on-off by clicking the top-right three line symbols. Lines for each character can also be toggled on-off by clicking the round character symbols at the top. The figure below shows the history with the selection of 2 characters and 10 records. This figure shows all 3 lines for the 2 characters. The next figure in the next section shows only 2 lines for character j. Toggling line and character display allow us to have a clear look at the history of specific characters and their specific rate lines.

typing history
History for the Individual Character

History Data in Detail

When clicking on the rectangular DTL symbols below each character symbol, a detailed summary window for this character will pop up. The figure below shows the data summary of character f. With the help of History Diagram and the data summary, you can find out how is your typing progress.

History Diagram, with Data Summary of 'f'
History Diagram, with Data Summary of f, some lines toggled off.

History of the Average Rates and Speeds

Similar to the Individual Character History above, the Speed and Average Rate History also uses different colors, lines and marks to distinguish three kind of average rates: the Average Final Error Rate, the Average Error Rate Including Erased, and the Average Efficiency, and two speeds: CPM/WPM (character/Word per minute) and Correct CPM/WPM (correct character/Word per minute). All data are based on whole records, not individual characters.

The Average Final Error Rate, CPM/WPM and Correct CPM/WPM were the real-time data displayed on the dashboard while you was typing; as a new feature in version 1.1, these data is saved to the record and displayed in the Speed and Average Rate History. Similar to the calculation for the individual character, the calculation of the Average Error Rate Including Erased includes all the erased characters, and the calculation of and the Average Efficiency includes all the erased characters and backspaces. For the record displayed in Record Table, the Average Efficiency is also displayed in the top-right corner of the Record Table.

Similar to the history for the individual character, you can also toggle the sample line to show or hide the display of the target line. clicking the Rectangular DTL button will also display pop up with detailed history data.

typing history
History of Average Rates and Speeds

Analysis Summary

  • The Dashboard Analysis performs realtime analysis. It provides a coarse feedback and doesn't count the erased characters and backspace.
  • The Analysis Page provides detailed analysis methods over individual characters, average rates and speeds, and histories. It provides sophisticated analysis under different criteria: final data excluding erased, data including erased, and the data including erased and backspace.
  • Both analysis facilities exclude the characters inserted under the preferences: "Auto-indent", "Auto-close Brackets", and the ignored 'Tab' and 'Return' characters in Relax Mode preference.

We hope these these sophisticated analyses help you to make your learning experience more efficient.


The Standard Lessons category in the lesson selection dialog contains two sub-categories: General and Tech. The Tech sub-category includes some open source code examples as typing lessons for computer programming.

These built-in Tech lesson may not always meet your training requirements. However, with the flexible Editor Page you can easily build your own customized typing lessons. You can create new lesson, open existing, and also import text or source code which you have on your computer into the editor of TypeMyStuff. You can then edit the text or source code in the Editor to customize your lesson for your requirement.

In these days there is a large amount of free material available which you can customize to suit your training needs. This way you can gradually improve you typing skills and build confidence in your workplace.

Most importantly, all imported material and the customized lessons are retained on your local computer in a private storage area and kept confidential (NO sharing or uploads).

The Editor page can be opened by the button at the bottom-left of the dashboard in the Typing page. The top of the Editor page is the menubar, see below.

editor for custom typing lesson

Editor functions on Toolbar

  • creates a new empty lesson file,
  • selects an existing lesson file from the lesson-selection dialog. If a built-in standard lesson is opened with the editor, it cannot be saved back to the original file, but can be saved as your own custom lesson.
  • imports an outside file selected through the system file selector dialog. For security reasons, only files under the user's home directory can be imported. You can also drag and drop a qualified file to TypeMyStuff icon or panel to import. All imported files are kept confidential in your private storage on your local computer (NO sharing or uploads).
  • copy button and paste button   buttons are for conventional cut, copy and paste of text in the editor.
  • saves the current state of the editing session to the current file.
  • opens the Save As Dialog to save the current editing session as a custom lesson file with the provided name.
  • discards the current content in the editor.
  • opens the Organizer to organize the folders, files, and the names of custom lessons.
  • switch back to the Typing page.

SaveAs Dialog and Organizer

The two figures right are the SaveAs Dialog and Organizer. They are very similar. SaveAs Dialog has one function more than Organizer: it can save the current file under the name provided. The Organizer button is always enabled, but the SaveAs button is only enabled when a file is opened in editor.

  • saves the editing to disk as custom lesson with the file name from the name input field.
  • changes the name of the selected folder or file.
  • add a new folder under the selected folder.
  • deletes the selected folder or file.
  • closes the SaveAs Dialog or Organizer.
SaveAs Dialog
SaveAs Dialog
Custom Lesson Organizer

A preference will be automatically created and saved along with each edited lesson, default is global preference. If you have special preferences for this edited lesson, open the Editor Preference to set those up. You may also change its preferences later in the Typing Page. Note, some effect of preferences (such as auto-indent) can be seen only when the lesson is open for typing.

Now we finished our tutorial. If you have further question, please write us email through either the built-in email feature built-in email above the Editor, or the Support link online email form at the bottom-left of this help page.

The TypeMyStuff team wishes you fun and great success with your typing training.

empty empty empty empty
◀ PrevNext ►