Ubuntu UK LoCo CDs

The allocation of CDs for the Ubuntu UK team arrived yesterday, to the excitement of the chickens. They have been using Kubuntu 10.10 for the last six months and are keen to evaluate the features of 11.04 (I prefer GNOME, the chickens prefer KDE).

Bored chicken with last year's distro

They started the upgrade by reading the CD sleeve carefully

Clarabelle reads the fine manual

and then installed the new Kubuntu 11.04 on a piece of string in the run so they can peck at it and check their feathers in the mirror.

Installing Kubuntu 11.04

After the upgrade I took their old Kubuntu 10.10 CD and gave it a bit of a wash, when it stopped smelling too much I put it in my laptop and booted it, there was a bit of a crack on the outside edge and it didn’t fully boot, but it got to the bootloader and did about 15 seconds of productive loading before it failed. Check back in 6 months to find out how the Kubuntu 11.04 CD boots.

So now we need to decide how best to use the remaining 49 Kubuntu CDs, 50 Ubuntu Server CDs and 250 Ubuntu CDs. Preferably in a slightly less frivolous way than entertaining livestock.

Now that shipit has stopped doing individual CD requests we are going to reserve some for people on dialup who want CDs. The procedure for this is as follows.

  • Email me, alanbell at ubuntu.com with a clear subject line saying you would like a CD.
  • I will then respond with my snail mail address.
  • You send me a stamped self addressed envelope big enough to hold a CD.
  • I put CD in envelope and send it back to you.

So this is mildly inconvenient, and costs you more than free, but only about a quid, in postage. If you are on dialup (or an obsessive Ubuntu CD collector) this is still well worth doing, those on broadband have probably already got the .iso and burned it already.

Another batch will go to people distributing recycled PCs pre-installed with Ubuntu like Remploy I want these PCs to go out with an official CD in the pack, and some information about the LoCo team for the end user. Any company or charity involved with recycling PCs for distribution in the UK through the RaceOnline initiative or anything else is welcome to contact me to arrange CDs and help with doing an OEM build image for cloning (so on first boot it asks the user their name). These kind of organisations are not going to engage Canonical services, they just don’t have the margins, working constructively with them is certainly something we can do as a community team.

The rest will go to events and conferences where we have a presence, which means we need to have a presence at some events. I would really like the team to run a few bring-a-box installfests at university computing societies. If you want to help organise one that would be great, I am happy to support it with CDs and help get some people along to help.

If you have further ideas on how to use the CDs then do comment here, on the Ubuntu-UK mailing list or at the next team meeting on IRC.

UK OpenERP Partner Community

Yesterday I had the great pleasure of meeting and chatting with most* of the businesses that are official OpenERP partners here in the UK.

We met at a pub in central London, and talked for around 3hrs. Everyone seemed to get on really well and most of us took the opportunity to share our experiences and promote our individual areas of expertise.

Four of us ended up going for the obligatory curry after the event which was also fun and very enjoyable – especially when the waiter brought me a fresh Naga Chilli to tantalise my taste-buds – hats off to Alan Bell and Chris from Credativ for having a taste of raw Naga. They are definitely NOT for the feint hearted…

The UK partners present at our inaugural meeting yesterday were (in no particular order)

Value Decision
Credativ
Publicus Solutions
Seath Solutions
The Open Learning Centre

A business-minded community of partners represents a much more compelling proposition to our existing and prospective customer-base than do standalone partners.

And here’s a very dodgy picture taken by yours truly:

UK OpenERP Partner Meeting

UK OpenERP Partner Meeting

Speak to me!

Ubuntu comes with a built in speech synthesizer and an application called Orca which acts as a screen reader. Orca “looks” at what is on the page, decides what to say, then passes what it has to say to an intermediate service called speech dispatcher. Speech dispatcher then decides which voice synthesizer to use and gets the text read out. It is designed so that it could use different synthesizers for different languages, or different voices. So the chain is like this:

Application that wants to speak “hello world” -> speech dispatcher -> speech synthesizer -> audio output

By default the speech synthesizer is one called espeak which has a number of synthetic voices (they sound like a robot should sound). You can try this now, go to a terminal window and enter the following:

spd-say "hello world"

If all is working you should hear your computer talking. So this is the default voice that is included on the size restricted Ubuntu CD. Whilst espeak is pretty good and synthetic voices perform well when speeded up (some blind people listen very very fast) there are more realistic voices and more sophisticated speech synthesizers available. The one I think is probably the most promising is called OpenMARY. This has a range of voices available including a number based on the rather good Hidden Markov Model technique. OpenMARY runs as a web server with a REST API, you go to the right URL and you get back a .wav file with the sound you asked for. Feel free to have a play with an OpenMARY server I installed on one of our servers, I have installed a bunch of decent hmm voices, try saying different things with them. So this is all rather fun and you can hear the difference in quality between the rather robotic espeak and the nearly human sounding OpenMARY, the next step is to get it working through speech dispatcher.

