Maptio / maptio

http://www.maptio.com
Other
23 stars 5 forks source link

Real-time multi-user editing and viewing #509

Open tomnixon opened 3 years ago

tomnixon commented 3 years ago

A major enhancement to make Maptio a truly real-time, multi-user app.

Requirements:

  1. Multiple users can edit the map simultaneously with no "mid-air collision" data-over-write issues.
  2. Instead of having to refresh the browser to see changes made by other users, the changes appear in real-time for other users who have the same map open.
  3. Include circles being added, edited and deleted as well as changes to other circle, role and user data.
rodrigopdl commented 2 years ago

Hi @tomnixon, how are you?

Are there plans to work on this soon? Either multi-user editing or some sort of data loss prevention feature.

We've experienced data loss more than a couple of times (even though we remembered we shouldn't edit at the same time 😅 ). If you forget to close your Maptio tab, everything is set up for data loss. We've been trying out different workaraounds, such as multiple maps with the editors name on them, etc, but it's not very practical.

Also, we'd like the rest of the leadership team to be able to create and edit their own initiatives, but it will probably result in further collisions. We want them to be able to add and remove initiatives, enter their descriptions, manage their helpers, etc, without having to send the text to me or let me know about each little change that needs to happen.

I think this could all be thought of as User Experience.

A potential danger here I think is the way this could all affect user perception, or how the user feels about the app. In our case, these things have built a sense of fragility. It's kind of "scary" to edit things not knowing if I'm going to overwrite something else.

BTW...

The app is AWESOME! 👏 It's helping us think and visualize our work in ways we never thought of before. A big thank you to you and your team for working on Maptio!

rgoj commented 2 years ago

Hi @rodrigopdl ! Thank you for your comment, I appreciate a vote for this feature as this is something I'm really looking forward to working on :)

It's very much on our radar, we've been hoping to build it for a while now, but it's a very large piece of work, requiring a lot of changes to the data structures and architecture, so quite far-reaching ones! We have at least been making improvements that will make this work easier. As our roadmap currently stands, it's likely that we will be starting work directly on this soon, at some point this summer hopefully. It's hard to know for sure as we're trying to navigate so many priorities. All the more appreciating your vote and explaining how and why exactly this is important to you. I think we really need to do this as soon as possible!

And also, I need to add - apologies for the inconvenience! If you ever want us to retrieve lost data, let us know and we'll dig it out from the transaction-by-transaction backups.

rodrigopdl commented 2 years ago

Thank you @rgoj for your response!

rgoj commented 2 years ago

Thank you @rgoj for your response!

@rodrigopdl My pleasure, hope we have a more substantial update for this issue soon!

rgoj commented 2 years ago

Hi @rodrigopdl , we've finally got some good news on this topic. Although, sadly, we didn't go for a full implementation of real-time editing yet, we've just shipped (with #759 and #760) "map locking" workarounds that should prevent data loss. They're far from where I want us to end up eventually, but they should prevent editing collisions - every time someone edits a map, we check whether they're editing the latest version, and, if that's not the case, show a warning and prevent the overwrite.

You can try this out by opening a Maptio map in two tabs, making edits in one and then in the other. The app should prevent you from making the edits in the second tab and encourage you to copy your changes and refresh the page. Still somewhat frustrating, I know, but we hope this will be a helpful workaround for now. Do let us know what you think!

rodrigopdl commented 2 years ago

@rgoj That's great to hear! 👏 💪

Thanks for implementing these workarounds. Will let you know if anything comes up when using it!

rgoj commented 2 years ago

Wicked, thanks @rodrigopdl , much appreciated!

rodrigopdl commented 2 years ago

Hi @rgoj!

When inviting an admin user, I noticed that the warning message should probably be removed now that this fix went live.

image
rgoj commented 2 years ago

Thanks @rodrigopdl ! Yes, absolutely, in fact this is something that's been on my list of tasks for today and it just landed: #766 so the warnings should now be gone :) Thanks for spotting and reporting!