Languages

German flip cards Google gadget

Oliver Brown
— This upcoming video may not be available to view yet.

I’ve created a clever German flip card gadget for Google homepage. It displays a German word for a few seconds and then shows it’s translation. And then repeats with a new word. The vocabulary is very small at the moment but it will increase by at least one per day.

At the moment it also limits itself to 5 words per viewing. That is after showing five cards it loops (if it didn’t you’d never actually begin to memorise them).

Google Homepage

To use Google personalised homepage, you must have a Google account. When you have one, go to “Personalised Home” (links for that and to create an account are in the top right corner of Google’s homepage).

Adding the Gadget

From your personalised homepage, click “Add Content”, then “Create a Section” and then put the following URL in the box: http://www.oliverbrown.me.uk/gadgets/flip.xml . Then just click “Go” and you’re done :)

If anyone is interested I might extend the idea to be more flexible.

Language learning ideas - bringing it all together

Oliver Brown
— This upcoming video may not be available to view yet.

This post, like many of my others on the topic ramble a bit. You have been warned :P

Any regular readers I might have will know how much I like Pimsleur products for learning experience. I believe the basic idea can be greatly enhanced with computers. I did in fact try a short time ago but suffered from a lack of voice talent which is where speech synthesis could be useful.

Synthesised voices can be imported into the current system (which at the moment I wouldn’t be able to demonstrate since the voices need to be licensed if they are to be distributed) just by recording them to audio. This solution would allow maximum support since any browser with audio capabilities could use the system.

There is an advantage to using the IE plugin though (or any other system supporting SALT) - speech recognition. It should be entirely possible to actually have a browser based system that checks your pronunciation which would instantly make it better than any system out there.

Quite why none of the companies that create these synthetic voices have tried to develop a system like this I don’t know…

Cepstral voices

Oliver Brown
— This upcoming video may not be available to view yet.

I just thought I’d provide examples of the higher quality voices available for speech synthesis.

They aren’t perfect but they’re a lot better than the voices that come with Windows XP.

Cepstral voice demos

An introduction to SALT

Oliver Brown
— This upcoming video may not be available to view yet.

The speech engine that I was talking about in my last article about speech synthesis is an add-in for Internet Explorer. Follow these instructions to install it yourself (you can get Microsoft Speech Application Software Development Kit (SASDK) Version 1.1 now though).

To actually create speech enabled web pages, you need to use SALT. Speech Application Language Tags is now fairly standard and being supported by Microsoft means it is almost guaranteed to survive in some form. SALT is an XML markup so you would generally embed it straight into a HTML (or more usually an XHTML) page.

The first requirement is to add the SALT namespace to your XHTML document: <html xmlns:salt="http://www.saltforum.org/2002/SALT"> This probably isn’t a requirement but you should do it anyway. The next thing you need to do is to load the add-in and tell it what to handle. This is definitely vendor specific and only applies to the add-in for IE: <?import namespace="salt" implementation="#saltobject" /> All the code does is create an object and then tell it what namespace to look for SALT tags in (in this case the “salt” namespace). There is one potential sticking point. The standalone IE add-in is not the same as the one you get if you install the whole SDK so for debugging purposes so the classid will be different.

After that it’s just a matter of adding the SALT tags for handling the speech. In this article I’ll just deal with the simplest one, prompts. A prompt is just a piece of speech. Just write your speech inside a <salt:prompt> tag: <salt:prompt id="InstructionsPrompt"> Hello. Thank you for using this salt demo. </salt:prompt> The id can be anything you want as it is only used to uniquely identify the prompt.

We now have to get around the semantic separation of form and function: this simply defines a prompt and doesn’t actually do anything with it. To actually make it do something we have to use JavaScript. Prompt objects all have a Start() function accessible from JavaScript so to make it play, just call InstructionsPrompt.Start(). Although it’s not an ideal solution for testing purposes just attach it to the onload event of the body tag. You can see (and hear) the whole SALT demo.

A final note about voices. Windows XP comes with a good voice called Microsoft Mike, but this may not be the default. Some of the others sound really bad. To set Mike as the default: Start -> Control Panel -> Speech -> Text-to-speech Windows Vista will come with new voices (the ones made from sampled sounds I talked about before), one of which is called Anna.

Learn a language with synthetic speech

Oliver Brown
— This upcoming video may not be available to view yet.

I’m currently working out how feasible computer based language-learning-type software using synthesised speech would be. Speech synthesis has improved a great deal recently and although it’s still not as good as a real person (although I believe it could be soon - at least for non-emotive situation) it could just good enough.

The traditional way to generate speech with a computer is algorithmically. Essentially someone works out how to overlay tones with different pitches and wave-shapes to form each sound. The newer way is to actually record each sound manually and essentially play them back one after the other.

There are more stages it to it than that - assuming you don’t want to write the speech phonetically (in IPA for instance) there also needs to be a way of turning text into phonetic information. This is usually half dictionary based for common words and syllables and half rule based (to avoid having a big dictionary and for coping with languages constantly expanding and evolving).

So we now have technology (almost freely available) that can produce speech that is good enough given the correct phonetic information - it’s the actualy language processing that is problematic. Most of the work is done by American companies and therefore most of the work is done processing English (American English at that).

