- tl;dr
- Neglected Tickets start to smell
- Unlearning presumptions: It does not have to be a Jira plugin
tl;dr
Atlassian Jira’s days-in-column-display sucks. People ignore it too easily. With a little browser extension, we make the smell more palpable. Get it through the JIRA Pile of Poo Firefox Add-Ons page. Also check the Jira Pile of Poo Web Extension github Repo for the code.
Neglected Tickets start to smell
A long time ago, in an enterprise far, far away …
… there was a DevOps team. Their process was working well; most of the time. But occasionally an evil ticket snuck its way into their boards. Sometimes it was merely ill-prepared but the team was forced to start working on it. Now. With high business pressure. Sometimes they discovered a hidden trap along the journey and did not dare to proceed.
Whatever the reason, these tickets started to get stuck. Their progress just stalled. Each and every day in the team’s daily standup they were displayed on the board. The longer they stayed, the more they were ignored. No wonder: Jira’s “Days in Column” indicator is not very prominent.
Look at a sample board:
The sample board contains one task “Clean up” that has been stuck for 150 days. It does not look much different from the task “Do something else” that has been blocked for only 20 days.
The dream of extreme feedback
In fact, the situation of long-running tickets being ignored is so common, that some years ago I started dreaming about an Extreme Feedback mechanism for Jira. We can have a traffic signal for Jenkins or even USB rocket launchers for attacking build-breakers. Why not have a more intense feedback mechanism for JIRA tickets?
So I started preaching about the “Pile of Poo Plugin” for Jira. The idea was to pluck a really low-hanging fruit: Just display a little “Pile of Poo” 💩 for every day the ticket is stuck (That is not an image! It is Character U+1F4A9. Thanks Unicode consortium for adopting this important feature!). Naively, I hoped someone from the Jira community will pick up the idea and just implement it. After all, the need is so obvious, isn’t it?
Unlearning presumptions: It does not have to be a Jira plugin
I was wrong.
The need is common. Users loved the idea whenever I promoted it. (Admittedly, some were offended by the choice of words and imagery, too.)
However, I was wrong about the presumption that a Jira plugin is the right way to ship it. In April I started to pick up the topic myself. I learned that the issue will have to be solved by purely Client-side Javascript anyways. At this time, I was still thinking I would have to package and ship this client code as a Jira plugin.
Only last week I had the final revelation and realized how wrong I was. Not only does a Jira plugin make things complex, it also makes such a hack harder to adopt. A Jira plugin requires approval by the central Jira administration, which in some enterprises is a road to bureaucratic perdition.
Move it to the client
Prime time is every morning, when the team looks at the board displayed on the big, wall-mounted screen. The attached PC is under the team’s control. Why not bypass Jira and move the logic to the client?
The result: A simple, portable browser hack
I learned that in 2019 things have gotten a lot easier: The public Web Extensions API allows to develop content scripts that modify applications on the client. They are portable between browsers and consist just of a manifest.json
and the code. Et voilà:
When showing it to the team, the disgust was strong enough to get 70% of the most smelly tickets focussed and resolved right away. Here is a close up of a ticket:
Of course, in some workplaces the illusion of ‘serious work’ is highly valued. Thanks to Unicode, we can satisfy these demands as well through the extension’s configuration page:
Our proposal: Give your board a bit of Atari ST Retro Charme!
Caution: Bombs may be too militaristic for companies with a lot of hyper-correct millenials. Look at the Unicode block “Miscellaneous Symbols and Pictographs” for inspiration.
Post header background image by Pascvii from Pixabay.