Free broadband from TalkTalk

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

TalkTalk (from the Carphone Warehouse) are offering “free” broadband.

The deal is you sign up to TalkTalk as your phone provider (£11 line rental a month - the same as BT), take out one of the call plans for 18 months (£9.99 a month which includes unlimited* local, national and international** calls) and pay a £29.99 setup fee. For this you get up to 8Mb broadband (very likely to be lower though) with a 40Gb download limit and an ADSL modem.

Total cost (for 18 months): £407.81, about £22.66 a month. Seems like a good deal. TalkTalk

* Calls must last less than 70 minutes. ** To a list of 28 countries including America, Australia and most of Europe.

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.

Silly company

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

I have content from various ad companies on my site that I get paid for. It’s not much but it can add up and at least pays for the hosting. I realised I was owed some money from one of them that I hadn’t logged into for ages. So I logged in, checked my details were correct, set payment to “PayPal” and left. Unfortunately I changed it over too late. They sent my first payment as a cheque. As I said it isn’t that much; yesterday I received a cheque for $4.33. I’m not even sure I can deposit that in my account - whenever I’ve done it before with foreign cheques there is quite a large charge (larger than $4.33).

Silly company.

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

Google and bad markup

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

I had quick look at the source HTML on Google Analytics (specifically the first page: executive summary) and saw a piece of really bad markup: They had the whole page (HTML, HEAD, BODY, the lot) wrapped in a DIV tag… Naughty Google.

More stable server

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

The server should now be up far more often.

I can’t work out why MySQL and/or Apache keep crashing so often so as an interim solution I’ve just written a PHP script that is run by the cron daemon that checks each if they are running as they should and restarts them if they’re not. Hopefully this means if the server is down it shouldn’t be for more than an hour.

Download Firefox

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

Download Firefox for a better browsing experience.

More Google Analytics

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

Well I now have to say that Google Analytics certainly looks impressive. It has all the stats that you would expect from anything and a heck of a load that you wouldn’t. The real gain is the way it is presented. All the stats can be quickly restricted to date ranges, you can compare two date ranges, most of the details can be combined arbitrarily (just see visitors from Spain using Internet Explorer on Macs for instances) as well as lots of other nifty things. It also has support for e-commerce tracking (including defining custom goals and ROI calculations) as well download and outbound link tracking.

And it’s free.

Well if you have more than 5 million hits a month you need to get a Google AdWords account which (at least when I signed up) needed a $5 deposit. But if you get 5 million hits a month I’d hope you could afford it.

One quick detail I discovered (without really looking for it). I get most of my traffic from search engines, however visitors from links from other sites visit more pages per visit.

I’ll post more as and when I find something particularly interesting to post (for instance I can’t test the date features with just one day of data).

Google Analytics

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

Ooh, I’ve just been sent an invitation for Google Analytics. I can’t really say much about it yet since it takes 24 hours for data to appear.

No Bret Hart at Wrestlemania

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

Somewhat disappointingly, but not exactly surprisingly, Bret Hart was not at Wrestlemania 22. There was some vague announcement by Howard Finkel before the Hall of Fame inductees were present about Bret being uncomfortable with the show.