This is not an insurmountable problem. The engine I’ve been playing with (available as an addin to Internet Explorer and as standard on Windows Vista) works fairly well with foreign words transcribed in dodgy-phonetic English. For example to get it to pronounce “Entshuldigung” (German) correctly you need to type “Enshooldicken”). This is workable for an semi-automated system - it could include a dictionary of sorts replacing words with their English-phonetics version.

I know the whole of this article is rather rambling - I’ll post something more readable later :P

More Michel Thomas

Oliver Brown
— This upcoming video may not be available to view yet.

Sorry to seem obsessed :P

My opinion of learning a language with the Michel Thomas CDs has improved - as well as the “Complete Course” 8 hour sets you can get the “Advanced Course”, an additional 5 hours designed for people who have done the first 8. Although I think he only does it for French and German…

13 hours of material. Considering the density this begins to rival Pimsleur’s 50 hours (only available for Spanish and German).

He also seems to have lead an amazing life, albeit slightly less amazing than he claimed. But still. Go read about him on Wikipedia.

Michel Thomas rocks - maybe more than Pimsleur

Oliver Brown
— This upcoming video may not be available to view yet.

I picked up Michel Thomas’s 8 hour German course from the library today. And it’s cool. It might even be better than Pimsleur. The learning idea is basically the same as Pimsleur with no writing and no memorizing but the format of the audio itself is different.

Firstly in Pimsleur I’m guessing they use voice actors reading out a script for both the English and foreign speech. In this Michel himself talks. Also this is not scripted word for word at all. I’m assuming he has notes of some sort to keep him on track and there may be judicious editing that we don’t hear, but basically everything is presented as is.

This is an important factor considering exactly how the lessons are presented - as a private lesson with Michel and two students new to the language. The benefits of this are you hear the sorts of mistakes people make (ranging from slight pronunciation problems to missing out a word to saying something completely different or nonsensical). It also makes it quite funny since (in the German at least) one student is clearly doing better than the other).

It loses out in ease of use though. Pimsleur comes with built in pauses, with Michel you have to pause it yourself. It does mean though that 8 hours of Michel is denser than 8 hours of Pimsleur.

One final not is he has a slightly unorthodox order of teaching but one that makes sense in some ways. For example the (almost) first thing he teaches is “Do you want…” (“Wollen Sie”) which is normally left until quite far along because of the complication of modal verbs and their effect on word order. There are at least two advantages to this: first it gets the students used to the whole verb-at-the-end-of-a-sentence idea and secondly he focuses on words that are similar in English and German, and most modal verbs are (muss - must; kann - can).

Overall it’s cheaper than Pimsleur, £70 in bookshops. Another glaring advantage is that I have actually seen it in bookshops, even W. H. Smiths. My usually suggestion applies hear though, get it from a library. Most libraries will order books from other libraries for a nominal fee (my local library charges £2.50 but they had it in themselves anyway).

The final drawback is it is only available in four languages: German, Spanish, Italian and French. Although I wouldn’t be surprised if versions starting from something other than English are available (French -> Spanish for instance).

Linguaphone rocks less

Oliver Brown
— This upcoming video may not be available to view yet.

I just picked up Linguaphone German from my local library. 4 books and 9 CDs in a large box certainly looks impressive but I don’t think it’s as good as Pimsleur. Looking through the books it clearly goes to a higher level and has far more explanations of grammar in it. But I think it does it too quickly and I’m not convinced a beginner would find it much use on it’s own. For someone who already has familiarity with the language it may work quite well. Watch this space.

Competing with Pimsleur

Oliver Brown
— This upcoming video may not be available to view yet.

As I mentioned earlier, I’ve written the framework for a language learning system similar to Pimsleur. Well the approach is similar but the mechanics are different.

Basically each phrase (in English, the target language, what the instructor says) is a separate audio file. The system then chooses what you listen to automatically handling things like the right amount of repetition or you. How often something is repeated is time based meaning if people do things slowly they will find themselves repeating more often (which makes more sense since slower equates to using the system less often). I almost have a demo ready. The big thing I need however is voice talent. I’ve just about accepted that I will have to suffer by hearing myself but it’s not very clear what’s going on if the instructor, the English voice and the foreign voice are all the same person.

It is also extremely modular. Each module (a module could be a conversation, a sentence, a whole topic - whatever makes sense in the circumstances) has a list of requirements that has to be completed first. This means no explicit ordering of modules is necessary, the system picks whichever one the learner can do. This also allows some cross-language capabilities. If someone learns more than one language and something is similar or the same in the two, it could tell and possibly speed things up depending on how similar they are.

So if there is anyone who might possibly be interested, let me know. If you’re learning a language this could be ideal (during my Maths degree I discovered if I could explain something to someone else, it was a good sign I understood it myself) I’m not quite sure if, and how (or should) this make money but anyone who helps significantly would have a say in what happens with it.

End of Pimsleur

Oliver Brown
— This upcoming video may not be available to view yet.

I’m now very close to the end of Pimsleur’s German III. I’m up to lesson 20 which overall is lesson 80 out of 90.

I have just realised however that there is a 10 lesson set called German Plus designed to go after German III but my library doesn’t have it. I still recommend it to anyone wishing to learn a language, at least if you can get access to it for free.