(Replying to PARENT post)
https://github.com/marketplace/todo is one of them.
(Replying to PARENT post)
Notice also that in TDD refactoring is part of the TDD cycle: write test, write code, refactor. Doing TDD would make you do what is described in the previous paragraph as part of the cycle. So generally one would refactor something multiple times a day.
(Replying to PARENT post)
I wrote a bit about what was going on in my head here, if you're interested: https://isidoro.io/writing/tech-debt-broken-windows/
(Replying to PARENT post)
My goal isn't to require tackling them, merely to make them annoying enough to prioritize. So far it has worked out pretty well - within a day or three of a deadline passing, about half the time the date gets bumped a month and a task is made for the next sprint, a third it's just fixed, and the remainder are no longer relevant so they're just deleted.
(Replying to PARENT post)
But here's the thing. Our team already has a policy for TODOs: either you open a ticket and leave the ticket number in the code, or you do not leave a todo at all.
This way, we're never guessing which ticket belong to which todo, and all of the necessary context (including what spawned the todo, why it may or may not have been a good idea, etc) can be present with the code.
I think in this case, the policy is a better system than just randomly opening tickets. It increases the barrier to entry if you are going to leave a TODO (versus leaving it out or just not being lazy and doing it), and prevents the backlog from needing even more grooming.
(Replying to PARENT post)
Sounds like a fun project.
The complication is that information is now in two places.
So the next step is to use your tracker api to create an issue, and get the url to it. Then replace the comment in the code with the url and make an automated commit/push.
Still all seems very doable and fun.
(Replying to PARENT post)
Though we have several products + subproducts defined in Bugzilla (that's why we can't easily migrate to more modern solutions). Not sure if there is this can be easily mapped automagically.
Also, keeping track if the comment is moved around, especially if slightly altered with the same commit, might be less straight-forward. Also merges might be a pain.
Could also be done for those chancy subtask/checkboxes gitlab and github offer (and which I really miss in bugzilla).
(Replying to PARENT post)
If itβs important enough to write a todo then itβs probably worth doing and prioritising against everything else.
(Replying to PARENT post)
// TODO(b/<bug number>): Fix this up
during code review. Sometimes I'll just put TODO(<username>) if I don't really care about keeping an eye on it.
(Replying to PARENT post)
My guess is, in some less healthy organizations, tech debt comments get cleaned up more frequently than tech debt issues. Issues probably don't get assigned (a practice I have experienced at many companies) but comments are "right there" and can be rolled into other tickets in an attempt to always leave it cleaner than you've found it.