Glanceable Time Zones With Keyboard Maestro and Stream Deck

We’ve really embraced working remotely within my Studio71 Technology team, to the point that now I have people that I work with every day across seven time zones. There are challenges and benefits of being a distributed global team, but I wanted to solve a quick challenge today and that is to quickly glance and see who is available right now.

The Problem

I’m aware of the vast amount of options that exist for seeing times across various time zones, from modern desktop widgets to that office wall filled with black and white clocks set to different time zones. I wanted something even more glanceable, that didn’t involve me moving windows on my computer, picking up my phone, asking a voice assistant, or buying six clocks from Amazon.

Something is that always on and never obstructed on my desk is my Stream Deck and recently I’ve added the plugin that displays the time in the text of a button. This has mostly solved my problem in that I have a button for each of the six time zones, but I wanted less text (I don’t need to see the minutes repeated on every button) and I wanted to make them even more glanceable by making the time zones that are within working hours have a different look.

This morning, I removed the the Stream Deck timezone plugin and got to work making my own solution based on the Keyboard Maestro Plugin for Stream Deck. Usually I use the other Keyboard Maestro plugin for Stream Deck, KMLink, as it’s a bit easier to configure, but KMLink can’t update the button text or image, which is essential functionality for this task.

The Solution

I dragged the Keyboard Maestro Plugin to each of my six buttons I have allocated for tracking time zones (I have the big Stream Deck setup for Studio71 so I have plenty of space) and gave each button a custom button ID. (I used the name of the profile with the row and column number, example: default2R6C).

I then setup a Keyboard Maestro plugin that is configured with text with a row for each of my time zones. On each row, there is a label, timezone, and the Stream Deck button ID, separated by commas. The macro then loops though that list, looks up the current time by running the date command , and includes basic logic to switch the background to black or blue and format the date slightly before sending that data to the button. The macro runs at the top of the hour automatically, giving me an hour-by-hour visualization of which team members are generally available and which of them are (or should be) sleeping.

I’m not breaking new ground in the field of Computer Science with this one, but damn if it’s not super helpful and saves me a minute multiple times a day!

If you’re interested, you can download my macro here: Time Zone to Stream Deck

To configure it, you just need to edit those first lines with whatever time zones and buttons you want to use.

Related Posts

A Decade of Clojure at Studio71

  • Mike
  • March 30, 2023

What is Clojure and why did it fit for Studio71? Clojure is a programming language (a dialect of Lisp) that excels at concurrency and data processing. Clojure runs on top of Java so it’s runs in all of the places Java runs and can use all of the Java libraries already out there (hello, Google and AWS libraries!

Read more

The macOS Privacy Settings Deleted My Backups

  • Mike
  • February 13, 2023

The other day I logged in to my NAS to find that all of my backed up media files were gone. No errors, the drives were fine, the directory was there, but the files were gone. Thankfully it wasn’t a freak out moment as I had my originals and my other backups, but it was a mystery.

Read more

Building a Mastodon Client in to my Cyberpunk SSH App

  • Mike
  • February 3, 2023

Let me quickly get you up to speed: I wanted to build a website for my hacker projects, but instead of a website I ended up building an SSH app (because I’m weird). Basically, instead of visiting it in your web browser you have to open your terminal, run an SSH command, and then you use text commands to play with the application, read about my projects, etc.

Read more