In order to better integrate my blog with my website, better manage comment spam, and reduce my dependence on Google, this blog has moved to In order to avoid broken links I won't be deleting content from here, but no new content will be added, so please update your bookmarks and feeds.

Tuesday 18 January 2011

Wild ideas free to a good home

1.You know in sf you get to say "Oh hi computer, calculate this for me / find me information about this thing / make me some hot Earl Grey tea!" and the computer says "Sure thing, my friend!" and does it?

Here's how that could work in the near future:
  • speech recognition - this is fairly well developed already (I've recently started using it myself for navigating and dictating on my home computer) and will continue to improve
  • + a search engine
  • + a whole lot of aps for different functions, with associated metadata which can be matched against what the user's asked for.
The computer, like a librarian, doesn't have to know everything, it just needs to know where to find everything. Ask it a calculating-type question and it gets a Wolfram|Alpha-style widget that can calculate the answer. Ask it an encyclopaedic-type question and it brings you an answer from a Wikipedia-type source. Ask it to convert your word processing document into pdf and it finds the appropriate ap to do that. Tell it you want a pizza, it finds the aps from the local pizza places, asks (or remembers) your price/quality/toppings preferences, and places the order for you. In due course, your doorbell rings.

I wouldn't be surprised if something like this was working within five years. I also wouldn't be overly surprised if it wasn't; while we've got all the pieces, gluing it together mightn't be quite so straightforward as an idealist would think.

2.Dynamic/adaptive website navigation. For sprawling websites: instead of having the traditional static navigation links, have the server generate the links based on the most popular recent destinations for visitors to the same page.

This one's easier to program (I think, if I put the work in, I could come up with a clunky implementation myself) - you just need server-side scripting with access to stats of a) links clicked and b) keywords searched. I'd weight keywords searched a bit higher than links clicked (partly to keep things dynamic but mostly because people will tend to click a link first if it looks even halfway relevant, so just the fact of searching will indicate that the current links are useless).

So when you go to (say) the uni library's homepage at the start of term it'll show links to the catalogue, and tutorials, and computer workrooms. Towards exam time people will start searching for "past exam papers" so that'll soon appear on the homepage, while "tutorials" will drop off, but people will click the "computer workrooms" more so that'll stay on.

There are obvious downsides to this approach. Confusion about links shifting around, for one. Also ideally it should be customisable so postgrads can see a view which isn't overwhelmed by the preferences of undergraduates for most of the year. But. It would be interesting. I'd like to try it sometime (or see someone else try it).