← Projects

PetrolBot

LaunchedDeprecated

A configuration-driven AIM chat-bot in Java — behaviour lived in an XML script rather than the binary, on a config library built for the purpose.

javahibernatemysqlxmlchatbotconfiguration

A chat-bot that sat on an AOL Instant Messenger buddy list, built and then supported for a client. Java, with Hibernate over MySQL for persistence.

Instant messaging was the ambient interface of the era. A bot on a buddy list was, in hindsight, a conversational agent — the same shape of problem I work on now in airon and AgentRunner, with almost none of the same tools.

The script is not the program

The design decision worth defending is that the bot's behaviour lived in an XML chat script, not in its code. Changing what it said meant editing a document. Shipping a new personality did not mean shipping a new binary, and it did not require a programmer.

Making that work took enough supporting code that I pulled it out into its own library, EasyConfig, for aliasing and mapping XML-based configuration in Java. Keeping the configuration layer separate rather than tangled up in the bot is the part I would still do the same way.

Deprecated by its platform

AOL Instant Messenger shut down in December 2017. A bot with nowhere to sit is not a bot.