At Rumble we use HipChat daily to keep in touch with each other and we have developed some different ways of using it and some different tools to help us communicate better with HipChat. I figured it would make for an interesting read.
Work Anywhere Policy
The first question to answer is why we need a chat room, they're a bit 90s after all!
We have a work from anywhere policy, this means that Rumblers can live and work wherever we want. This is excellent and enables us to create the best work we can because we are in the exact setting we want to be.
With remote working, communication becomes even more important. When everyone is in the same office it is easy to go over and initiate a conversation. When people are distributed you need some middle ground between a phone call, which seems too distracting and an email, which might not be read for some time. Enter HipChat.
For Clients
We communicate directly with clients on HipChat and we discuss client projects in dedicated rooms.
We have our GitHub repositories set up to send notifications of issue changes and pushes to the relevant HipChat room. This means that everyone involved in the project can see exactly what is being discussed.
For most projects we also set up notifications when deploys have been issued and completed to our hosting platform of choice, Heroku. Again this allows the client and any team members to follow along with any progress made easily and passively.
Any errors that are picked up in systems we are monitoring also get posted to the chat room, this means that there isn't one person in charge of getting those alerts and as a team we can see and act on any errors in a productive way.
We set up our rooms to be private by default and only add in relevant team members which keeps chat focused and also allows for a succinct history that allows new people to the project to catch up quickly.
For the Office
@hubot is the name of our robot, we use him via HipChat to handle various tasks.
- Turning on or off the office music
- Choosing songs to play and their volume
- Prioritising our places for corporate massages
- Finding out who is in the office
Nothing life threatening but being able to type @hubot play Girls Aloud
is way cooler then having to navigate somewhere and play it.
For Us
We have a couple of novel things set up in our HipChat just because we can.
There are some fairly standard things like asking our bot to return an image based on a search term,pug boom a room, or speak something out loud on the office speakers.
There are also some non-standard we have added, just for us;
- We can send P45’s to staff members that say something we don’t agree with (obviously not real ones :-)).
- When the words ‘danger zone’ are mentioned, music stops playing and we get a random danger zone quote from Archer over the airwaves.
We also have several internal rooms, for chatting about things like Music, Bikes, or Gaming.
A Work in Progress
Like any good system it is a continual work in progress. We are constantly discussing and playing with new ideas.
There are other tools we use that might be cool to integrate with HipChat - Trello and Basecamp come to mind.
We also need to find time to install the Hubot Sassy Dancer.
The Technical Details
I don’t want to dive too deep into the technical details, we can save that for another post but if you are interested we use Heroku to host our bot and our scripts are written in CoffeeScript.
Anything we type gets passed to the script running on Heroku, it will parse what we have said to see if it is relevant for it to take action. If it is the script will do what it needs to do and pass back the results.
How do You use HipChat?
Are you doing some novel or useful with HipChat that you think should be adopted by others? Let us know! @rumblelabs