I have forked Charbot Green

14 January, 2010

About a year ago Libby Miller wrote Charbot Green, a BBC Radio 4 announcement bot for Twitter. It’s written in JRuby, uses the H2 database and the source code is in SVN here.

A screenshot of CharbotGreen on Twitter

It’s a really great app and I thought I’d have a play, but half-way through the install I realised that setting up an H2 DB server was a step too far, so instead I rewrote it to be a pure Ruby app using the SQLite3 database. Using SQLite3 keeps it a self-contained app in a single directory without the need to run a database server.

You can get the code from GitHub here.

My small changelist looks like this:

I haven’t tested it very hard, just run it up a couple of times, so please do let me know of bugs or feel free to go fork it yourself!

See other posts tagged with bbc general iplayer ruby twitter and other posts made in January 2010.


14 January, 2010 at 06:48

H2 is no different to SQLite. Both are little embedded SQL engines, no server requred. And neither are pure ruby (unless someone has ported SQLite to ruby, which is more likely than I care to admit 🙂

14 January, 2010 at 08:21

I don’t think that’s quite true about H2. I see that it has both a server mode and embedded mode whereas SQLite is embedded only I think.

I’ve never used H2 before and both Libby’s instructions and the H2 installer start it in server mode, so I didn’t even realise it had an embedded mode until your comment 🙂

Obviously the bit about pure ruby is just the fact that there are native ruby bindings for sqlite rather than going via jruby.

25 January, 2010 at 11:20

Hello Phil. Your greasemonkey script “Show link destination on hover” seems not working in Google Reader. Can you fix it? Thanks a lot.

31 January, 2010 at 00:11

Gosh, I’d forgotten I’d even written that (it’s here:

I will have a look at it and update it on if I can find out why it doesn’t work on Google Reader!

31 January, 2010 at 00:18

After a brief look, I suspect the problem is that the Greasemonkey script only runs when the page is first loaded, but of course when you click on feeds an folders in Google Reader it loads new content via javascript, so the greasemonkey rules don’t get applied.

I might be possible to add an event listener to pick this up, but it will probably be some time before I can get around to it I’m afraid.