DEV Community

Ben Halpern
Ben Halpern Subscriber

Posted on

Open todo list standard?

Ah, the todo list. This seemingly simple app seems impossible to get right.

With that in mind, has there ever been discussion around a todo list standard? Like, everyone manages their own todo list clients, but items can be shared/synced, etc. via a shared standard?

I'm not entering this conversation with a lot of intentionality, but I have been tasked at figuring out, once and for all, how we are going to approach todo lists amongst the DEV team, so I've been thinking about todo lists from many different angles.

Top comments (21)

Collapse
 
rrampage profile image
Raunak Ramakrishnan • Edited

The problem is that different people have wildly different expectations and use-cases from todo lists. For example:

  • Simple list of stuff (like grocery lists)
  • Diary like entry
  • Simple list with due dates
  • List with multiple statuses (not just To Do and Done)
  • Ability to assign priority labels e.g Imp/Urgent/Later
  • Full Project management capabilities
  • Individual vs collaborative lists

And these may just be the tip of the iceberg!

There will also be a lot of debate about usability features e.g notifications, reminders, calendar integration and whether the standard should cover these as well.

I think every developer is destined to write their own To-Do list app :P

Collapse
 
ramblingenzyme profile image
Satvik Sharma

Well, we kinda do have a standard with iCalendar, out of the box it supports events, todos and even journal entries. The issue is that we've all flocked to centralised calendars, such as Google, Outlook or Apple and everyone has decided to implement only what they want, which usually just means events.

en.wikipedia.org/wiki/ICalendar#To...

Collapse
 
bessbd profile image
Bessenyei Balázs Donát

Interesting you mention this.
I'm currently working on a task management system that integrates with git and is yaml based, so that the data can be read and edited with any editor. - github.com/bessbd/git-task
The documentation and functionality is very much in progress, but I should be able to release a first version soon.
The motivation for this was seeing a lot of "TODO" comments in source code and a lot of issues syncing external issue trackers with SCM.

Btw, if someone wants to get involved, please let me know.

Collapse
 
itsarnavb profile image
Arnav Bansal

You're thinking along the lines of Solid.

Apps become views, and you have the option of using any app you want with your data, which is stored on your pod.

The data is represented with common standards, so as to be portable. And the data is linked, so your todolist client could just as easily be written to work with other apps. (And since apps are just views and not data silos, you could fork your todo client, and implement the function you need)

Collapse
 
joshua profile image
Joshua Nelson ✨

This sounds like it's on the right track, but if I understand correctly, we'd still need a standard type of model for the data.

With that RDF example:

T1 is a task
T1 is labelled "Write an article about Solid"
T1 is due October 5rd 2018
T1 is assigned to @itsarnavb
T1 is incomplete

We'd still need to agree on those fields (like, labels, due, assigned, incomplete, etc.) or have some ability to re-interpret existing data.

So it might still be useful to come up with a shared format. Solid would certainly help in terms of making the data portable between these apps, though.

Collapse
 
ben profile image
Ben Halpern

May it be possible to define some primitives which individual clients can build on top of? Basically I expose some read and write info to any shared context, but in my own context, I can have lots of additional features.

Sort of like git and it’s clients/implementations?

Collapse
 
aireq profile image
Eric Anastas

You might want to look at the Task Paper:

google.com/url?sa=t&source=web&rct...

The to do list text file format it uses is open source

support.hogbaysoftware.com/t/what-...

Collapse
 
ben profile image
Ben Halpern

Thanks!

Collapse
 
aireq profile image
Eric Anastas • Edited

Also there's a common convention to adding tasks to markdown that is supported by github. You could extend on this to add other conventions like #hashtags

help.github.com/articles/about-tas...

Also the todo list app I use personally, remember the milk, has this smart add feature where there are text convention for setting the priority or due date of a task.

rememberthemilk.com/help/answer/ba...

So you could come up with some task format like.

- [x] Get toilet paper !1 ^2018-11-18 #groceries

A completed priority one task, due on the 18th, and in the groceries category.

Collapse
 
purplebabar profile image
PurpleBabar

Well it seems like a wonderful idea, if i'm getting this correctly, there would be a standard where you could share basic informations between tools and then every tool would handle the rest like they'd like ? anyway, a standard would definitely benefit everybody :)

Collapse
 
awwsmm profile image
Andrew (he/him)

SimpleNote is a pretty nice list app. There are browser, Android, and iOS versions and it's just a simple text / markdown renderer. Notes have tags and can be shared, but that's it. That's all the functionality it has. Also it's open source.

Collapse
 
sleepyfran profile image
Fran González

I found GitHub’s issue tracker + projects to be the perfect solution. For non-technical things I prefer either a combination of the Notes app and Todo from iOS or Trello to annotate my ideas.

Either way there’s not a perfect solution since everybody just needs different things.

Collapse
 
gayanhewa profile image
Gayan Hewa

In my opinion Org mode seems to have really decent standard in-terms of managing to-do lists and anything for that matter. It doesn't necessarily impose how you can share the lists. But I think some fundamental concepts can be adopted to draft a standard. It's widely adopted by the emacs community. But, I think there is something worth looking at.