Software Development Gamified

Hi all,

I created this template that you can use as a task tracker. It’s mainly geared at software development, with one huge table of tasks serving as the database

In the data entry view, you can filter by component to focus on one piece of the system at a time. You can use component or component.subcomponent formats, and your tasks will be grouped accordingly. While in data entry, set the Status of a task to be non-blank and it will appear in your Planning view

Planning shows work buckets on a board, just drag tasks between them to assign into a work bucket. A bucket can be a sprint, or whatever interval you use to iterate.

Finally, use the Progress view to gamify your completion while the bucket is active. This is mainly just a Kanban view, with a simple progress chart. A notable feature is the “extra small tasks” view where any task tagged with “xs” will sit outside of the regular estimations process. It shows up in a cards view and the game/goal is to flip these cards green by the end of the bucket.

I’m working alone on my project, but it should be fairly easy to add an Assignee column if you need one.

Any feedback and suggestions are more than welcome! Open the link here


Very inspirational.
Certainly when working in a team such an approach could help to streamline the communication

I noticed:

An easier way of writing might be:

Tasks.Filter(Status.contains([in dev]) And Release.contains([Selected Release])).BulletedList()

thanks for sharing!


Thanks for the feedback Christiaan :slight_smile:

Can I ask with Status and Release, what would be the advantage of using =Value versus .contains([Value])?

Thanks again!

@mattfysh, I think what @Christiaan_Huizer wanted to highlight is not the Contains() vs. = but the filter().filter() you used :blush: .
As, per the documentation, it is not the ideal way (on the long run) to write a Filter() formula :innocent:.

If you look through the page of the documentation about how to to optimize slow formulas, you’ll find this somewhere in there :blush:


Thanks @Pch and @Christiaan_Huizer that’s really great detective work there! I’ve gone ahead and updated the template :slight_smile:

I’ve also added to the instance that I run a new “Pain score” number column… and whenever as task that isn’t completed is causing pain I increase the score (which helps when planning so I can prioritize issues that are causing the most pain). Should I keep adding new features to the template as well?

I’m now wondering how I can find people who’d like to keep working on the template with me, have you seen any similar templates come through recently? Would love to get in touch with the authors if so. Cheers!

thx @Pch for your support. Indeed the double filter was the main issue.

However I consider it as a good practice to use Contains() instead of = Mainly because the Contains logic opens a world of opportunities you do not see easily if you start typing =. For example if you want to have a check on every Monday and Tuesday then you have something like blabla.WeekDay().Contains(2,3) or you want to exclude the weekend, instead of != 7 And !=1 you can write Contains(7,1).Not()

@mattfysh , templates are a kind of living entities, you keep on seeing things that you want to improve and even sometimes you reverse a previous improvement to keep the template tight. My main challenge is to see when to stop adding extra functionalities, to understand when a template is good to go. I liked the color thing in your template and the tiny jobs. The pain score might appeal to some and less to others.

recently @Xyzor_Max shared an interesting template on how to keep track of a project: