We love coffee here at Web Ascender, and I mean we LOVE IT. We typically consume 3 – 4 pots in a morning, so the path into the break room is well-traveled!
We all take turns making coffee when it runs dry, but for a few weeks straight I just couldn’t get my timing right. I’d always arrive just in time to pour the last cup from the carafe, which meant I had to make the next batch, because:
Of course, I could just go without, but my addiction love of coffee would not allow that. Since I’m a programmer I started thinking of ways to solve this “problem”. We already use Slack for internal team communication, and people were already posting messages in there when they brewed a fresh pot, or when a pot was ready. What if I could automate our manual process?
CoffeeBot
CoffeeBot is a small Python script that runs on a RaspberryPi computer, with the PiCamera module and a USB Button.
CoffeeBot performs the following tasks when you press the button:
- Posts a message in your Slack channel that “coffee is brewing”
- Takes a photo of the bag of coffee you’re brewing and posts it into the Slack channel (so you know what’s being brewed)
- Posts a follow-up message to Slack when your coffee is done brewing!
Here’s an example from our Slack #coffee
channel:
It only took me an evening to code it up, and CoffeeBot has been a fun and useful addition to our office.
Download CoffeeBot.py and enter your Slack API credentials to customize it for your office.
If you’re wondering whether or not you should have a cup of coffee right now, just consult this handy flowchart.