ALICE, the
mobile computing app server that I've been working on, is
very close to a first beta release. To demonstrate the
speech recognition and speech synth capabilities that it
provides, it'll include an MP3 player module that's fully
voice controlled.
The software is very stable, seems to be lightweight in
terms of overall CPU/memory usage, and much easier to
configure, since all of the modules use a central config
file now. There are a couple of minor, mostly cosmetic
bugs that I'm trying to squash, but good documentation has
been a much greater focus. So far I've got an installation
& 'quick start' guide hammered out, and I'm working on
finishing a document that describes how to accomplish
development tasks like creating new modules, changing the
language model, and using the functions that the LCD
display and speech I/O modules provide.
Good docs are something that a good majority of otherwise
well written free software seems to lack. Documentation is
at least as important as the actual executable, but
constantly gets treated as the sort of bastard cousin of
software engineering tasks. I particularly like Knuth's Literate
Programming approach towards this end, although I think
that adopting a middle-ground is probably a great deal more
practical in most cases, since the philosophy expounded
here is time intensive in the short term.
It's really cool that the app has finally gotten to this
stage:
Me: What is the name of this song?
Computer: This song is Bookends, by Simon and
Garfunkel.
Me: Thanks, Alice.
Computer: You're welcome, Rupert.
--- Rupert
