Two days ago, I discovered my first glaring error in Remember The Milk. Two days ago, my mom signed up for the service. Two days ago, I shared a few lists with her as an experiment. Two days ago, I had to come up with a good hack, and fast.
That hack had to do one thing, and do it well: It had to get the shared lists out of her account. In other words, it had to unshare those lists.
One would think that the ability to stop sharing something is an integral part of the sharing model. If you share something with a person, and then decide you no longer want them to have access to that data, you should be able to lock them out. True? Apparently not, even though Google Calendar and Google Docs (two examples that I use) both provide sharing and both let you remove other users from the sharing list.
Remember The Milk thinks that once you share something, the other person should have access to it for the rest of time, regardless of what in your relationship has changed:
Once you have shared a list with a contact, you cannot ‘unshare’ it.
The reason for this is that your contact may have added or changed some of the tasks, and ‘unsharing’ the list would mean that they would lose the changes they made.
Obviously my relationship with my mother won’t change much, but their decision has serious implications for the business world. And that “reason” for not allowing unsharing is complete crap.
Granted, Remember The Milk is not to be used commercially. For people informally collaborating on a project, though, it’s still an issue. One member may decide to leave, and the group task list would be stuck in their account. What’s more, they retain the power to disrupt the work of the rest of the group, as all people with whom a list is shared are granted the ability to do everything the owner can.
That brings me to another point: Only a list’s owner should be able to delete that list. The problems that arise when a user with whom a list is shared deletes the list have wide implications. For instance, none of the other members of that list can view the tasks any more. What’s worse, though, is that the tasks are transferred to only one Inbox: that of the user who performs the deletion. Everyone else loses access to the tasks unless they are put in another list and reshared (or shared individually).
Granted, these flaws can be used for good, to transfer a list from one account to another (by modifying the unshare hack I’m about to share [and then unshare — kidding!]). However, if list transfer is to be supported, it should be a separate feature, not based on hacks using existing flaws.
I wrote an email to Remember The Milk as well, explaining the problems I see in their sharing model. Here is what I sent to them:
Let me just state that as far as I’m concerned, the sharing feature is broken. Specifically, the fact that tasks and lists cannot be un-shared once contacts have been granted access is absurd. There is no way that everybody will always share something with the right person, or that the other people will be part of the project associate with that list forever.
Say a pair of people who have started a small company together decide to bring in a third person temporarily. They share with that person a list of tasks related to the business. Then the third person quits their job and moves on. That third person should no longer have access to the business’s task list. While it could be said that it is up to the user to make sure they avoid situations like this, the real world is never perfect.
Where possible, software should smooth over the experience of using the service, and this includes un-sharing. For now, my mother will have three useless lists in her task screen that were meant to be published, not shared. I have tried deleting contacts on both ends, only succeeding in making the RTM interface say the lists are not shared even though they appear in her view. Deleting the list and then restoring it also failed.
For what it’s worth, my RTM username is voyagerfan5761 and my mother’s is <scrubbed>. If there’s a way you guys can clear the sharing status between the two accounts, that would be wonderful! Implementing un-sharing would also be absolutely priceless (and might earn you guys another Pro subscriber, wink wink 😀 ).
Anyway, I’m done with my rant. Please keep me apprised of the status of this ticket.
Note that the letter was written before I figured out that the word ‘unshare’ was supposed to remain unhyphenated. Oh well. I’ll remain true to the quote rather than edit myself.
Anyway, I did manage to hack together a workaround to unshare a list in RTM. Here are the steps:
1. Clear your Inbox list by moving everything to a temporary new list to make room for Step 2
2. Take the shared list you want to unshare and delete it in the Settings
3. Create a new list with the same name
4. Go to the Inbox and move all incomplete and complete tasks to the new identically-named list
5. Delete the temporary list created to hold any Inbox tasks (which moves them back to the Inbox list)
6. With that, you should have your list intact, and with you as its only user again
The contacts with whom the list was shared will have to delete it from their accounts themselves, unless they have not yet accepted the list. (I consider it another flaw, BTW, that deleted lists are merely emptied for users with whom they are shared, rather than being removed completely.)
Do not — repeat: do not — delete contacts in an effort to unshare something. That will only make matters worse, as RTM will continue sharing but not display the fact (shared items will display as unshared even though the other users(s) still ha(s|ve) access). However, even if you have, this hack will still work. I know because deleting contacts was the first thing I tried.
So anyway, this is a pretty complete write-up of all the things I found wrong with RTM‘s sharing model. I just hope someone (Emily and/or Omar, preferably) takes notice of this post…