Travis Paul

Thoughts no one asked for and more.

Automating Daily Standups

Vintage robot.
Photo by Phillip Glickman on Unsplash

I'm fortunate enough to have an employer that not only allows me to work remotely (since 2017, before it was cool, er, necessary due to a pandemic) but I'm also on a team that posts their daily standups in Slack asynchronously instead of burning time waiting for everyone to join a call and then share individually one-at-time. What a time to be alive!

However, despite being spoiled by such things, I am still guilty of getting distracted and forgetting to post, or returning from the weekend and forgetting exactly what I did on Friday. When such an event occurs, I usually check my Jira activity, which is great at reminding me exactly what I did. It occurred to me this could be useful to automate part of my standup, but I was never really inspired to do so.

One day, a teammate did something no one had dared to do before. They posted what they were listening to:

Slack standup
A trendsetter in action, playing some h00zy.

Naturally, others followed with what they were jamming out to as well. Someone was listening to some Patrick Watson, yours truly was listening to Casiopea and our fourth team member wasn't present and we may never know what he was listening to that day. This was a fun exersize that would eventually be adopted by other employees in other standups. It's the little things in life that are the most enjoyable, little hints of personality are all you get sometimes when working remotely and can help remind you that we're all just monkeys on a space rock.

But that event stuck in the back of my head and later in the day I got to thinking: "I can get my current track from the Last.fm API..." which quickly evolved into: "Heck, I can get what I was working on yesterday from Jira too, and if I get better about keeping tabs on which tasks I intend to work, I can even pull what I'm working on today." By being more organized, I could have more fun. I was sold.

I usually reach for Node.js when pulling data from multiple APIs with the intent to massage it all together for something automated but for whatever reason (probably for the absolute quickest implementation) I checked a few docs and cobbled together a shell script, DuckDuckGo'd for a "cyborg face filter", and my standup bot was born, ready to do its work the next day.

Slack bot posting
Birth of a bot, they grow up so fast.

The morale of this story? I don't have one, but automating things is enjoyable and I'm much more attentive and aware of what I'm working on, despite having a script post it for me. I've made a few additions, such as fancier emojis and pulling data from Github as well. If I can get it to pull my previous day's and upcoming meetings, I think I can call it "done." If you want to be inspired you can check out the script below in all its hacky glory:

standupbot