View Single Post
Posts: 239 | Thanked: 194 times | Joined on Jul 2010 @ Amsterdam
#39
Originally Posted by okoskimi View Post
Nice app, simple but very fit-for-purpose. One suggestion: Currently "synchronize" seems to mean "overwrite local data with data from server" (?). It might be better if it worked so that both server and client keep track of whether the data has been modified since last synchronization, and if only one of them has the modified flag on, then that one overwrites the other (on client only adding/removing items would count as modified, since ticking them as completed is not visible to the server). That way you could add new items also in the client and still synchronize without losing data. If both server and client have modified data, you could just ask the user to decide which one overwrites the other.

Or, for a simpler fix, just call the current functionality something other than "synchronize", e.g. "download".

BR,
--Oskari
Those are very good suggestions and I've been thinking about this feature for a very long time.
There are problems to overcome with the current design. Right now it's compatible with N900 EasyList. That app was designed to only support one list download. It has always been a wish to implement multi list support synchronisation, but due to time constraints (and the many small feature requests and bug reports) I could never allow myself to start working on it.

If I was to implement multi list synchronisation support I had to alter the webservice and the N9(50) EasyList. Currently there is no protocol when retrieving an online list. It just downloads text.
So I need to design an elegant and flexible protocol. I had started on investigation between XML or JSON formats. Both have their (dis)advantages. My personal preference would be JSON, because it has a smaller footprint and my webserver only has so much bandwidth. But I've came across JSON size limit problems with other projects I've done. And to overcome that I had to implement a bit more complex handling of JSON.

The webinterface has to change as well. I would somehow have to allow multiple lists only for those users who are using that version of EasyList which support it. Ofcourse I could let the user decide for themselves.

Other dependencies: EasyNote. There is another project called EasyNote for the N9(50) which uses the exact same webservice as EasyList. The same features could be implemented for EasyNote as well.

The multi-list two-way synchronisation support is a big thing and I can only start it if I believe I have time to finish it.

For now I hope you can still enjoy the already existing features of EasyList. But do know that I want the multiple-list two-way synchronisation as much as you do

P.s.: The checked items can be saved as well. Just put an ! exclamation mark before the item you want to check in the online webinterface and sync that list with your EasyList app and you'll see that the item is checked
P.p.s: https://github.com/peppelorum/ajaxmee for interested QML developers who want to use JSON.
__________________
Please give or donate your 2 cents to help me keep on going.

Last edited by Willem Liu; 2011-12-01 at 10:17.