Developing Trex – Pulse Energy’s new Hubot

trex hubot
Every month or so at work we run a Big Idea Day where developers can work on fun projects of their choosing. For our last Big Idea Day, I paired up with one of our co-ops and integrated Hubot into our chat room. A lot of the chatter at work happens online in a chat room, it’s handy for keeping noise down in an open work environment and for keeping our remote employees engaged.

Hubot is an open-source chat bot developed by GitHub. It has some productive uses, but it’s mostly used for the inane – like pug bombing, quoting the Ferengi rules of acquisition, and littering the chat room with animated gifs. We named our Hubot Trex and in a few short weeks he’s become a fixture in our development chat room.

There’s lots to like about Hubot. It’s a free, open-source project. When I ran into a bug, it was easy to fix it myself and contribute the patch back to the community. Hubot also supports pluggable scripts. There are hundreds available online to choose from (everything from Breaking Bad quotes to hangman) or you can write your own.

I wrote a plugin to keep track of leaderboards. We play a lot of boardgames at work during lunch (King of Tokyo and Dominion usually) and Trex is now responsible for tracking the winners of every game.

On the productive side, the goal is to use Hubot to centralize some of the operational tasks we do – like deploying new versions of our software, spinning up new machines, and diagnosing problems. If tasks are done via Hubot, there’s a persistent log in the chat room that everyone can read and it’s interleaved with comments from the developers about why things are being done. It’s especially handy for our remote employees.

p.s. Pulse Energy is hiring. If you apply, mention this blog post for bonus points.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s