Menu

Syncing / Uploading to an online TMS

2014-02-01
2014-02-11
  • Guido Gallenkamp

    Hi there,

    I am using taskcoach since... ever? And I really love it for beeing simple and straight forard. But when it comes to teamwork, Taskcoach is not the best choice, as every Change must be enteres manually by some with the "mail task file".

    I developed a simple task management system myself sone time ago and always wondered, if I could make it sync with taskcoach. As *.tsk files are all in the shape of xml, is shouldnt be too hard. My approach is: better start with little features then never start.

    Taskcoach is great, and I love to use my *tsk online. To share with friends and coworkers / freelancers. Invite others to help with a project, delegate subtaskt.

    If you are interested in working together on this, please get in touch.

    Cheers from germany,

    Guido

     
    • Jérome Laheurte

      Le 1 févr. 2014 à 18:41, Guido Gallenkamp gallenkamp@users.sf.net a écrit :

      Hi there,

      I am using taskcoach since... ever? And I really love it for beeing simple and straight forard. But when it comes to teamwork, Taskcoach is not the best choice, as every Change must be enteres manually by some with the "mail task file".

      I developed a simple task management system myself sone time ago and always wondered, if I could make it sync with taskcoach. As *.tsk files are all in the shape of xml, is shouldnt be too hard.

      Actually the problem is not « is the file easily readable » but « what do I do if the file is in use »… If another application changes the task file, Task Coach will just overwrite it the next time it saves. There’s a working prototype (in SVN trunk) for this case, but the performance is poor right now. And the other application must be aware of it… Do you have an idea for this ?

      Cheers
      Jérôme

       
  • Guido Gallenkamp

    I think SVN itselt gives the answer. SVN tells you if there is a conflict between two versions of the same file. So you can open the file and look inside both versions, decide what to do with it.

     
    • Jérome Laheurte

      Le 3 févr. 2014 à 10:03, Guido Gallenkamp gallenkamp@users.sf.net a écrit :

      I think SVN itselt gives the answer. SVN tells you if there is a conflict between two versions of the same file. So you can open the file and look inside both versions, decide what to do with it.

      That works well with human-readable files, but resolving conflicts in an XML file, even indented, is at best cumbersome and requires a good understanding of the internals of the program… More, SVN is able to do that because it has a knowledge of what happened on both sides (local/remote). In the current model (which is pretty standard), Task Coach knows what’s in memory and can read what’s on disk, but it can’t deduce what another party has changed since the last time the file was read.

      Actually, the code in trunk does something similar to a VCS; it keeps track of both changes that occurred in memory and on disk. Of course that implies that any program that changes the file is aware of that and maintains itself the « change log » (which is stored in a separate .delta file alongside the main task file). So if I document the change log format, another application could interact with Task Coach (at least the yet unreleased 1.4 version) through the task file. It’s not that simple though :)

      Cheers
      Jérôme

       
  • Guido Gallenkamp

    Hi Jerome,

    if Task Coach would compare elements of the tree instead of the whole file, it should work. A function to display the differences is important, of course.

    When it comes to the pc, I think of an addon that keeps track of a) the local file) and b) the remote xml file. If you save the local file, it updates the remote xml file (in case the remote tree containing the changes didnt change as well).

    I really think that splitting up the *.tsk will do the trick. And it will result in better handling.

    Some kind of unique user id would be handy when it comes to delegation and permission control. That could be handeled by the remote server and ignored by the local Task Coach. In future versions, it might even apply to local *tsk files.

    Cheers
    Guido

     
    • Jérome Laheurte

      Le 9 févr. 2014 à 22:19, Guido Gallenkamp gallenkamp@users.sf.net a écrit :

      Hi Jerome,

      if Task Coach would compare elements of the tree instead of the whole file, it should work.

      I’d like to see how :) Take this basic example: the file contains a « foo » task, due today. Users A and B open it. User A changes the subject to « bar » and saves. User B changes the due date to tomorrow. When B saves, if there is no way for B to tell what has changed in the file since it last read it, the only option is to overwrite A’s changes…

      A function to display the differences is important, of course.

      When it comes to the pc, I think of an addon that keeps track of a) the local file) and b) the remote xml file. If you save the local file, it updates the remote xml file (in case the remote tree containing the changes didnt change as well).

      I really think that splitting up the *.tsk will do the trick. And it will result in better handling.

      Some kind of unique user id would be handy when it comes to delegation and permission control. That could be handeled by the remote server and ignored by the local Task Coach. In future versions, it might even apply to local *tsk files.

      So you’re talking about a client/server architecture ? That would imply big changes…

      Cheers
      Jérôme

       

Log in to post a comment.