Re: Tools for Sharing Tasks



2013/4/2 Jasper St. Pierre <jstpierre mecheye net>:
git isn't designed as a sharing protocol. It's a source control tool. People
have tried to take some of the versioning technology behind git and adapt it
to other things (SparkleShare, there are some git-backed issue trackers,
etc.)

As a simple example, what happens when you have a merge conflict? There's a
miscommunication, and one guy sets the task from OPEN to DONE, and another
guy sets it from OPEN to INPROGRESS.

When they try to share tasks, git is going to fail and ask them to edit a
file with:

<<<<<<<<<<<<<<<<
DONE
================
INPROGRESS


unless you're smart about how you present merge conflicts.

This is just an example, and I could come up with a large number of other
reasons why git's power is a deficiency when trying to build a usable simple
sharing system. I don't believe in the technology behind git as a simple way
to share stuff. It's too tied to source code and programmers. I think a
simple pub/sub model, either using XMPP, or an open-source service (Snowy),
or something else, is simpler and the easier way to go.


On Tue, Apr 2, 2013 at 12:25 PM, אנטולי קרסנר <tombackton gmail com> wrote:

Hi,

This is a somewhat technical question, I hope this is the right place
for it.

I'm writing a GTK application which manages tasks and projects. At the
moment it's more or less like GTG (Getting Things Gnome). I want to add
task sharing, and I've been thinking what's the right way to do that.

I checked what other people do. GTG uses the XMPP pubsub extension
(publish & subscribe), which seems to do the job, but it's not exactly
designed for sharing tasks. It does work, but it requires you to setup
the server.

I've been thinking and I found another idea: use a git repository.

This way people can easily watch how projects develop - this way we
easily achieve the publish&subscribe capability - and sharing tasks
between team members is as easy as working with git, which is already
very common. Task sync is simple sync of files in the repo. And it
doesn't require any extra work: starting a new local git repo is
extremely easy by typing "git init", and starting a repo on a server is
done by creating a user on gitorious and creating a repo there.

Some sites don't offer private repos for free, but encryption will be
used anyway to allow maximal privacy anyway, so it shouldn't be a
problem. (GitLab offers 10 private repos for no charge if you really
need 100% privacy)

I'd like to hear more ideas and make a wise decision, which tool is the
best one for task sharing. Git sounds very good to me, but I'm not an
expert (just a software engineering student, actually).


- Anatoly

_______________________________________________
desktop-devel-list mailing list
desktop-devel-list gnome org
https://mail.gnome.org/mailman/listinfo/desktop-devel-list




--
  Jasper

_______________________________________________
desktop-devel-list mailing list
desktop-devel-list gnome org
https://mail.gnome.org/mailman/listinfo/desktop-devel-list

Hi!

Completely agree with Jasper, using git is not a good idea. In fact, a
few years ago I started to work on a GTD application and sharing tasks
with many people and many devices was my main target. I also thought
on using git, but as Jasper has said: "It's too tied to source code
and programmers". Think that in every commit are a manual intervention
from a programmer, which usually needs to resolve conflicts by hand.

In my case, I decided to go with CouchDB because of its replication
features and I made two clients (a PyGtk app and an android one) as
proofs of concept. It worked pretty well and these first proff of
concept was easy to implement, but I stopped the development.
In case it helps, here is the initial code of the pygtk app [1].

Good luck with your app! ;)

My two cents,
Javi

[1]: https://launchpad.net/ezgtd
-- 
Javier Hernández Antúnez
<jhernandez emergya com>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]