Soft copies of templates

Bug #1376073 reported by Nigel Cunningham
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mahara
Triaged
Wishlist
Nigel Cunningham

Bug Description

Feature idea from ePortfolio workshop:

Make templates do soft copies (by default?), saving a link to the original content rather than actually copying it. Updates to the original template could then be automatically reflected in copies. When a user edits their copy, the soft link is broken so that updates to the template don't overwrite the modified content.

Soft copies would also reduce the cost in time and disk usage of creating a copy.

Changed in mahara:
assignee: nobody → Nigel Cunningham (nigelc-g)
importance: Undecided → Wishlist
Revision history for this message
Robert Lyon (robertl-9) wrote :

This sounds a great idea - probably just want it to be restricted to site/institution pages to start with maybe.

It does sound good for the templates that get copied to a new user on on user creation where all the users are created on day 1 but many of them don't actually login until later and so some of the data will be obsolete.

Revision history for this message
Nigel Cunningham (nigelc-g) wrote :

Mmm. With this change, they'll still get any modifications made to the template afterwards.

A further idea, to be put in another wishlist item when I find the time, is to start recording revisions to artefacts. Combining this idea with that would then allow users to see what changes had been made to a template, even after they'd modified their own version.

Revision history for this message
Aaron Wells (u-aaronw) wrote :

It's worth noting that Mahara has a tiny bit of "soft copy" already. Specifically, when a user copies another user's page, if the page contains any file artefacts we don't make a copy of the underlying file on the filesystem; instead we point the new artefact at the same filesystem file. This does NOT come into play when you copy pages via Leap2A though.

I've considered extending this to be the same system used by Mahara & git, where you calculate a unique hash for the file, and then use that hash as its name in the filesystem. Then if someone uploads or copies an identical file, we note that there's already a file with that hash and point the new file artefact at it instead of duplicating it. That would cover Leap2a copying.

Revision history for this message
Aaron Wells (u-aaronw) wrote :

The big difficulty with a "soft link" system is coming up with a sensible interface. So we need to think hard about how we would do this right. What's the use-case for it, to start with?

We don't want to repeat the same problems we had with the Text block in Mahara 1.5 - 1.9. We wound up having to add a lot of confusing controls and links to the Text block to handle all the different permutations of its behavior, and users still got confused when updates to one text box translated into updates to another text box; or when they didn't!

That said, I can perhaps see some use for this specifically in the case of user profile pages, dashboards, and group pages. Currently sysadmins can change the templates for these, which causes changes in *new* users and groups, but there's no way to send out changes to *existing* users and groups.

Revision history for this message
Kristina Hoeppner (kris-hoeppner) wrote :

The soft copy would only be available until the user starts editing the page. Once the first edit has been made, the link is gone automatically.

A typical use case is:

An institution creates a collection of pages (or individual pages) that all new users shall receive when they get an account. Since they are new in setting up templates, they realize that they need to update a link and add some more instructions after having tested the template with 10 students. However, all 1000 students of the institution already have the template in their account. What to do? Ask the students to delete the collection and copy it manually again? Go into the database and remove all pages? It would be much easier if the template pages that the students got copied into their account were automatically updated with the changes made in the template because they haven't actually made changes to these pages anyway. Of course, once they've made changes, i.e. the first 10 students, the pages cannot be updated automatically anymore because Mahara doesn't know what to keep and what to remove. Those students would need to copy the template anew, but since they were the test group anyway, that wouldn't be so hard.

Another use case is:

A teacher creates a template for her students that all students copy into their own portfolio during the first class. However, they do not yet make changes to it but practice on using their portfolio on another page first. At the end of the class, the teacher realizes that there are some spelling mistakes in the template and that some instructions are too difficult for the students. She makes these changes quickly and the changes are updated in the students' portfolios before they start with the task.

So essentially, this system would allow template pages to be updated easily that have already made it into a user's account but need some small tweaking.

Nigel: For the SmartEvidence functionality, we've been discussing creating a category chooser so that we can identify certain pages / collections more easily. Thus, a category could be "Templates". This may not really have any direct impact on this feature though. Just wanted to let you know.

For the category chooser I was thinking that we could identify SmartEvidence pages, Template pages etc. more easily in a user's portfolio or when searching for pages. When a user copies a "Template" page / collection, that category though would be removed I'd think because it's not a template page anymore.

Aaron Wells (u-aaronw)
Changed in mahara:
status: New → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.