I’ve used countless bug-trackers over the years. Any time I’ve worked as part of a team, I’ve just used whatever the team was using. But for my own projects? Where I’m flying solo? I’ve never found one that suited the way I like to work, so I wrote my own.
And truth be told, I didn’t like that one either, so I did it again.
And then again.
The problem was that I kept trying to do too much, make things too complicated. So it would work for a while, but then I’d take a break and go work on other things for a month or three, but every time I came back, it was always the same: things were too clunky, too confusing, and too hard to bootstrap myself back into. (Things might have been different if I’d been using KOOLAID files, but I hadn’t invent those yet.)
One of the downsides to having so many different projects on the go - many of which are not coding-related at all - is that “taking a break from coding projects” happens quite frequently for me, so I’m constantly experiencing the tools - even the ones I build myself - as a newbie would, having to relearn how they work, how to customize them, how to install them into new projects, etc. And once I realized that, the penny finally dropped - I needed to start building my tools from the perspective of newbies and casual users. After all, I myself am newbie-prime. Repeatedly.
So out of this was born the philosophy that I now call my “3-Easy” philosophy. To be 3-Easy, a tool has to be:
-
easy to install
-
easy to use
-
easy to understand
Since adopting that philosophy, I’ve found that I’m spending a lot less time re-inventing my tools, and a lot more time being productive with them.
Grub was the first of my 3-Easy tools, and with it, I find it so much easier to slip back into a project after a lengthy absence. Even projects that have nothing to do with coding. Not just because of the 3-easiness, but also because grub itself is an important tool in my ADHD arsenal. Because in addition to reminding me what I need to do, it also reminds me why.
Of course, none of that proves that it will work for you, but if I’ve done my work properly, you can at least be confident that it won’t be a struggle to give it a try for yourself and find out.
Constraints
-
works entirely from command line
-
low complexity, ideal for solo devs
-
plain text file storage format
-
easy integration with git and other RCS tools
-
simple, lightweight architecture
-
Python-based for max accessibility
-
single file executable for easy install
For each issue, grub tracks:
If the app ever stops working, the data is still human readable.
I also want to be able to flag certain issues as being “in focus”, meaning that these are the ones I’m most actively concerned about at the moment.
What It’s Not
-
a team tool
-
a testing tool
-
an IDE
-
web based
-
cloud based