cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
davidsocha
Community Member

Warn before overwriting page content if that page has been updated since current edit started

Jump to solution

I am a professor who teaches and researches about software engineering.

I often co-teach courses. This leads to problems because Canvas does not warn if multiple people are editing the same content (e.g., the same page) at the same time and overwrite each other's edits.

For instance, consider the following sequence of events:

  1. At 10:00 am Pacific time, person A starts editing page P.
  2. At 10:10 am Pacific time, person B starts editing the same page. P.
  3. At 10:20 am Pacific time, person A saves their changes to P.
  4. At 10:30 am Pacific time, person B saves their changes to P. 

The result is that B's changes will overwrite A's changes without any warning. I cannot speak to how irritated I and my colleagues been when that has happened. It causes confusion, leads to inconsistencies, and loses potentially valuable content. And I have no idea how often this might have happened!

Here's what I'd like to see, informed by the Pages API https://canvas.instructure.com/doc/api/pages.html:

  1. Assume that the Page object for page P has version_id == 7.
  2. At 10:00 am Pacific time, person A starts editing page P with version_id == 7.
  3. At 10:10 am Pacific time, person B starts editing the same page. P with version_id == 7.
  4. At 10:20 am Pacific time, person A tries to save their changes to P. This causes their Canvas session to first check the current version_id of page P in the cloud. It is still 7, so the changes get saved. The version_id of page P in the cloud is now 8.
  5. At 10:30 am Pacific time, person B tries to save their changes to P. This causes their Canvas session to check the current version_id of page P in the cloud. It is now 8, which is different from what it was when B started their editing session. Canvas warns B that person A (available in Page P's object's last_edited_by person value) saved changes at 10:20 am Pacific time (available in Page P's object's updated_at value) that will be overwritten if B saves their changes. Person B may choose to cancel their edits (I'd first copy the changes to file on my computer so I could compare them with the new version), or overwrite A's edits. 

This change would dramatically reduce the likelihood of changes silently being lost.

Based upon my 20+ years in software development, it seems like a fairly low-cost and low-risk change to make.

Labels (1)
0 Kudos
1 Solution

Accepted Solutions
chofer
Community Coach
Community Coach

Hello there, @davidsocha ...

Canvas does not have the ability to have multiple people editing the same page simultaneously.   In searching the Community, I found a posting from 2020 that I had helped respond to that had a similar question: Simultaneous assignment editing - Instructure Community.  The scenario you've posted should probably be submitted here in the Canvas Community as a new Feature Idea.  That way, other Community members can evaluate it and decide if it is also something they would like to see developed by Canvas software engineers.  You'll want to take a look at these documents as you create your Feature Idea:

I know this isn't the answer you might have been looking for, but I hope it's helped in some way to answer your question.  Please let Community members know if you have any other questions about this...thanks!

View solution in original post

4 Replies
chofer
Community Coach
Community Coach

Hello there, @davidsocha ...

Canvas does not have the ability to have multiple people editing the same page simultaneously.   In searching the Community, I found a posting from 2020 that I had helped respond to that had a similar question: Simultaneous assignment editing - Instructure Community.  The scenario you've posted should probably be submitted here in the Canvas Community as a new Feature Idea.  That way, other Community members can evaluate it and decide if it is also something they would like to see developed by Canvas software engineers.  You'll want to take a look at these documents as you create your Feature Idea:

I know this isn't the answer you might have been looking for, but I hope it's helped in some way to answer your question.  Please let Community members know if you have any other questions about this...thanks!

View solution in original post

Hi @cho

Canvas DOES have the ability to have multiple people editing the same page simultaneously. You could even open two browser windows to the same Canvas page and start two editing sessions simultaneously. Some older version control systems would not allow that: it would warn the second person that the item was already being edited, but this has now been largely supplanted by systems that either a) focus on detecting when possible overwriting occurs (which is what I suggested), or b) actively support collaborative editing of the document (which is technically much more complicated to do).

Yes, I had seen that other similar question, which reports a similar problem. I then followed the instructions to post to the Idea Conversations area, but see that instead I posted to the Canvas Question Forum. Thanks for your reply so that I could notice that.

I've now posted my suggestion to as a new Idea Conversation: Warn before overwriting page content.

Cheers

@davidsocha ...

You are absolutely correct that two people could separately edit a given page in a course.  However, as you've rightly pointed out in your original question, those two people cannot see each other's edits "live" or in "real time" to know what the other person may or may not be editing on the page.  I think I assumed that when I said, "Canvas does not have the ability to have multiple people editing the same page simultaneously" ... I was implying that no two people could be editing the same content and expect to see "live" or "real time" edits that the other person was making.  That is where I could have been more clear in my initial reply to you.

Thank you for your submitting the Feature Idea for people to consider.  I hope that you'll get some good feedback on it!

davidsocha
Community Member

Hi @chofer 

Thanks. I hope Canvas will implement the fairly low-cost solution to prevent future aggravation.

Cheers