To do this I am using the speech dispatcher generic module which is a simple way of getting them to play together. Writing a proper module specific to OpenMary would allow a few more features to be used. To try this out we will be installing just a configuration file on your machine which tells speech dispatcher to pass the text it wants to say out to our OpenMARY server on the internet, you get back a wav file and it plays it. This is just meant for playing about really, don’t rely on our server to be there all the time and this also means that if I felt like it I could look at a log file on the server and see what you are saying (I can’t be bothered, and I don’t care what you say).

  • Check that spd-say “hello world” actually works. If it doesn’t then go fix that first.
  • Download the config file from http://people.ubuntu.com/~alanbell/openmary.conf
    wget http://people.ubuntu.com/~alanbell/openmary.conf
  • Copy the config file to /etc/speech-dispatcher/modules/
    sudo cp openmary.conf /etc/speech-dispatcher/modules/
  • edit the speech dispatcher config to load your new module configuration file
    sudo nano /etc/speech-dispatcher/speechd.conf
  • Find the bit with all the AddModule lines (most are commented out with a #) and add a line containing:
    AddModule "openmary" "sd_generic" "openmary.conf"
  • Save and exit
    Ctrl+x, y
  • stop the speech dispatcher service if it is running
    sudo killall speech-dispatcher
  • Try it out
    spd-say -o openmary "hello world"

If you want to run your own openmary server locally (possibly better performance, works offline, more privacy) then edit the openmary.conf file and change the mumble.libertus.co.uk bits to localhost (or whatever server you want to point it at). To use your new voice in Orca go to the preferences window and select speech dispatcher and openmary as the synthesizer. The generic module only seems to allow you to use the default voice (it doesn’t report the list of voices available back to Orca). A proper module would do that and get other features available for Orca to control. If anyone wants to help with that it would be great.

-Edit-

As Stephane Graber pointed out you may need the sox and curl packages for this to work, I thought they were part of the default install, but maybe not. The bit that makes the magic happen is this line:

"curl "http://mumble.libertus.co.uk:59125/process?INPUT_TEXT=`echo $DATA|sed 's/ /%20/g'`&INPUT_TYPE=TEXT&OUTPUT_TYPE=AUDIO&AUDIO=WAVE_FILE&LOCALE=en_GB&VOICE=$VOICE" > $TMPDIR/openmary.wav && play $TMPDIR/openmary.wav >/dev/null"

which inserts $DATA (The phrase it wants to say) and $VOICE into a URL which returns a wav file, curl retrieves the file and we output it to /tmp/openmary.wav. Then we use the play command to turn the wav file we just downloaded into sound.

Taking Notes at UDS

The Ubuntu Developer Summit is coming up real soon now, starting Monday 9th May. For those not familiar with it this is a week long summit where developers and contributors to the Ubuntu project figure out what they are going to work on over the course of the next 6 month release cycle leading up to the Oneiric Ocelot release in October this year (11.10). I am not going to this UDS, it is over in Budapest and I just haven’t got the time available because we are just too busy doing OpenERP implementations for our customers. I may have a bit of time here and there to join in the live audio sessions and collaborative notetaking and action planning that goes on. Historically this has been done using the collaborative text editor “Gobby” which has been a source of frustration and lost data for several UDS events :(

This year we have a new plan, the Gobby server is still available as a fallback, but we also have an etherpad server which I have been helping to get integrated into the main summit schedule. So the way this works is the summit website is a series of pages like this one: http://summit.ubuntu.com/uds-o/2011-05-09/ which list all the sessions going on. Each one has a little pen and pad icon on it, click that and you get to a page providing all the information about that one session, the time, room etc at the top, and the list of attendees and links to blueprints and wiki pages at the bottom. In the middle is the pad, where you can type stuff. There is no save button, everything is saved all the time.

For example have a look at http://summit.ubuntu.com/uds-o/meeting/community-o-unity-developer-participation/ you can see at the top I have put some hashtags (they will become clickable links when that bit gets turned on) and you can just type freeform text. If you are the first person to open a particular notes page there is a big button to click on to create the pad. We might jiggle the theme about in the next few days to add a panel at the side where you can see the names of the people typing in the pad. This approach means that the schedule itself is the index to the notes pages, the notes just work in a browser, on any platform and through firewalls and proxies with no special configuration. I hope (and I am pretty confident) that this will enhance the work done at UDS by people there in person and following on remotely.