[This email represents also Giovanni and Luca.] Wrapping up this discussion: - we will be happy to receive pull requests for the users<->contests separation; - we won't accept tasks<->contest separation where editing a task in a contest would change a task in another contest; - if you want to go for the compromise (*), I don't see much problems in accepting it. Compromise (*) (idea): - task may be not associated to any contest; - there is an interface in aws to clone tasks; cloned tasks retain a parent - children relationship with the original one; - there is an interface in aws to compare a task with its parent and allow easy synchronization; - if you like, you can also implement an "autosync with all children" for your convenience; - there will be some tool (not sure if complementary or substituting what we have now) for importing single tasks. Let us know when you made a decision, and we'll be happy to help / review code and design. -- Stefano On 14 August 2014 08:04, Stefano Maggiolo <s.maggiolo@xxxxxxxxx> wrote: > On 13 August 2014 22:22, William Di Luigi <williamdiluigi@xxxxxxxxx> > wrote: > >> On Tue, Aug 12, 2014 at 6:21 PM, Stefano Maggiolo <s.maggiolo@xxxxxxxxx> >> wrote: >> >>> No, I'm *not* proposing something like: >>> - creating task A; >>> - cloning A to B; >>> - changing field alpha of B (no change to A.alpha); >>> - changing field beta of A (this change B.beta too); >>> - changing field alpha of A (conflict, decide what to do). >>> >>> I'm proposing something like: >>> - creating task A; >>> - cloning A to B; >>> - changing field alpha of B (no change to A.alpha); >>> - changing field beta of A (no change to B.beta); >>> - changing field alpha of A (no change to B.alpha); >>> - you can see the differences between A and B in a "graphical diff tool" >>> and move field values from A to B and vice versa with one click. >>> >>> This last point is what I think it would be useful for datasets too (it >>> is now difficult to see what are the differences between datasets). >>> >> >> I think this might be OK. Anyway, what do you think about Luca's >> proposal? It seems similar to this. The only difference is that he proposes >> to clone only the dataset when associating a task to a contest (storing >> dataset_id in the TaskContest table). It seems equivalent, but cleaner. It >> would, however, require the task-contest separation. >> > > I don't like it too much, sorry > - you can see that datasets are designed for another reason, because they > provide the ability to change the fields that are not (too?) visible to the > users; maybe now you have the same needs, but in the future might diverge > and we will have problems; > - in particular, there would still be the objection due to the fact that > changing one task in one contest would change another contest (when you > change the statement, for example); > - we will have a single object doing two things. >