Google Tasks: How to share task lists with other users
Run your own Google Tasks sync service with this little script. Invite your collaborators and turn any task list into a shared list anyone can edit.
You can memorise them. You can write them down in a notebook. You can even write them down on Post-it notes and stick them right to your forehead. Yet when it comes to digital solutions to managing your to-do lists, I find most of them to be lacking in some way or another.
I like Google Tasks because it has just the right amount of features. It is easy to use, well integrated into other Google products and available on all platforms. Best of all, it lets you display and edit tasks without ever having to leave the home screen of your Android or iOS device.
There is only one crucial feature missing: the ability to share lists and collaborate on Google Tasks.
I wanted to change that, so I wrote a little script. Set up as a cron job by each participating user, it regularly checks the user’s task lists for a predefined list. It pulls in any changes from that list and pushes them out to the other users. The result is a single, unified list any user can edit.
View on GitHub
The way this script is designed means that I can’t offer it as a hosted service like I did with my previous Google Drive web apps. Instead, each group of users who wants to work on a shared task list needs to create a new Google Apps Script project by copying and pasting the code. Each user of that group then needs to authorise the script and add a time-driven trigger.
A step-by-step installation guide can be found in the repository. If those steps sound too technical to you, maybe this is not the right solution for you. Have a look at the alternatives discussed below or ask me any question in the comments.
In any truly collaborative environment, users should be able to not just make contributions of their own but also to edit and to delete other users’ contributions. The same is true here. As long as everybody is aware of what they are doing, that shouldn’t be a problem. However, there is a scenario where data can be overwritten without anybody noticing.
Let’s say Tuca and Bertie both edit the same task, roughly at the same time. First Tuca changes the title into an important phone number she needs to write down quickly, then Bertie fixes a typo in the original task. At this point, neither of them has received the other’s changes. Once the script has done its rounds, Tuca’s important phone number is erased by Bertie’s less important edit. The most recent version always wins. We can assume that the data wouldn’t have been lost if Bertie had seen Tuca’s changes first.
Luckily, there’s an easy solution. If you want your collaborators to at least see your content before they make up their mind on whether or not to delete it, always put it in a new task. Not an existing one. That’s it.
One more thing: while the due date of a task is synchronised, the time of day is not. For some inexplicable reason, Google doesn’t expose this information through the API. The same goes for repeating tasks—only the initial due date is shown. These limitations only affect the users receiving a copy of the task. The person who created the task will see the full details they entered, as long as nobody else edits the task.
I would like to mention some no-code alternatives which could be relevant to you if your use case is slighty different from mine.
- TasksBoard: Created by independent developers, TasksBoard is a fullscreen web app that builds on and extends Google Tasks. It lets you share lists with other TasksBoard users, but the free version doesn’t provide background synchronisation. This means tasks created in any of the official Google Tasks clients won’t be synchronised unless TasksBoard is up and running. Even then, it will take a full hour. I haven’t tried TasksBoard Premium and its realtime synchronisation. Plans start at $3.30 per month.
- Google Chat: There’s a section called Spaces which lets you create tasks and share them with all of its members. A task can be assigned to a specific person (and only one person, sadly). It will then show up in that person’s default Google Tasks list, named My List.
- Other to-do list apps: If there is one category of apps there’s no shortage of, it must be productivity apps. I suspect that every developer’s or product designer’s excuse not to do their actual job is that they lack the right tools, hence the need to create new ones. Yes, I’m probably guilty of that penomenon myself. Have a look around, maybe you will find an interesting open source solution or something developed by an independent company. Maybe we don’t always need to choose the same big names in tech.