Community:SummerOfCode11:Brainstorming: Difference between revisions

Line 103: Line 103:
! Mentor(s)  
! Mentor(s)  
! Comments
! Comments
|-
| Full Offline Support
|The Mozilla Calendar Project supports experimental offline support but only for reading your events while offline. While this is great if you want to look at your calendar while away from the internet, it still hinders productivity. One of the top 5 most wanted bugs in the Calendar product is adding support for also changing events when offline and writing them back to the calendar server when network connectivity returns.
A student fixing this bug will have to develop a performant synchronization mechanism that is capable of applying changes done offline to remote calendars when going back online. This needs to be implemented general enough to work with our existing calendar providers and with extensibility in mind.
There are at least two categories of calendar servers here, those allowing to upload single events (i.e CalDAV) and those requiring to upload the full calendar (i.e webdav/ics). This needs to be kept in mind when going back online, since it may be needed to first download the full calendar before applying the changes.
When calendar items are written back to the server, conflicts might occur. The student is responsible for providing the user with understandable UI to resolve those conflicts. The dialog should be more detailed than the current CalDAV dialog that just allows discarding changes or overwriting the server item. The dialog should provide good balance between making it easy for beginner users to understand and allowing power users to find out details about the conflict.
Technologies the Student should have experience in include database design, (preferably experience with sqlite), advanced javascript, basic understanding of XPCOM and either experience with XUL or HTML. Knowledge of the Mozilla Platform is not a must, but makes it easier to get started with coding.
Note this project can prove to be very ambitious due to the amount of conceptual work and research needed. A small amount of code is already attached to {{bug|380060}}, but it should be evaluated if this solution is the best w.r.t our existing architecture and the performance requirements in a synchronization scenario.
| Philipp
| Philipp Kewisch ([mailto:mozilla@kewis.ch mozilla@kewis.ch], Fallen on [irc://irc.mozilla.org/#calendar moznet / #calendar])
|
|}
|}


251

edits