Abstract: The invention extends the capability of conventional computer speech recognition programs to reliably recognize and understand large word and phrase vocabularies for teaching written language skills. At each step of a teaching program, information is supplied to the user such that some responses in the language being taught are correct (or appropriate) and some are incorrect (or inappropriate), with these respective sets of responses judiciously selected to teach some language aspect (i.e., vocabulary, sentence structure). A subset of allowable correct; and incorrect responses is selected such that a speech recognition subprogram readily discerns certain allowable responses from other allowable responses, including each incorrect response being discriminable from each correct response. The meanings of at least the correct allowable responses are made clear by aural or visual information, such as graphic images, printed text, or translations into the user's native language.