About 7 months ago, I stumbled across turntable.fm, a social music website where people can take turns DJing in a round-robin format,
and people can share their music among listeners. After bouncing between several rooms, I had settled into the All Music Mix room, which was being governed by a bot that had been created by user “dj mikeb”. This bot uses an API to collect data on the room and enforce play limits and other rules within the room (which I found to be much of the appeal of the room). As I saw other bots pop up in this and other rooms, I began to look into how to create my own.
I ended up chatting with another user “PodcastMike”, who had created a bot of his own that watched the same room and gathered data, and he pointed me to a GitHub repository (https://github.com/MikeWills/ttModeratorBot) as a place to start off. Well, the only problem I ran into was that this ran on Node.js, which I had never used before. I had heard of it a few times among those I follow on twitter, but I really knew nothing about it.
In addition, I’m almost embarrassed to say, I had never used Git and GitHub to grab a project, let alone fork and update it. However, after some experimentation and trial and error, I was able to get the project onto my computer and found that Node.js was pretty easy to work with (at least when having experience with JavaScript and sample code to work with). While the bot I had downloaded had some of the functionality I wanted, there were a number of changes I wanted to make.
A few days later, Funbot was born (he’s the little redhead in the spotlight). I had tweaked the database setup to allow for remote databases, adjusted the database table structure to capture more of the data I wanted to gather, added the ability to tweed to it’s @TTFunbot, and made some other DJ management changes to fit the room I wanted to run. And rather than keep it to myself, I forked the MikeWills project, which resulted in my own version (https://github.com/GuruGreg/ttModeratorBot), which is also the first GitHub repository to my name.
If you’re interested in checking out Funbot in action, or just spinning some good tunes, you can head on over to Funbot’s Musical Wonderland (I may or may not be there, but Funbot will keep you company).
And stay tuned as well, because I’ve got a lot more planned for the little guy!

