![]() |
Re: Time for an open maemo fork?
Quote:
You could have the contacts in a sqlite database with any structure provided there was an interface that produced a vcard in response to a query. Personally, I'd like to see that interface be groupdav provided it can be made efficient enough. That way we can make synchronisation a simple affair for tasks, contacts, calendar, etc. |
Re: Time for an open maemo fork?
Quote:
At the level we're working at, and with the hardware in these platforms, string parsing is totally trivial and you're better off working on minimizing wake-ups and overall power saving. Quote:
Quote:
Quote:
Quote:
|
Re: Time for an open maemo fork?
Quote:
Quote:
Quote:
Quote:
At what point? bootloader? linux? I always thought the MTD subsystem was extremely flexible, was thinking of learning how to develop a larger flash memory bus for an arm board. Do you know why pure nand costs more than nand+ftl? Quote:
|
Re: Time for an open maemo fork?
Regarding synchronizing contacts, even when both have been edited between synchs, i can't see the algorithm being all that complicated.
Always store both last modified date and last synch date. If the number of each type(and subtype) of field is the same, consider changes to be editing them. If the number is different, look for matches between the two contacts, leave the fields that match alone, the ones that aren't the same on both you treat as being added or removed (for additional advanced functionality, look for similar values between fields of the same type and of similar type (landline, cell and fax numbers, plain, work and home substypes etc) looking for potential changes and optionally ask the user whether they are the same or should be treated as seaparated) In cases where both contacts have been changed between synchs, consider differences to be conflicts and have the user manually solve the conflicts. In case the synch dates (and times) don't match, ask the user what to do (choose on a case by case basis, use the most recent, oldest, from one source instead of other, the biggest one etc, with an additional option to remember this choice (for this session, forever or no, etc) Did i miss anything? |
Re: Time for an open maemo fork?
Having truly open fork, i'd suggest moving to a different hardware. Chinese phones look promising..
|
Re: Time for an open maemo fork?
Quote:
The best automatic syncing mechanisms use a lot of metadata and complicated algorithms to determine what to do when for example a field has changed on two of the directories being synced. You have to accept that a date field is NOT reliable in a PIM application. If you rely on it solely, then you will eventually mess up users data, important data. Last sync date metadata is a bad idea, because the sync protocol becomes a 2 dir sync per design, which also needs to be paired at the very start We know that in the real world, most syncs are 3-5 way, and that many of them will be directories that all already contain data, but have never seen each other before. So, merging needs to be optimised for partial, N-way syncing, and assume directories have been created separately by different people. Each field needs to have at least a unique id and a change counter metadata. The change counter + id is the most reliable source of information for merging, it can be combined with a date metadata, so you can at least guess what to do with very complicated merges. As I said, it's far from easy. And auto-merging that works for most people may still be wrong for a some use cases. What most solutions are missing, is a good way for the sync protocol to interrupt the user and with a proper GUI prompt the user for a merge solution. That's why we often lose so much data when using most of the existing sync protocols. |
Re: Time for an open maemo fork?
I almost forgot, a good PIM editor should always include a facility and UI to merge multiple contacts into one.
Then at least it doesn't become too much of a hassle if you accidentally get duplicates, when merging with a new dir. |
Re: Time for an open maemo fork?
Quote:
Quote:
Quote:
Quote:
Quote:
|
Re: Time for an open maemo fork?
Quote:
Or... came to think of it, isn't your GUI always a child process of main()? Hmm.. I should know this since I wrote the Qt logging libraries for some companies. Quote:
Quote:
Obviously a new memory bus would need a new driver. But to make things simpler, you could just a have a tiny nor directly connected, to store the bootloader, kernel and a simple root. Then when the kernel is up, you use the more complicated bus and filesystem, so you don't need to develop drivers for the bootloader as well. Quote:
So, is performance an issue when you scale ubifs to gigabyte sizes? |
Re: Time for an open maemo fork?
Quote:
Quote:
Quote:
|
| All times are GMT. The time now is 11:58. |
vBulletin® Version 3.8.8