4 min read
I've been messing around with a few new projects. Over the past couple months, I've become increasingly fascinated by the state of the art in what one might call "conversational UI". I'm mostly an Android person -- I've been vaguely jealous of Apple's Siri since I first got to play with her on Dan Kogai's iPhone 4S at YAPC::Asia in Tokyo last year.
There are a dozen+ Siri competitors for Android. They have various levels of platform integration, but none of them are Really Excellent. And they're all proprietaryish products put out by companies trying to make a buck. I haven't yet found one of them that's end-user extensible. Not even Google Now. (Google Now is actually excellent, but it's not extensible. I can't make it smarter. Also, it has the personality of a textarea.)
At the same time, many of us have been living with IRC bots of various flavors for well over a decade. Some of our bots are cute little Markov chainers that babble incessantly about whatever they've been fed. Some of them are call-and-response creatures - they have a database of factoids and know only that when you say "What is 42?" they should say "The answer to life, the universe and everything". Other bots let developers write plugins that do a bit of computation or know how to fetch answers by asking a search engine or grabbing the first entry from an RSS feed. Some of our bots can do all of these things. By and large, the bots are actually useful little beasts. And they're ours.
Rei is stll very, very young. I could use lots and lots of help. Right now, the codebase is very, very simplistic. (That means it's a great time to get involved.) Schuyler's been helping get some NLP going, so that Rei can make choices about how to reply to you something a little more advanced than a lookup table of regexes. Yoz got us the beginings of a test suite, so Rei keeps getting smarter and keeps working.
You can find the codebase over at GitHub. You can also find a bit of documentation about the mailing list and where on IRC you can talk to people about Rei (though Rei herself isn't yet ready to make a public appearance on IRC).