8 ms·
Show HN: Toodles – Project management directly from the TODO's in your code
- tln 8y agoLooks interesting! I'm looking forward to trying it. The annotation syntax looks powerful but do people really edit thier code to adjust priorities and assignees? On a related note, I review `TODO` in PRs and consider whether to allow them in the codebase; and `DEBUG` to indicate code that shouldn't even be checked in. Does anyone else have a codetag for this? DEBUG doesn't seem to be a well-known codetag, and I'd prefer to use something other people use.
- aviaviavi 8y ago> Does anyone else have a codetag for this? DEBUG doesn't seem to be a well-known codetag, and I'd prefer to use something other people use. My team now uses `TODO(#pr)`. The #pr tag meaning it should be taken care of in this pull request, but I don't think that's common. Though maybe if toodles gets some use it will become more common :)
- camtarn 8y agoWe used FIXME to denote temporary changes that shouldn't be checked in, or sections which hadn't been written yet, and had a Git hook which stopped code being committed with that tag. (It also looked for 'console.log' and 'debugger' statements in our JS and blocked those, too.)
- tln 8y agoFIXME is definitely a recognizable codetag, I'm glad to hear other people have found a similar use.
- adrianmsmith 8y agoFWIW I have seen tag NOCOMMIT used to indicate that a commit should be rejected by a pre-commit hook. Useful when you're putting in debug logging statements you want to remove later, or hard-coding your own credentials during development with the intent on making them configurable later, etc.
- tln 8y agoExactly! Thank you
- ckluis 8y agoIt would be handy if github, gitlab, vs baked this kind of solution directly into their tooling to help expose todos in open source software
- aviaviavi 8y agoOh that's a cool idea - Maybe there's an opportunity extend this into a github/gitlab/etc plugin. I'll look into that!
- ckluis 8y agoActually, if you did that you could create your own "open source todos" site that had links to todos in source code for popular projects
- dewey 8y agohttps://gitlab.com/gitlab-org/gitlab-ce/issues/13682#note_111441145 https://gitlab.com/gitlab-org/gitlab-ce/issues/13682#note_11...
- TranceMan 8y agoI remembered this popped up a while ago: https://github.com/naholyr/github-todos https://github.com/naholyr/github-todos Not used it myself
- mmgutz 8y ago[ticgit](https://github.com/schacon/ticgit https://github.com/schacon/ticgit) might be a better kind of solution
- newhouseb 8y agoWe used something like this on the teams I lead at Dropbox to (what I felt) was great effect. We had a script that would regularly run and sync with Phabricator, our bug tracking tool of choice. One thing that we did differently, however, was to "assign" TODOs based on project or team rather than individual people. This way we could triage issues more flexibly to people according to their workloads and also build in more immunity to organizational change (when I was around we still had TODOs for the founders -- ten years in!).
- aviaviavi 8y agoVery cool! Assigning to teams definitely makes sense. I built this to help organization at a 4 person company so hopefully we'll grow enough to one day exercise that strategy :)
- ryandrake 8y ago> One thing that we did differently, however, was to "assign" TODOs based on project or team rather than individual people. If this works for your team, that’s awesome, but beware, I think you’d need a very disciplined team with good communication for this to work. I’ve found on some teams, if a task is not assigned to a single individual, nobody feels “on the hook” to do it. Things assigned to a group can tend to pile up un-looked-at, because everyone thinks someone else will take care of them. You can fix this by having some kind of rotating duty, where people pick up ownership of issues on some schedule but if you’re going that far might as well just assign directly from the start.
- newhouseb 8y agoRight, we would triage these TODOs as part of a larger cadence once every week (or maybe every other?... it was a while ago). If a given TODO was both important and urgent, someone would be specifically assigned to address it.
- tijs 8y ago* differentiate between backlog and ready for development: (bi)weekly triage * bugs first, then code reviews, then features * order features by priority; PM? Triage as well? * work ready for development list top to bottom Looks like the tags and keyvals could cover some of that. Maybe a bit hard to express priority (or change it). Would be neat if changes in the dashboard would update the todos in your code (bit scary though)
- amelius 8y agoOff topic, I'm looking for a solution to embed SVG diagrams directly in my code as comments, with the ability to edit them as in inkscape.
- alanbernstein 8y agoThis sounds ambitious, but I imagine emacs can do it. Is that a feasible approach for you?
- mockingbirdy 8y agoNeat! We use a TODO.md, but this solution can keep track of the exact position. Looks very useful. If there's a way that the developers can run it without installing the Haskell suite (maybe binary releases for Windows, Linux, macOS), we will try it. Does it ignore paths like node_modules/ and others or support command line arguments for that?
- aviaviavi 8y ago> If there's a way that the developers can run it without installing the Haskell suite (maybe binary releases for Windows, Linux, macOS), we will try it. Great, I was waiting for someone to ask for a binary distribution before actually going ahead and setting it up. I'll go ahead and do that then. > Does it ignore paths like node_modules/ and others or support command line arguments for that? Yes, you set a list of regexes per project for toodles to ignore.
- tln 8y agoYes, I'm halfway through installing on my Mac, it'd be much easier to use a docker container or pre-built binary :) I created an issue suggesting a docker container, hope that's not annoying! PS in case it helps others: for macOS10.12 + brew, I had to add: extra-deps: - MissingH-1.4.0.1 to `~/.stack/global-project/stack.yaml`
- aviaviavi 8y agoJust curious, which stack resolver are you using?
- tln 8y agoWhatever `brew install stack` installed... $ stack --version Version 1.7.1 x86_64 ...lots more output, skipped... That's all I know :)
- aviaviavi 8y agoAlso not at all, I think a docker container is a good idea :D I'll probably just upload some binaries to start, but that's a good next step
- TomK32 8y agojust like `rake notes` in my rails apps which also lists FIXME and OPTIMIZE. https://edgeguides.rubyonrails.org/command_line.html#rails-notes https://edgeguides.rubyonrails.org/command_line.html#rails-n...
- pokstad 8y agoVery cool. Go already has the notion of custom notations in comments for handling todos and bugs. I wrote about it here: http://pokstad.com/2018/07/26/gonotes.html http://pokstad.com/2018/07/26/gonotes.html
- pvinis 8y agoThis looks pretty cool, I'll try it. If you use Xcode, this link has a pretty nice script you can add as a Build Phase, and it generates warnings out or TODOs. https://crunchybagel.com/xcode-todo-warnings-swift https://crunchybagel.com/xcode-todo-warnings-swift
- deleted 8y ago[deleted]
- exabrial 8y agoMaven has a similar plugin: https://www.mojohaus.org/taglist-maven-plugin/ https://www.mojohaus.org/taglist-maven-plugin/ Example: https://maven.apache.org/plugins/maven-project-info-reports-plugin/taglist.html https://maven.apache.org/plugins/maven-project-info-reports-...
- rekwah 8y agoIf you happen to use Probot, there's a plugin that supports automatic issue creation. * https://probot.github.io/ https://probot.github.io/ * https://github.com/JasonEtco/todo https://github.com/JasonEtco/todo
- messe 8y agoNeat idea! I might throw something like this together for myself in awk for command line use.
- aviaviavi 8y agoJust an fyi, toodles has a CLI command if you pass the `no_server` flag, might save you some coding.
- vim-guru 8y agoI made the very same thing years ago. I remember ending up removing the web-interface and use the CLI and vim-wrapper instead. I still think the syntax of the comments etc was pretty good http://hkjels.github.io/ntask/ http://hkjels.github.io/ntask/
- faizshah 8y agoThere's a pretty nice implementation of this sort of idea in atom (I only played with it tho): https://imdone.io/ https://imdone.io/
- hkai 8y agoTODO FIXME write an insightful comment here
- LeonB 8y agoThis is great. Aaaaand here’s a Microsoft patent covering it: http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=6,748,582 http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=6,748...
- jeremycw 8y agoSeems like it only covers live updates to tasks during "interactive coding sessions". So I don't think it would apply to offline source processing.
- mgalgs 8y agoWow... Out of curiosity, how did you find this?
- LeonB 8y agoSomeone left it as a comment on my blog 10 years ago when I talk about Todo driven programming. I remembered this happening.