← Back to team overview

tomdroid-dev team mailing list archive

Re: Call for help

 

On Wed, Mar 24, 2010 at 1:36 PM, Benoit Garret
<benoit.garret_launchpad@xxxxxxxx> wrote:
> Hi everyone,
>
> A few people have expressed a desire to contribute to the web-sync
> part of Tomdroid. I'm currently the only one, as far as I know, who
> did any work on that part.

And many thanks for getting this work off the ground! :-)

> To speed up the whole process, I'm listing the areas that can be
> improved with the hope that someone will be interested and help. I'm
> not saying that I will stop working on this, but it will be far more
> enjoyable and faster with some help.

Great idea, I've tweeted a link to this mail to spread the word a bit.

>  * Background sync: Tomboy recently added the support for this, and
> I'm jealous. Background syncing in itself is not very difficult to
> implement but good integration with the global Android ecosystem
> requires some attention to detail (eg. detecting if the network is up
> or if the user has disabled the data synchronization settings).

Somewhere in the Android Settings UI you can toggle per-provider
background sync preferences.  I hope third-party apps can tie into
this, and also that in Tomdroid's preferences you could toggle
autosync on or off.  My G1 has awful battery life so all of my apps
besides Gmail and Google Calendar are set for manual sync.

>  * The core synchronization code: the work I've done only works in the
> case of a one-way synchronization. Olivier is working on note editing,
> which will break the current synchronization code. I'd rather plan
> this ahead than have to remove the sync feature. The current Tomboy
> code can be used as an example, it shouldn't be difficult to implement
> but some changes to the database schema will be needed.

The overall two-way sync algorithm is in this giant method:

http://git.gnome.org/browse/tomboy/tree/Tomboy/Synchronization/SyncManager.cs#n362

The code that is specific to syncing with the Tomboy Web REST API is
in the WebSyncService add-in, and perhaps the best place to start
looking is here:

http://git.gnome.org/browse/tomboy/tree/Tomboy/Addins/WebSyncService/WebSyncServer.cs

> These descriptions are very rough, I don't expect anyone to know
> exactly what needs to be done and instantly jump in. If any brave soul
> wants to help and stake their claim to fame, they're welcome to reply
> on or off-list where I can explain more precisely what needs to be
> done and give a few pointers to get them started. I can also help with
> the setup of a development environment if you've never done any
> Android development or never used Launchpad and bazaar.

Maybe you should make sure that Launchpad bugs are filed for each of
these issues, to make it easier for others to participate and track
the work.

Sandy



Follow ups

References